@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.css v8.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;box-sizing:content-box;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:1rem}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}body{margin:0;padding:0;background:#fefefe;font-family:droid-sans,Helvetica,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5;color:#202529;-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{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;border-radius:0}.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{padding:0;-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:" ";-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.row:after{clear:both}.row.collapse>.column,.row.collapse>.columns{padding-right:0;padding-left:0}.row .row{margin-right:-.625rem;margin-left:-.625rem}@media print,screen and (min-width:40em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}@media print,screen and (min-width:64em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}@media screen and (min-width:75em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}.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:.625rem;padding-left:.625rem}.row.gutter-medium>.column,.row.gutter-medium>.columns{padding-right:.9375rem;padding-left:.9375rem}.column,.columns{width:100%;float:left;padding-right:.625rem;padding-left:.625rem}@media print,screen and (min-width:40em){.column,.columns{padding-right:.9375rem;padding-left:.9375rem}}.column,.column:last-child:not(:first-child),.columns,.columns:last-child:not(:first-child){float:left;clear:none}.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-2{width:16.66667%}.small-push-2{position:relative;left:16.66667%}.small-pull-2{position:relative;left:-16.66667%}.small-3{width:25%}.small-push-3{position:relative;left:25%}.small-pull-3{position:relative;left:-25%}.small-4{width:33.33333%}.small-push-4{position:relative;left:33.33333%}.small-pull-4{position:relative;left:-33.33333%}.small-5{width:41.66667%}.small-push-5{position:relative;left:41.66667%}.small-pull-5{position:relative;left:-41.66667%}.small-6{width:50%}.small-push-6{position:relative;left:50%}.small-pull-6{position:relative;left:-50%}.small-7{width:58.33333%}.small-push-7{position:relative;left:58.33333%}.small-pull-7{position:relative;left:-58.33333%}.small-8{width:66.66667%}.small-push-8{position:relative;left:66.66667%}.small-pull-8{position:relative;left:-66.66667%}.small-9{width:75%}.small-push-9{position:relative;left:75%}.small-pull-9{position:relative;left:-75%}.small-10{width:83.33333%}.small-push-10{position:relative;left:83.33333%}.small-pull-10{position:relative;left:-83.33333%}.small-11{width:91.66667%}.small-push-11{position:relative;left:91.66667%}.small-pull-11{position:relative;left:-91.66667%}.small-12{width:100%}.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:.625rem;padding-left:.625rem}.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;margin-right:0;margin-left:0}.small-pull-0,.small-pull-0:last-child:not(:first-child),.small-push-0,.small-push-0:last-child:not(:first-child),.small-uncentered,.small-uncentered:last-child:not(:first-child){float:left;clear:none}.small-pull-0:last-child:not(:first-child),.small-push-0:last-child:not(:first-child),.small-uncentered:last-child:not(:first-child){float:right}@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:.9375rem;padding-left:.9375rem}.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;margin-right:0;margin-left:0}.medium-pull-0,.medium-pull-0:last-child:not(:first-child),.medium-push-0,.medium-push-0:last-child:not(:first-child),.medium-uncentered,.medium-uncentered:last-child:not(:first-child){float:left;clear:none}.medium-pull-0:last-child:not(:first-child),.medium-push-0:last-child:not(:first-child),.medium-uncentered:last-child:not(:first-child){float:right}}@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:.9375rem;padding-left:.9375rem}.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;margin-right:0;margin-left:0}.large-pull-0,.large-pull-0:last-child:not(:first-child),.large-push-0,.large-push-0:last-child:not(:first-child),.large-uncentered,.large-uncentered:last-child:not(:first-child){float:left;clear:none}.large-pull-0:last-child:not(:first-child),.large-push-0:last-child:not(:first-child),.large-uncentered:last-child:not(:first-child){float:right}}@media screen and (min-width:75em){.xlarge-1{width:8.33333%}.xlarge-push-1{position:relative;left:8.33333%}.xlarge-pull-1{position:relative;left:-8.33333%}.xlarge-offset-0{margin-left:0}.xlarge-2{width:16.66667%}.xlarge-push-2{position:relative;left:16.66667%}.xlarge-pull-2{position:relative;left:-16.66667%}.xlarge-offset-1{margin-left:8.33333%}.xlarge-3{width:25%}.xlarge-push-3{position:relative;left:25%}.xlarge-pull-3{position:relative;left:-25%}.xlarge-offset-2{margin-left:16.66667%}.xlarge-4{width:33.33333%}.xlarge-push-4{position:relative;left:33.33333%}.xlarge-pull-4{position:relative;left:-33.33333%}.xlarge-offset-3{margin-left:25%}.xlarge-5{width:41.66667%}.xlarge-push-5{position:relative;left:41.66667%}.xlarge-pull-5{position:relative;left:-41.66667%}.xlarge-offset-4{margin-left:33.33333%}.xlarge-6{width:50%}.xlarge-push-6{position:relative;left:50%}.xlarge-pull-6{position:relative;left:-50%}.xlarge-offset-5{margin-left:41.66667%}.xlarge-7{width:58.33333%}.xlarge-push-7{position:relative;left:58.33333%}.xlarge-pull-7{position:relative;left:-58.33333%}.xlarge-offset-6{margin-left:50%}.xlarge-8{width:66.66667%}.xlarge-push-8{position:relative;left:66.66667%}.xlarge-pull-8{position:relative;left:-66.66667%}.xlarge-offset-7{margin-left:58.33333%}.xlarge-9{width:75%}.xlarge-push-9{position:relative;left:75%}.xlarge-pull-9{position:relative;left:-75%}.xlarge-offset-8{margin-left:66.66667%}.xlarge-10{width:83.33333%}.xlarge-push-10{position:relative;left:83.33333%}.xlarge-pull-10{position:relative;left:-83.33333%}.xlarge-offset-9{margin-left:75%}.xlarge-11{width:91.66667%}.xlarge-push-11{position:relative;left:91.66667%}.xlarge-pull-11{position:relative;left:-91.66667%}.xlarge-offset-10{margin-left:83.33333%}.xlarge-12{width:100%}.xlarge-offset-11{margin-left:91.66667%}.xlarge-up-1>.column,.xlarge-up-1>.columns{float:left;width:100%}.xlarge-up-1>.column:nth-of-type(1n),.xlarge-up-1>.columns:nth-of-type(1n){clear:none}.xlarge-up-1>.column:nth-of-type(1n+1),.xlarge-up-1>.columns:nth-of-type(1n+1){clear:both}.xlarge-up-1>.column:last-child,.xlarge-up-1>.columns:last-child{float:left}.xlarge-up-2>.column,.xlarge-up-2>.columns{float:left;width:50%}.xlarge-up-2>.column:nth-of-type(1n),.xlarge-up-2>.columns:nth-of-type(1n){clear:none}.xlarge-up-2>.column:nth-of-type(odd),.xlarge-up-2>.columns:nth-of-type(odd){clear:both}.xlarge-up-2>.column:last-child,.xlarge-up-2>.columns:last-child{float:left}.xlarge-up-3>.column,.xlarge-up-3>.columns{float:left;width:33.33333%}.xlarge-up-3>.column:nth-of-type(1n),.xlarge-up-3>.columns:nth-of-type(1n){clear:none}.xlarge-up-3>.column:nth-of-type(3n+1),.xlarge-up-3>.columns:nth-of-type(3n+1){clear:both}.xlarge-up-3>.column:last-child,.xlarge-up-3>.columns:last-child{float:left}.xlarge-up-4>.column,.xlarge-up-4>.columns{float:left;width:25%}.xlarge-up-4>.column:nth-of-type(1n),.xlarge-up-4>.columns:nth-of-type(1n){clear:none}.xlarge-up-4>.column:nth-of-type(4n+1),.xlarge-up-4>.columns:nth-of-type(4n+1){clear:both}.xlarge-up-4>.column:last-child,.xlarge-up-4>.columns:last-child{float:left}.xlarge-up-5>.column,.xlarge-up-5>.columns{float:left;width:20%}.xlarge-up-5>.column:nth-of-type(1n),.xlarge-up-5>.columns:nth-of-type(1n){clear:none}.xlarge-up-5>.column:nth-of-type(5n+1),.xlarge-up-5>.columns:nth-of-type(5n+1){clear:both}.xlarge-up-5>.column:last-child,.xlarge-up-5>.columns:last-child{float:left}.xlarge-up-6>.column,.xlarge-up-6>.columns{float:left;width:16.66667%}.xlarge-up-6>.column:nth-of-type(1n),.xlarge-up-6>.columns:nth-of-type(1n){clear:none}.xlarge-up-6>.column:nth-of-type(6n+1),.xlarge-up-6>.columns:nth-of-type(6n+1){clear:both}.xlarge-up-6>.column:last-child,.xlarge-up-6>.columns:last-child{float:left}.xlarge-up-7>.column,.xlarge-up-7>.columns{float:left;width:14.28571%}.xlarge-up-7>.column:nth-of-type(1n),.xlarge-up-7>.columns:nth-of-type(1n){clear:none}.xlarge-up-7>.column:nth-of-type(7n+1),.xlarge-up-7>.columns:nth-of-type(7n+1){clear:both}.xlarge-up-7>.column:last-child,.xlarge-up-7>.columns:last-child{float:left}.xlarge-up-8>.column,.xlarge-up-8>.columns{float:left;width:12.5%}.xlarge-up-8>.column:nth-of-type(1n),.xlarge-up-8>.columns:nth-of-type(1n){clear:none}.xlarge-up-8>.column:nth-of-type(8n+1),.xlarge-up-8>.columns:nth-of-type(8n+1){clear:both}.xlarge-up-8>.column:last-child,.xlarge-up-8>.columns:last-child{float:left}.xlarge-collapse>.column,.xlarge-collapse>.columns{padding-right:0;padding-left:0}.expanded.row .xlarge-collapse.row,.xlarge-collapse .row{margin-right:0;margin-left:0}.xlarge-uncollapse>.column,.xlarge-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}.xlarge-centered{margin-right:auto;margin-left:auto}.xlarge-centered,.xlarge-centered:last-child:not(:first-child){float:none;clear:both}.xlarge-pull-0,.xlarge-push-0,.xlarge-uncentered{position:static;margin-right:0;margin-left:0}.xlarge-pull-0,.xlarge-pull-0:last-child:not(:first-child),.xlarge-push-0,.xlarge-push-0:last-child:not(:first-child),.xlarge-uncentered,.xlarge-uncentered:last-child:not(:first-child){float:left;clear:none}.xlarge-pull-0:last-child:not(:first-child),.xlarge-push-0:last-child:not(:first-child),.xlarge-uncentered:last-child:not(:first-child){float:right}}.column-block{margin-bottom:1.25rem}.column-block>:last-child{margin-bottom:0}@media print,screen and (min-width:40em){.column-block{margin-bottom:1.875rem}.column-block>:last-child{margin-bottom:0}}.grid-container{padding-right:.625rem;padding-left:.625rem;max-width:75rem;margin-left:auto;margin-right:auto}@media print,screen and (min-width:40em){.grid-container{padding-right:.9375rem;padding-left:.9375rem}}.grid-container.fluid{padding-right:.625rem;padding-left:.625rem;max-width:100%;margin-left:auto;margin-right:auto}@media print,screen and (min-width:40em){.grid-container.fluid{padding-right:.9375rem;padding-left:.9375rem}}.grid-container.full{padding-right:0;padding-left:0;max-width:100%;margin-left:auto;margin-right:auto}.grid-x{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.cell{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;min-height:0;min-width:0;width:100%}.cell.auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.cell.shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.auto,.grid-x>.shrink{width:auto}.grid-x>.small-1,.grid-x>.small-2,.grid-x>.small-3,.grid-x>.small-4,.grid-x>.small-5,.grid-x>.small-6,.grid-x>.small-7,.grid-x>.small-8,.grid-x>.small-9,.grid-x>.small-10,.grid-x>.small-11,.grid-x>.small-12,.grid-x>.small-full,.grid-x>.small-shrink{-ms-flex-preferred-size:auto;flex-basis:auto}@media print,screen and (min-width:40em){.grid-x>.medium-1,.grid-x>.medium-2,.grid-x>.medium-3,.grid-x>.medium-4,.grid-x>.medium-5,.grid-x>.medium-6,.grid-x>.medium-7,.grid-x>.medium-8,.grid-x>.medium-9,.grid-x>.medium-10,.grid-x>.medium-11,.grid-x>.medium-12,.grid-x>.medium-full,.grid-x>.medium-shrink{-ms-flex-preferred-size:auto;flex-basis:auto}}@media print,screen and (min-width:64em){.grid-x>.large-1,.grid-x>.large-2,.grid-x>.large-3,.grid-x>.large-4,.grid-x>.large-5,.grid-x>.large-6,.grid-x>.large-7,.grid-x>.large-8,.grid-x>.large-9,.grid-x>.large-10,.grid-x>.large-11,.grid-x>.large-12,.grid-x>.large-full,.grid-x>.large-shrink{-ms-flex-preferred-size:auto;flex-basis:auto}}@media screen and (min-width:75em){.grid-x>.xlarge-1,.grid-x>.xlarge-2,.grid-x>.xlarge-3,.grid-x>.xlarge-4,.grid-x>.xlarge-5,.grid-x>.xlarge-6,.grid-x>.xlarge-7,.grid-x>.xlarge-8,.grid-x>.xlarge-9,.grid-x>.xlarge-10,.grid-x>.xlarge-11,.grid-x>.xlarge-12,.grid-x>.xlarge-full,.grid-x>.xlarge-shrink{-ms-flex-preferred-size:auto;flex-basis:auto}}.grid-x>.small-1,.grid-x>.small-2,.grid-x>.small-3,.grid-x>.small-4,.grid-x>.small-5,.grid-x>.small-6,.grid-x>.small-7,.grid-x>.small-8,.grid-x>.small-9,.grid-x>.small-10,.grid-x>.small-11,.grid-x>.small-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.small-1{width:8.33333%}.grid-x>.small-2{width:16.66667%}.grid-x>.small-3{width:25%}.grid-x>.small-4{width:33.33333%}.grid-x>.small-5{width:41.66667%}.grid-x>.small-6{width:50%}.grid-x>.small-7{width:58.33333%}.grid-x>.small-8{width:66.66667%}.grid-x>.small-9{width:75%}.grid-x>.small-10{width:83.33333%}.grid-x>.small-11{width:91.66667%}.grid-x>.small-12{width:100%}@media print,screen and (min-width:40em){.grid-x>.medium-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.medium-1,.grid-x>.medium-2,.grid-x>.medium-3,.grid-x>.medium-4,.grid-x>.medium-5,.grid-x>.medium-6,.grid-x>.medium-7,.grid-x>.medium-8,.grid-x>.medium-9,.grid-x>.medium-10,.grid-x>.medium-11,.grid-x>.medium-12,.grid-x>.medium-shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.medium-shrink{width:auto}.grid-x>.medium-1{width:8.33333%}.grid-x>.medium-2{width:16.66667%}.grid-x>.medium-3{width:25%}.grid-x>.medium-4{width:33.33333%}.grid-x>.medium-5{width:41.66667%}.grid-x>.medium-6{width:50%}.grid-x>.medium-7{width:58.33333%}.grid-x>.medium-8{width:66.66667%}.grid-x>.medium-9{width:75%}.grid-x>.medium-10{width:83.33333%}.grid-x>.medium-11{width:91.66667%}.grid-x>.medium-12{width:100%}}@media print,screen and (min-width:64em){.grid-x>.large-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.large-1,.grid-x>.large-2,.grid-x>.large-3,.grid-x>.large-4,.grid-x>.large-5,.grid-x>.large-6,.grid-x>.large-7,.grid-x>.large-8,.grid-x>.large-9,.grid-x>.large-10,.grid-x>.large-11,.grid-x>.large-12,.grid-x>.large-shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.large-shrink{width:auto}.grid-x>.large-1{width:8.33333%}.grid-x>.large-2{width:16.66667%}.grid-x>.large-3{width:25%}.grid-x>.large-4{width:33.33333%}.grid-x>.large-5{width:41.66667%}.grid-x>.large-6{width:50%}.grid-x>.large-7{width:58.33333%}.grid-x>.large-8{width:66.66667%}.grid-x>.large-9{width:75%}.grid-x>.large-10{width:83.33333%}.grid-x>.large-11{width:91.66667%}.grid-x>.large-12{width:100%}}@media screen and (min-width:75em){.grid-x>.xlarge-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.xlarge-1,.grid-x>.xlarge-2,.grid-x>.xlarge-3,.grid-x>.xlarge-4,.grid-x>.xlarge-5,.grid-x>.xlarge-6,.grid-x>.xlarge-7,.grid-x>.xlarge-8,.grid-x>.xlarge-9,.grid-x>.xlarge-10,.grid-x>.xlarge-11,.grid-x>.xlarge-12,.grid-x>.xlarge-shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.xlarge-shrink{width:auto}.grid-x>.xlarge-1{width:8.33333%}.grid-x>.xlarge-2{width:16.66667%}.grid-x>.xlarge-3{width:25%}.grid-x>.xlarge-4{width:33.33333%}.grid-x>.xlarge-5{width:41.66667%}.grid-x>.xlarge-6{width:50%}.grid-x>.xlarge-7{width:58.33333%}.grid-x>.xlarge-8{width:66.66667%}.grid-x>.xlarge-9{width:75%}.grid-x>.xlarge-10{width:83.33333%}.grid-x>.xlarge-11{width:91.66667%}.grid-x>.xlarge-12{width:100%}}.grid-margin-x:not(.grid-x)>.cell{width:auto}.grid-margin-y:not(.grid-y)>.cell{height:auto}.grid-margin-x{margin-left:-.625rem;margin-right:-.625rem}@media print,screen and (min-width:40em){.grid-margin-x{margin-left:-.9375rem;margin-right:-.9375rem}}.grid-margin-x>.cell{width:calc(100% - 1.25rem);margin-left:.625rem;margin-right:.625rem}@media print,screen and (min-width:40em){.grid-margin-x>.cell{width:calc(100% - 1.875rem);margin-left:.9375rem;margin-right:.9375rem}}.grid-margin-x>.auto,.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.33333% - 1.25rem)}.grid-margin-x>.small-2{width:calc(16.66667% - 1.25rem)}.grid-margin-x>.small-3{width:calc(25% - 1.25rem)}.grid-margin-x>.small-4{width:calc(33.33333% - 1.25rem)}.grid-margin-x>.small-5{width:calc(41.66667% - 1.25rem)}.grid-margin-x>.small-6{width:calc(50% - 1.25rem)}.grid-margin-x>.small-7{width:calc(58.33333% - 1.25rem)}.grid-margin-x>.small-8{width:calc(66.66667% - 1.25rem)}.grid-margin-x>.small-9{width:calc(75% - 1.25rem)}.grid-margin-x>.small-10{width:calc(83.33333% - 1.25rem)}.grid-margin-x>.small-11{width:calc(91.66667% - 1.25rem)}.grid-margin-x>.small-12{width:calc(100% - 1.25rem)}@media print,screen and (min-width:40em){.grid-margin-x>.auto,.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.33333% - 1.875rem)}.grid-margin-x>.small-2{width:calc(16.66667% - 1.875rem)}.grid-margin-x>.small-3{width:calc(25% - 1.875rem)}.grid-margin-x>.small-4{width:calc(33.33333% - 1.875rem)}.grid-margin-x>.small-5{width:calc(41.66667% - 1.875rem)}.grid-margin-x>.small-6{width:calc(50% - 1.875rem)}.grid-margin-x>.small-7{width:calc(58.33333% - 1.875rem)}.grid-margin-x>.small-8{width:calc(66.66667% - 1.875rem)}.grid-margin-x>.small-9{width:calc(75% - 1.875rem)}.grid-margin-x>.small-10{width:calc(83.33333% - 1.875rem)}.grid-margin-x>.small-11{width:calc(91.66667% - 1.875rem)}.grid-margin-x>.small-12{width:calc(100% - 1.875rem)}.grid-margin-x>.medium-auto,.grid-margin-x>.medium-shrink{width:auto}.grid-margin-x>.medium-1{width:calc(8.33333% - 1.875rem)}.grid-margin-x>.medium-2{width:calc(16.66667% - 1.875rem)}.grid-margin-x>.medium-3{width:calc(25% - 1.875rem)}.grid-margin-x>.medium-4{width:calc(33.33333% - 1.875rem)}.grid-margin-x>.medium-5{width:calc(41.66667% - 1.875rem)}.grid-margin-x>.medium-6{width:calc(50% - 1.875rem)}.grid-margin-x>.medium-7{width:calc(58.33333% - 1.875rem)}.grid-margin-x>.medium-8{width:calc(66.66667% - 1.875rem)}.grid-margin-x>.medium-9{width:calc(75% - 1.875rem)}.grid-margin-x>.medium-10{width:calc(83.33333% - 1.875rem)}.grid-margin-x>.medium-11{width:calc(91.66667% - 1.875rem)}.grid-margin-x>.medium-12{width:calc(100% - 1.875rem)}}@media print,screen and (min-width:64em){.grid-margin-x>.large-auto,.grid-margin-x>.large-shrink{width:auto}.grid-margin-x>.large-1{width:calc(8.33333% - 1.875rem)}.grid-margin-x>.large-2{width:calc(16.66667% - 1.875rem)}.grid-margin-x>.large-3{width:calc(25% - 1.875rem)}.grid-margin-x>.large-4{width:calc(33.33333% - 1.875rem)}.grid-margin-x>.large-5{width:calc(41.66667% - 1.875rem)}.grid-margin-x>.large-6{width:calc(50% - 1.875rem)}.grid-margin-x>.large-7{width:calc(58.33333% - 1.875rem)}.grid-margin-x>.large-8{width:calc(66.66667% - 1.875rem)}.grid-margin-x>.large-9{width:calc(75% - 1.875rem)}.grid-margin-x>.large-10{width:calc(83.33333% - 1.875rem)}.grid-margin-x>.large-11{width:calc(91.66667% - 1.875rem)}.grid-margin-x>.large-12{width:calc(100% - 1.875rem)}}@media screen and (min-width:75em){.grid-margin-x>.xlarge-auto,.grid-margin-x>.xlarge-shrink{width:auto}.grid-margin-x>.xlarge-1{width:calc(8.33333% - 1.875rem)}.grid-margin-x>.xlarge-2{width:calc(16.66667% - 1.875rem)}.grid-margin-x>.xlarge-3{width:calc(25% - 1.875rem)}.grid-margin-x>.xlarge-4{width:calc(33.33333% - 1.875rem)}.grid-margin-x>.xlarge-5{width:calc(41.66667% - 1.875rem)}.grid-margin-x>.xlarge-6{width:calc(50% - 1.875rem)}.grid-margin-x>.xlarge-7{width:calc(58.33333% - 1.875rem)}.grid-margin-x>.xlarge-8{width:calc(66.66667% - 1.875rem)}.grid-margin-x>.xlarge-9{width:calc(75% - 1.875rem)}.grid-margin-x>.xlarge-10{width:calc(83.33333% - 1.875rem)}.grid-margin-x>.xlarge-11{width:calc(91.66667% - 1.875rem)}.grid-margin-x>.xlarge-12{width:calc(100% - 1.875rem)}}.grid-padding-x .grid-padding-x{margin-right:-.625rem;margin-left:-.625rem}@media print,screen and (min-width:40em){.grid-padding-x .grid-padding-x{margin-right:-.9375rem;margin-left:-.9375rem}}.grid-container:not(.full)>.grid-padding-x{margin-right:-.625rem;margin-left:-.625rem}@media print,screen and (min-width:40em){.grid-container:not(.full)>.grid-padding-x{margin-right:-.9375rem;margin-left:-.9375rem}}.grid-padding-x>.cell{padding-right:.625rem;padding-left:.625rem}@media print,screen and (min-width:40em){.grid-padding-x>.cell{padding-right:.9375rem;padding-left:.9375rem}}.small-up-1>.cell{width:100%}.small-up-2>.cell{width:50%}.small-up-3>.cell{width:33.33333%}.small-up-4>.cell{width:25%}.small-up-5>.cell{width:20%}.small-up-6>.cell{width:16.66667%}.small-up-7>.cell{width:14.28571%}.small-up-8>.cell{width:12.5%}@media print,screen and (min-width:40em){.medium-up-1>.cell{width:100%}.medium-up-2>.cell{width:50%}.medium-up-3>.cell{width:33.33333%}.medium-up-4>.cell{width:25%}.medium-up-5>.cell{width:20%}.medium-up-6>.cell{width:16.66667%}.medium-up-7>.cell{width:14.28571%}.medium-up-8>.cell{width:12.5%}}@media print,screen and (min-width:64em){.large-up-1>.cell{width:100%}.large-up-2>.cell{width:50%}.large-up-3>.cell{width:33.33333%}.large-up-4>.cell{width:25%}.large-up-5>.cell{width:20%}.large-up-6>.cell{width:16.66667%}.large-up-7>.cell{width:14.28571%}.large-up-8>.cell{width:12.5%}}@media screen and (min-width:75em){.xlarge-up-1>.cell{width:100%}.xlarge-up-2>.cell{width:50%}.xlarge-up-3>.cell{width:33.33333%}.xlarge-up-4>.cell{width:25%}.xlarge-up-5>.cell{width:20%}.xlarge-up-6>.cell{width:16.66667%}.xlarge-up-7>.cell{width:14.28571%}.xlarge-up-8>.cell{width:12.5%}}.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.25rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.25rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.33333% - 1.25rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.25rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.25rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.66667% - 1.25rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.28571% - 1.25rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.25rem)}@media print,screen and (min-width:40em){.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.875rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.875rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.33333% - 1.875rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.875rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.875rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.66667% - 1.875rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.28571% - 1.875rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.875rem)}.grid-margin-x.medium-up-1>.cell{width:calc(100% - 1.875rem)}.grid-margin-x.medium-up-2>.cell{width:calc(50% - 1.875rem)}.grid-margin-x.medium-up-3>.cell{width:calc(33.33333% - 1.875rem)}.grid-margin-x.medium-up-4>.cell{width:calc(25% - 1.875rem)}.grid-margin-x.medium-up-5>.cell{width:calc(20% - 1.875rem)}.grid-margin-x.medium-up-6>.cell{width:calc(16.66667% - 1.875rem)}.grid-margin-x.medium-up-7>.cell{width:calc(14.28571% - 1.875rem)}.grid-margin-x.medium-up-8>.cell{width:calc(12.5% - 1.875rem)}}@media print,screen and (min-width:64em){.grid-margin-x.large-up-1>.cell{width:calc(100% - 1.875rem)}.grid-margin-x.large-up-2>.cell{width:calc(50% - 1.875rem)}.grid-margin-x.large-up-3>.cell{width:calc(33.33333% - 1.875rem)}.grid-margin-x.large-up-4>.cell{width:calc(25% - 1.875rem)}.grid-margin-x.large-up-5>.cell{width:calc(20% - 1.875rem)}.grid-margin-x.large-up-6>.cell{width:calc(16.66667% - 1.875rem)}.grid-margin-x.large-up-7>.cell{width:calc(14.28571% - 1.875rem)}.grid-margin-x.large-up-8>.cell{width:calc(12.5% - 1.875rem)}}@media screen and (min-width:75em){.grid-margin-x.xlarge-up-1>.cell{width:calc(100% - 1.875rem)}.grid-margin-x.xlarge-up-2>.cell{width:calc(50% - 1.875rem)}.grid-margin-x.xlarge-up-3>.cell{width:calc(33.33333% - 1.875rem)}.grid-margin-x.xlarge-up-4>.cell{width:calc(25% - 1.875rem)}.grid-margin-x.xlarge-up-5>.cell{width:calc(20% - 1.875rem)}.grid-margin-x.xlarge-up-6>.cell{width:calc(16.66667% - 1.875rem)}.grid-margin-x.xlarge-up-7>.cell{width:calc(14.28571% - 1.875rem)}.grid-margin-x.xlarge-up-8>.cell{width:calc(12.5% - 1.875rem)}}.small-margin-collapse,.small-margin-collapse>.cell{margin-right:0;margin-left:0}.small-margin-collapse>.small-1{width:8.33333%}.small-margin-collapse>.small-2{width:16.66667%}.small-margin-collapse>.small-3{width:25%}.small-margin-collapse>.small-4{width:33.33333%}.small-margin-collapse>.small-5{width:41.66667%}.small-margin-collapse>.small-6{width:50%}.small-margin-collapse>.small-7{width:58.33333%}.small-margin-collapse>.small-8{width:66.66667%}.small-margin-collapse>.small-9{width:75%}.small-margin-collapse>.small-10{width:83.33333%}.small-margin-collapse>.small-11{width:91.66667%}.small-margin-collapse>.small-12{width:100%}@media print,screen and (min-width:40em){.small-margin-collapse>.medium-1{width:8.33333%}.small-margin-collapse>.medium-2{width:16.66667%}.small-margin-collapse>.medium-3{width:25%}.small-margin-collapse>.medium-4{width:33.33333%}.small-margin-collapse>.medium-5{width:41.66667%}.small-margin-collapse>.medium-6{width:50%}.small-margin-collapse>.medium-7{width:58.33333%}.small-margin-collapse>.medium-8{width:66.66667%}.small-margin-collapse>.medium-9{width:75%}.small-margin-collapse>.medium-10{width:83.33333%}.small-margin-collapse>.medium-11{width:91.66667%}.small-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width:64em){.small-margin-collapse>.large-1{width:8.33333%}.small-margin-collapse>.large-2{width:16.66667%}.small-margin-collapse>.large-3{width:25%}.small-margin-collapse>.large-4{width:33.33333%}.small-margin-collapse>.large-5{width:41.66667%}.small-margin-collapse>.large-6{width:50%}.small-margin-collapse>.large-7{width:58.33333%}.small-margin-collapse>.large-8{width:66.66667%}.small-margin-collapse>.large-9{width:75%}.small-margin-collapse>.large-10{width:83.33333%}.small-margin-collapse>.large-11{width:91.66667%}.small-margin-collapse>.large-12{width:100%}}@media screen and (min-width:75em){.small-margin-collapse>.xlarge-1{width:8.33333%}.small-margin-collapse>.xlarge-2{width:16.66667%}.small-margin-collapse>.xlarge-3{width:25%}.small-margin-collapse>.xlarge-4{width:33.33333%}.small-margin-collapse>.xlarge-5{width:41.66667%}.small-margin-collapse>.xlarge-6{width:50%}.small-margin-collapse>.xlarge-7{width:58.33333%}.small-margin-collapse>.xlarge-8{width:66.66667%}.small-margin-collapse>.xlarge-9{width:75%}.small-margin-collapse>.xlarge-10{width:83.33333%}.small-margin-collapse>.xlarge-11{width:91.66667%}.small-margin-collapse>.xlarge-12{width:100%}}.small-padding-collapse{margin-right:0;margin-left:0}.small-padding-collapse>.cell{padding-right:0;padding-left:0}@media print,screen and (min-width:40em){.medium-margin-collapse,.medium-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print,screen and (min-width:40em){.medium-margin-collapse>.small-1{width:8.33333%}.medium-margin-collapse>.small-2{width:16.66667%}.medium-margin-collapse>.small-3{width:25%}.medium-margin-collapse>.small-4{width:33.33333%}.medium-margin-collapse>.small-5{width:41.66667%}.medium-margin-collapse>.small-6{width:50%}.medium-margin-collapse>.small-7{width:58.33333%}.medium-margin-collapse>.small-8{width:66.66667%}.medium-margin-collapse>.small-9{width:75%}.medium-margin-collapse>.small-10{width:83.33333%}.medium-margin-collapse>.small-11{width:91.66667%}.medium-margin-collapse>.small-12{width:100%}}@media print,screen and (min-width:40em){.medium-margin-collapse>.medium-1{width:8.33333%}.medium-margin-collapse>.medium-2{width:16.66667%}.medium-margin-collapse>.medium-3{width:25%}.medium-margin-collapse>.medium-4{width:33.33333%}.medium-margin-collapse>.medium-5{width:41.66667%}.medium-margin-collapse>.medium-6{width:50%}.medium-margin-collapse>.medium-7{width:58.33333%}.medium-margin-collapse>.medium-8{width:66.66667%}.medium-margin-collapse>.medium-9{width:75%}.medium-margin-collapse>.medium-10{width:83.33333%}.medium-margin-collapse>.medium-11{width:91.66667%}.medium-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width:64em){.medium-margin-collapse>.large-1{width:8.33333%}.medium-margin-collapse>.large-2{width:16.66667%}.medium-margin-collapse>.large-3{width:25%}.medium-margin-collapse>.large-4{width:33.33333%}.medium-margin-collapse>.large-5{width:41.66667%}.medium-margin-collapse>.large-6{width:50%}.medium-margin-collapse>.large-7{width:58.33333%}.medium-margin-collapse>.large-8{width:66.66667%}.medium-margin-collapse>.large-9{width:75%}.medium-margin-collapse>.large-10{width:83.33333%}.medium-margin-collapse>.large-11{width:91.66667%}.medium-margin-collapse>.large-12{width:100%}}@media screen and (min-width:75em){.medium-margin-collapse>.xlarge-1{width:8.33333%}.medium-margin-collapse>.xlarge-2{width:16.66667%}.medium-margin-collapse>.xlarge-3{width:25%}.medium-margin-collapse>.xlarge-4{width:33.33333%}.medium-margin-collapse>.xlarge-5{width:41.66667%}.medium-margin-collapse>.xlarge-6{width:50%}.medium-margin-collapse>.xlarge-7{width:58.33333%}.medium-margin-collapse>.xlarge-8{width:66.66667%}.medium-margin-collapse>.xlarge-9{width:75%}.medium-margin-collapse>.xlarge-10{width:83.33333%}.medium-margin-collapse>.xlarge-11{width:91.66667%}.medium-margin-collapse>.xlarge-12{width:100%}}@media print,screen and (min-width:40em){.medium-padding-collapse{margin-right:0;margin-left:0}.medium-padding-collapse>.cell{padding-right:0;padding-left:0}}@media print,screen and (min-width:64em){.large-margin-collapse,.large-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print,screen and (min-width:64em){.large-margin-collapse>.small-1{width:8.33333%}.large-margin-collapse>.small-2{width:16.66667%}.large-margin-collapse>.small-3{width:25%}.large-margin-collapse>.small-4{width:33.33333%}.large-margin-collapse>.small-5{width:41.66667%}.large-margin-collapse>.small-6{width:50%}.large-margin-collapse>.small-7{width:58.33333%}.large-margin-collapse>.small-8{width:66.66667%}.large-margin-collapse>.small-9{width:75%}.large-margin-collapse>.small-10{width:83.33333%}.large-margin-collapse>.small-11{width:91.66667%}.large-margin-collapse>.small-12{width:100%}}@media print,screen and (min-width:64em){.large-margin-collapse>.medium-1{width:8.33333%}.large-margin-collapse>.medium-2{width:16.66667%}.large-margin-collapse>.medium-3{width:25%}.large-margin-collapse>.medium-4{width:33.33333%}.large-margin-collapse>.medium-5{width:41.66667%}.large-margin-collapse>.medium-6{width:50%}.large-margin-collapse>.medium-7{width:58.33333%}.large-margin-collapse>.medium-8{width:66.66667%}.large-margin-collapse>.medium-9{width:75%}.large-margin-collapse>.medium-10{width:83.33333%}.large-margin-collapse>.medium-11{width:91.66667%}.large-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width:64em){.large-margin-collapse>.large-1{width:8.33333%}.large-margin-collapse>.large-2{width:16.66667%}.large-margin-collapse>.large-3{width:25%}.large-margin-collapse>.large-4{width:33.33333%}.large-margin-collapse>.large-5{width:41.66667%}.large-margin-collapse>.large-6{width:50%}.large-margin-collapse>.large-7{width:58.33333%}.large-margin-collapse>.large-8{width:66.66667%}.large-margin-collapse>.large-9{width:75%}.large-margin-collapse>.large-10{width:83.33333%}.large-margin-collapse>.large-11{width:91.66667%}.large-margin-collapse>.large-12{width:100%}}@media screen and (min-width:75em){.large-margin-collapse>.xlarge-1{width:8.33333%}.large-margin-collapse>.xlarge-2{width:16.66667%}.large-margin-collapse>.xlarge-3{width:25%}.large-margin-collapse>.xlarge-4{width:33.33333%}.large-margin-collapse>.xlarge-5{width:41.66667%}.large-margin-collapse>.xlarge-6{width:50%}.large-margin-collapse>.xlarge-7{width:58.33333%}.large-margin-collapse>.xlarge-8{width:66.66667%}.large-margin-collapse>.xlarge-9{width:75%}.large-margin-collapse>.xlarge-10{width:83.33333%}.large-margin-collapse>.xlarge-11{width:91.66667%}.large-margin-collapse>.xlarge-12{width:100%}}@media print,screen and (min-width:64em){.large-padding-collapse{margin-right:0;margin-left:0}.large-padding-collapse>.cell{padding-right:0;padding-left:0}}@media screen and (min-width:75em){.xlarge-margin-collapse,.xlarge-margin-collapse>.cell{margin-right:0;margin-left:0}}@media screen and (min-width:75em){.xlarge-margin-collapse>.small-1{width:8.33333%}.xlarge-margin-collapse>.small-2{width:16.66667%}.xlarge-margin-collapse>.small-3{width:25%}.xlarge-margin-collapse>.small-4{width:33.33333%}.xlarge-margin-collapse>.small-5{width:41.66667%}.xlarge-margin-collapse>.small-6{width:50%}.xlarge-margin-collapse>.small-7{width:58.33333%}.xlarge-margin-collapse>.small-8{width:66.66667%}.xlarge-margin-collapse>.small-9{width:75%}.xlarge-margin-collapse>.small-10{width:83.33333%}.xlarge-margin-collapse>.small-11{width:91.66667%}.xlarge-margin-collapse>.small-12{width:100%}}@media screen and (min-width:75em){.xlarge-margin-collapse>.medium-1{width:8.33333%}.xlarge-margin-collapse>.medium-2{width:16.66667%}.xlarge-margin-collapse>.medium-3{width:25%}.xlarge-margin-collapse>.medium-4{width:33.33333%}.xlarge-margin-collapse>.medium-5{width:41.66667%}.xlarge-margin-collapse>.medium-6{width:50%}.xlarge-margin-collapse>.medium-7{width:58.33333%}.xlarge-margin-collapse>.medium-8{width:66.66667%}.xlarge-margin-collapse>.medium-9{width:75%}.xlarge-margin-collapse>.medium-10{width:83.33333%}.xlarge-margin-collapse>.medium-11{width:91.66667%}.xlarge-margin-collapse>.medium-12{width:100%}}@media screen and (min-width:75em){.xlarge-margin-collapse>.large-1{width:8.33333%}.xlarge-margin-collapse>.large-2{width:16.66667%}.xlarge-margin-collapse>.large-3{width:25%}.xlarge-margin-collapse>.large-4{width:33.33333%}.xlarge-margin-collapse>.large-5{width:41.66667%}.xlarge-margin-collapse>.large-6{width:50%}.xlarge-margin-collapse>.large-7{width:58.33333%}.xlarge-margin-collapse>.large-8{width:66.66667%}.xlarge-margin-collapse>.large-9{width:75%}.xlarge-margin-collapse>.large-10{width:83.33333%}.xlarge-margin-collapse>.large-11{width:91.66667%}.xlarge-margin-collapse>.large-12{width:100%}}@media screen and (min-width:75em){.xlarge-margin-collapse>.xlarge-1{width:8.33333%}.xlarge-margin-collapse>.xlarge-2{width:16.66667%}.xlarge-margin-collapse>.xlarge-3{width:25%}.xlarge-margin-collapse>.xlarge-4{width:33.33333%}.xlarge-margin-collapse>.xlarge-5{width:41.66667%}.xlarge-margin-collapse>.xlarge-6{width:50%}.xlarge-margin-collapse>.xlarge-7{width:58.33333%}.xlarge-margin-collapse>.xlarge-8{width:66.66667%}.xlarge-margin-collapse>.xlarge-9{width:75%}.xlarge-margin-collapse>.xlarge-10{width:83.33333%}.xlarge-margin-collapse>.xlarge-11{width:91.66667%}.xlarge-margin-collapse>.xlarge-12{width:100%}}@media screen and (min-width:75em){.xlarge-padding-collapse{margin-right:0;margin-left:0}.xlarge-padding-collapse>.cell{padding-right:0;padding-left:0}}.small-offset-0{margin-left:0}.grid-margin-x>.small-offset-0{margin-left:calc(0% + .625rem)}.small-offset-1{margin-left:8.33333%}.grid-margin-x>.small-offset-1{margin-left:calc(8.33333% + .625rem)}.small-offset-2{margin-left:16.66667%}.grid-margin-x>.small-offset-2{margin-left:calc(16.66667% + .625rem)}.small-offset-3{margin-left:25%}.grid-margin-x>.small-offset-3{margin-left:calc(25% + .625rem)}.small-offset-4{margin-left:33.33333%}.grid-margin-x>.small-offset-4{margin-left:calc(33.33333% + .625rem)}.small-offset-5{margin-left:41.66667%}.grid-margin-x>.small-offset-5{margin-left:calc(41.66667% + .625rem)}.small-offset-6{margin-left:50%}.grid-margin-x>.small-offset-6{margin-left:calc(50% + .625rem)}.small-offset-7{margin-left:58.33333%}.grid-margin-x>.small-offset-7{margin-left:calc(58.33333% + .625rem)}.small-offset-8{margin-left:66.66667%}.grid-margin-x>.small-offset-8{margin-left:calc(66.66667% + .625rem)}.small-offset-9{margin-left:75%}.grid-margin-x>.small-offset-9{margin-left:calc(75% + .625rem)}.small-offset-10{margin-left:83.33333%}.grid-margin-x>.small-offset-10{margin-left:calc(83.33333% + .625rem)}.small-offset-11{margin-left:91.66667%}.grid-margin-x>.small-offset-11{margin-left:calc(91.66667% + .625rem)}@media print,screen and (min-width:40em){.medium-offset-0{margin-left:0}.grid-margin-x>.medium-offset-0{margin-left:calc(0% + .9375rem)}.medium-offset-1{margin-left:8.33333%}.grid-margin-x>.medium-offset-1{margin-left:calc(8.33333% + .9375rem)}.medium-offset-2{margin-left:16.66667%}.grid-margin-x>.medium-offset-2{margin-left:calc(16.66667% + .9375rem)}.medium-offset-3{margin-left:25%}.grid-margin-x>.medium-offset-3{margin-left:calc(25% + .9375rem)}.medium-offset-4{margin-left:33.33333%}.grid-margin-x>.medium-offset-4{margin-left:calc(33.33333% + .9375rem)}.medium-offset-5{margin-left:41.66667%}.grid-margin-x>.medium-offset-5{margin-left:calc(41.66667% + .9375rem)}.medium-offset-6{margin-left:50%}.grid-margin-x>.medium-offset-6{margin-left:calc(50% + .9375rem)}.medium-offset-7{margin-left:58.33333%}.grid-margin-x>.medium-offset-7{margin-left:calc(58.33333% + .9375rem)}.medium-offset-8{margin-left:66.66667%}.grid-margin-x>.medium-offset-8{margin-left:calc(66.66667% + .9375rem)}.medium-offset-9{margin-left:75%}.grid-margin-x>.medium-offset-9{margin-left:calc(75% + .9375rem)}.medium-offset-10{margin-left:83.33333%}.grid-margin-x>.medium-offset-10{margin-left:calc(83.33333% + .9375rem)}.medium-offset-11{margin-left:91.66667%}.grid-margin-x>.medium-offset-11{margin-left:calc(91.66667% + .9375rem)}}@media print,screen and (min-width:64em){.large-offset-0{margin-left:0}.grid-margin-x>.large-offset-0{margin-left:calc(0% + .9375rem)}.large-offset-1{margin-left:8.33333%}.grid-margin-x>.large-offset-1{margin-left:calc(8.33333% + .9375rem)}.large-offset-2{margin-left:16.66667%}.grid-margin-x>.large-offset-2{margin-left:calc(16.66667% + .9375rem)}.large-offset-3{margin-left:25%}.grid-margin-x>.large-offset-3{margin-left:calc(25% + .9375rem)}.large-offset-4{margin-left:33.33333%}.grid-margin-x>.large-offset-4{margin-left:calc(33.33333% + .9375rem)}.large-offset-5{margin-left:41.66667%}.grid-margin-x>.large-offset-5{margin-left:calc(41.66667% + .9375rem)}.large-offset-6{margin-left:50%}.grid-margin-x>.large-offset-6{margin-left:calc(50% + .9375rem)}.large-offset-7{margin-left:58.33333%}.grid-margin-x>.large-offset-7{margin-left:calc(58.33333% + .9375rem)}.large-offset-8{margin-left:66.66667%}.grid-margin-x>.large-offset-8{margin-left:calc(66.66667% + .9375rem)}.large-offset-9{margin-left:75%}.grid-margin-x>.large-offset-9{margin-left:calc(75% + .9375rem)}.large-offset-10{margin-left:83.33333%}.grid-margin-x>.large-offset-10{margin-left:calc(83.33333% + .9375rem)}.large-offset-11{margin-left:91.66667%}.grid-margin-x>.large-offset-11{margin-left:calc(91.66667% + .9375rem)}}@media screen and (min-width:75em){.xlarge-offset-0{margin-left:0}.grid-margin-x>.xlarge-offset-0{margin-left:calc(0% + .9375rem)}.xlarge-offset-1{margin-left:8.33333%}.grid-margin-x>.xlarge-offset-1{margin-left:calc(8.33333% + .9375rem)}.xlarge-offset-2{margin-left:16.66667%}.grid-margin-x>.xlarge-offset-2{margin-left:calc(16.66667% + .9375rem)}.xlarge-offset-3{margin-left:25%}.grid-margin-x>.xlarge-offset-3{margin-left:calc(25% + .9375rem)}.xlarge-offset-4{margin-left:33.33333%}.grid-margin-x>.xlarge-offset-4{margin-left:calc(33.33333% + .9375rem)}.xlarge-offset-5{margin-left:41.66667%}.grid-margin-x>.xlarge-offset-5{margin-left:calc(41.66667% + .9375rem)}.xlarge-offset-6{margin-left:50%}.grid-margin-x>.xlarge-offset-6{margin-left:calc(50% + .9375rem)}.xlarge-offset-7{margin-left:58.33333%}.grid-margin-x>.xlarge-offset-7{margin-left:calc(58.33333% + .9375rem)}.xlarge-offset-8{margin-left:66.66667%}.grid-margin-x>.xlarge-offset-8{margin-left:calc(66.66667% + .9375rem)}.xlarge-offset-9{margin-left:75%}.grid-margin-x>.xlarge-offset-9{margin-left:calc(75% + .9375rem)}.xlarge-offset-10{margin-left:83.33333%}.grid-margin-x>.xlarge-offset-10{margin-left:calc(83.33333% + .9375rem)}.xlarge-offset-11{margin-left:91.66667%}.grid-margin-x>.xlarge-offset-11{margin-left:calc(91.66667% + .9375rem)}}.grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .grid-frame{width:100%}.cell-block{overflow-x:auto;max-width:100%}.cell-block,.cell-block-y{-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.cell-block-y{overflow-y:auto;max-height:100%;min-height:100%}.cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}@media print,screen and (min-width:40em){.medium-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .medium-grid-frame{width:100%}.medium-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.medium-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.medium-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.medium-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}@media print,screen and (min-width:64em){.large-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .large-grid-frame{width:100%}.large-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.large-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.large-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.large-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}@media screen and (min-width:75em){.xlarge-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .xlarge-grid-frame{width:100%}.xlarge-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.xlarge-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.xlarge-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.xlarge-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}.grid-margin-y{margin-top:-.625rem;margin-bottom:-.625rem}@media print,screen and (min-width:40em){.grid-margin-y{margin-top:-.9375rem;margin-bottom:-.9375rem}}.grid-margin-y>.cell{height:calc(100% - 1.25rem);margin-top:.625rem;margin-bottom:.625rem}@media print,screen and (min-width:40em){.grid-margin-y>.cell{height:calc(100% - 1.875rem);margin-top:.9375rem;margin-bottom:.9375rem}}.grid-margin-y>.auto,.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.25rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.25rem)}.grid-margin-y>.small-3{height:calc(25% - 1.25rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.25rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.25rem)}.grid-margin-y>.small-6{height:calc(50% - 1.25rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.25rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.25rem)}.grid-margin-y>.small-9{height:calc(75% - 1.25rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.25rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.25rem)}.grid-margin-y>.small-12{height:calc(100% - 1.25rem)}@media print,screen and (min-width:40em){.grid-margin-y>.auto,.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.small-3{height:calc(25% - 1.875rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.small-6{height:calc(50% - 1.875rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.small-9{height:calc(75% - 1.875rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.small-12{height:calc(100% - 1.875rem)}.grid-margin-y>.medium-auto,.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.medium-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.875rem)}.grid-margin-y>.medium-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.medium-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.875rem)}.grid-margin-y>.medium-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.medium-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.875rem)}.grid-margin-y>.medium-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.medium-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.875rem)}}@media print,screen and (min-width:64em){.grid-margin-y>.large-auto,.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.large-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.large-3{height:calc(25% - 1.875rem)}.grid-margin-y>.large-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.large-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.large-6{height:calc(50% - 1.875rem)}.grid-margin-y>.large-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.large-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.large-9{height:calc(75% - 1.875rem)}.grid-margin-y>.large-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.large-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.large-12{height:calc(100% - 1.875rem)}}@media screen and (min-width:75em){.grid-margin-y>.xlarge-auto,.grid-margin-y>.xlarge-shrink{height:auto}.grid-margin-y>.xlarge-1{height:calc(8.33333% - 1.875rem)}.grid-margin-y>.xlarge-2{height:calc(16.66667% - 1.875rem)}.grid-margin-y>.xlarge-3{height:calc(25% - 1.875rem)}.grid-margin-y>.xlarge-4{height:calc(33.33333% - 1.875rem)}.grid-margin-y>.xlarge-5{height:calc(41.66667% - 1.875rem)}.grid-margin-y>.xlarge-6{height:calc(50% - 1.875rem)}.grid-margin-y>.xlarge-7{height:calc(58.33333% - 1.875rem)}.grid-margin-y>.xlarge-8{height:calc(66.66667% - 1.875rem)}.grid-margin-y>.xlarge-9{height:calc(75% - 1.875rem)}.grid-margin-y>.xlarge-10{height:calc(83.33333% - 1.875rem)}.grid-margin-y>.xlarge-11{height:calc(91.66667% - 1.875rem)}.grid-margin-y>.xlarge-12{height:calc(100% - 1.875rem)}}.grid-frame.grid-margin-y{height:calc(100vh + 1.25rem)}@media print,screen and (min-width:40em){.grid-frame.grid-margin-y{height:calc(100vh + 1.875rem)}}@media print,screen and (min-width:64em){.grid-frame.grid-margin-y{height:calc(100vh + 1.875rem)}}@media screen and (min-width:75em){.grid-frame.grid-margin-y{height:calc(100vh + 1.875rem)}}@media print,screen and (min-width:40em){.grid-margin-y.medium-grid-frame{height:calc(100vh + 1.875rem)}}@media print,screen and (min-width:64em){.grid-margin-y.large-grid-frame{height:calc(100vh + 1.875rem)}}@media screen and (min-width:75em){.grid-margin-y.xlarge-grid-frame{height:calc(100vh + 1.875rem)}}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.75;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:pt-sans,droid-sans,Helvetica,Roboto,Arial,sans-serif;font-style:normal;font-weight:400;color:inherit;text-rendering:optimizeLegibility}.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{line-height:0;color:#cacaca}.h1,h1{font-size:1.5rem}.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:#1779ba;cursor:pointer}a:focus,a:hover{color:#1468a0}a img{border:0}hr{clear:both;max-width:75rem;height:0;margin:1.25rem auto;border-top:0;border-right:0;border-bottom:1px solid #cacaca;border-left:0}dl,ol,ul{margin-bottom:1rem;list-style-position:outside;line-height:1.75}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 #cacaca}blockquote,blockquote p{line-height:1.75;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:"— "}abbr,abbr[title]{border-bottom:1px dotted #0a0a0a;cursor:help;text-decoration:none}figure{margin:0}code{padding:.125rem .3125rem .0625rem;border:1px solid #cacaca;font-weight:400}code,kbd{background-color:#e6e6e6;font-family:Consolas,Liberation Mono,Courier,monospace;color:#0a0a0a}kbd{margin:0;padding:.125rem .25rem 0}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:400;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}ol.no-bullet,ul.no-bullet{margin-left:0;list-style:none}.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}}@media screen and (min-width:75em){.xlarge-text-left{text-align:left}.xlarge-text-right{text-align:right}.xlarge-text-center{text-align:center}.xlarge-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{*{background:transparent!important;-webkit-box-shadow:none!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 #8a8a8a;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.print-break-inside{page-break-inside:auto}}.accordion{margin-left:0;background:transparent;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:none;border-bottom:0;font-size:.75rem;line-height:1;color:#202529}:last-child:not(.is-active)>.accordion-title{border-bottom:none;border-radius:0 0 0 0}.accordion-title:focus,.accordion-title:hover{background-color:transparent}.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:none;border-bottom:0;background-color:transparent;color:#0a0a0a}:last-child>.accordion-content:last-child{border-bottom:none}html.is-reveal-open{position:fixed;width:100%;overflow-y:hidden}html.is-reveal-open.zf-has-scroll{overflow-y:scroll}html.is-reveal-open body{overflow-y:hidden}.reveal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1005;background-color:hsla(0,0%,4%,.45)}.reveal,.reveal-overlay{display:none;overflow-y:auto}.reveal{z-index:1006;-webkit-backface-visibility:hidden;backface-visibility:hidden;padding:1rem;border:1px solid #cacaca;border-radius:0;background-color:#fefefe;position:relative;top:100px;margin-right:auto;margin-left: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;right:0;bottom:0;left:0;width:100%;max-width:none;height:100%;min-height:100%;margin-left:0;border:0;border-radius:0}@media screen and (max-width:39.99875em){.reveal{top:0;right:0;bottom:0;left:0;width:100%;max-width:none;height:100%;min-height:100%;margin-left:0;border:0;border-radius:0}}.reveal.without-overlay{position:fixed}table{border-collapse:collapse;width:100%;margin-bottom:1rem;border-radius:0}tbody,tfoot,thead{border:1.5px solid #0f547c;background-color:#fefefe}caption{padding:.5rem .625rem .625rem;font-weight:700}thead{background:#f2f2f2}tfoot,thead{color:#0a0a0a}tfoot{background:#f1f1f1}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{border-bottom:0;border-bottom:1.5px solid #0f547c;background-color:#fefefe}table.striped tbody tr:nth-child(2n){border-bottom:0;background-color:#f1f1f1}@media screen and (max-width:63.99875em){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:#f3f3f3}table.hover tfoot tr:hover{background-color:#ececec}table.hover tbody tr:hover{background-color:#f9f9f9}table.hover.striped tr:nth-of-type(2n):hover{background-color:#ececec}.table-scroll{overflow-x:auto}.hide{display:none!important}.invisible{visibility:hidden}@media screen and (max-width:39.99875em){.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.99875em){.show-for-medium{display:none!important}}@media screen and (min-width:40em) and (max-width:63.99875em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.99875em),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.99875em){.show-for-large{display:none!important}}@media screen and (min-width:64em) and (max-width:74.99875em){.hide-for-large-only{display:none!important}}@media screen and (max-width:63.99875em),screen and (min-width:75em){.show-for-large-only{display:none!important}}@media screen and (min-width:75em){.hide-for-xlarge{display:none!important}}@media screen and (max-width:74.99875em){.show-for-xlarge{display:none!important}}@media screen and (min-width:75em) and (max-width:89.99875em){.hide-for-xlarge-only{display:none!important}}@media screen and (max-width:74.99875em),screen and (min-width:90em){.show-for-xlarge-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;border:0}.show-on-focus:active,.show-on-focus:focus{position:static!important;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.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{display:table;content:" ";-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.clearfix:after{clear:both}.align-left{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.align-right{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.align-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.align-justify{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.align-spaced{-ms-flex-pack:distribute;justify-content:space-around}.align-left.vertical.menu>li>a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.align-right.vertical.menu>li>a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.align-center.vertical.menu>li>a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.align-top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.align-self-top{-ms-flex-item-align:start;align-self:flex-start}.align-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.align-self-bottom{-ms-flex-item-align:end;align-self:flex-end}.align-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.align-self-middle{-ms-flex-item-align:center;align-self:center}.align-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.align-self-stretch{-ms-flex-item-align:stretch;align-self:stretch}.align-center-middle{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.small-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.small-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.small-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.small-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.small-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.small-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}@media print,screen and (min-width:40em){.medium-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.medium-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.medium-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.medium-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.medium-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.medium-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media print,screen and (min-width:64em){.large-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.large-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.large-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.large-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.large-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.large-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media screen and (min-width:75em){.xlarge-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.xlarge-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.xlarge-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.xlarge-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.xlarge-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.xlarge-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}.flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}@media print,screen and (min-width:40em){.medium-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.medium-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.medium-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.medium-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.medium-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.medium-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.medium-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.medium-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media print,screen and (min-width:64em){.large-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.large-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.large-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.large-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.large-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.large-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.large-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.large-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media screen and (min-width:75em){.xlarge-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.xlarge-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.xlarge-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.xlarge-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.xlarge-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.xlarge-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.xlarge-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.xlarge-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.slide-in-down.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-down.mui-enter.mui-enter-active{-webkit-transform:translateY(0);transform:translateY(0)}.slide-in-left.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateX(-100%);transform:translateX(-100%);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-left.mui-enter.mui-enter-active{-webkit-transform:translateX(0);transform:translateX(0)}.slide-in-up.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateY(100%);transform:translateY(100%);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-up.mui-enter.mui-enter-active{-webkit-transform:translateY(0);transform:translateY(0)}.slide-in-right.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateX(100%);transform:translateX(100%);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-right.mui-enter.mui-enter-active{-webkit-transform:translateX(0);transform:translateX(0)}.slide-out-down.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-down.mui-leave.mui-leave-active{-webkit-transform:translateY(100%);transform:translateY(100%)}.slide-out-right.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateX(0);transform:translateX(0);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-right.mui-leave.mui-leave-active{-webkit-transform:translateX(100%);transform:translateX(100%)}.slide-out-up.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-up.mui-leave.mui-leave-active{-webkit-transform:translateY(-100%);transform:translateY(-100%)}.slide-out-left.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:translateX(0);transform:translateX(0);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-left.mui-leave.mui-leave-active{-webkit-transform:translateX(-100%);transform:translateX(-100%)}.fade-in.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;opacity:0;-webkit-transition-property:opacity;transition-property:opacity}.fade-in.mui-enter.mui-enter-active{opacity:1}.fade-out.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;opacity:1;-webkit-transition-property:opacity;transition-property:opacity}.fade-out.mui-leave.mui-leave-active{opacity:0}.hinge-in-from-top.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotateX(-90deg);transform:perspective(2000px) rotateX(-90deg);-webkit-transform-origin:top;transform-origin:top;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.hinge-in-from-top.mui-enter.mui-enter-active{-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-right.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotateY(-90deg);transform:perspective(2000px) rotateY(-90deg);-webkit-transform-origin:right;transform-origin:right;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.hinge-in-from-right.mui-enter.mui-enter-active{-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-bottom.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotateX(90deg);transform:perspective(2000px) rotateX(90deg);-webkit-transform-origin:bottom;transform-origin:bottom;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.hinge-in-from-bottom.mui-enter.mui-enter-active{-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-left.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotateY(90deg);transform:perspective(2000px) rotateY(90deg);-webkit-transform-origin:left;transform-origin:left;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.hinge-in-from-left.mui-enter.mui-enter-active{-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-middle-x.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotateX(-90deg);transform:perspective(2000px) rotateX(-90deg);-webkit-transform-origin:center;transform-origin:center;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.hinge-in-from-middle-x.mui-enter.mui-enter-active{-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-middle-y.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotateY(-90deg);transform:perspective(2000px) rotateY(-90deg);-webkit-transform-origin:center;transform-origin:center;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.hinge-in-from-middle-y.mui-enter.mui-enter-active,.hinge-out-from-top.mui-leave{-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-out-from-top.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform-origin:top;transform-origin:top;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform}.hinge-out-from-top.mui-leave.mui-leave-active{-webkit-transform:perspective(2000px) rotateX(-90deg);transform:perspective(2000px) rotateX(-90deg);opacity:0}.hinge-out-from-right.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);-webkit-transform-origin:right;transform-origin:right;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:1}.hinge-out-from-right.mui-leave.mui-leave-active{-webkit-transform:perspective(2000px) rotateY(-90deg);transform:perspective(2000px) rotateY(-90deg);opacity:0}.hinge-out-from-bottom.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);-webkit-transform-origin:bottom;transform-origin:bottom;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:1}.hinge-out-from-bottom.mui-leave.mui-leave-active{-webkit-transform:perspective(2000px) rotateX(90deg);transform:perspective(2000px) rotateX(90deg);opacity:0}.hinge-out-from-left.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);-webkit-transform-origin:left;transform-origin:left;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:1}.hinge-out-from-left.mui-leave.mui-leave-active{-webkit-transform:perspective(2000px) rotateY(90deg);transform:perspective(2000px) rotateY(90deg);opacity:0}.hinge-out-from-middle-x.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);-webkit-transform-origin:center;transform-origin:center;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:1}.hinge-out-from-middle-x.mui-leave.mui-leave-active{-webkit-transform:perspective(2000px) rotateX(-90deg);transform:perspective(2000px) rotateX(-90deg);opacity:0}.hinge-out-from-middle-y.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:perspective(2000px) rotate(0deg);transform:perspective(2000px) rotate(0deg);-webkit-transform-origin:center;transform-origin:center;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:1}.hinge-out-from-middle-y.mui-leave.mui-leave-active{-webkit-transform:perspective(2000px) rotateY(-90deg);transform:perspective(2000px) rotateY(-90deg);opacity:0}.scale-in-up.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:scale(.5);transform:scale(.5);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.scale-in-up.mui-enter.mui-enter-active{-webkit-transform:scale(1);transform:scale(1);opacity:1}.scale-in-down.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:scale(1.5);transform:scale(1.5);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.scale-in-down.mui-enter.mui-enter-active,.scale-out-up.mui-leave{-webkit-transform:scale(1);transform:scale(1);opacity:1}.scale-out-up.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform}.scale-out-up.mui-leave.mui-leave-active{-webkit-transform:scale(1.5);transform:scale(1.5);opacity:0}.scale-out-down.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:scale(1);transform:scale(1);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:1}.scale-out-down.mui-leave.mui-leave-active{-webkit-transform:scale(.5);transform:scale(.5);opacity:0}.spin-in.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transform:rotate(-270deg);transform:rotate(-270deg);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;opacity:0}.spin-in.mui-enter.mui-enter-active,.spin-out.mui-leave{-webkit-transform:rotate(0);transform:rotate(0);opacity:1}.spin-out.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform}.spin-in-ccw.mui-enter,.spin-out.mui-leave.mui-leave-active{-webkit-transform:rotate(270deg);transform:rotate(270deg);opacity:0}.spin-in-ccw.mui-enter{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform}.spin-in-ccw.mui-enter.mui-enter-active,.spin-out-ccw.mui-leave{-webkit-transform:rotate(0);transform:rotate(0);opacity:1}.spin-out-ccw.mui-leave{-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear;-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform}.spin-out-ccw.mui-leave.mui-leave-active{-webkit-transform:rotate(-270deg);transform:rotate(-270deg);opacity:0}.slow{-webkit-transition-duration:.75s!important;transition-duration:.75s!important}.fast{-webkit-transition-duration:.25s!important;transition-duration:.25s!important}.linear{-webkit-transition-timing-function:linear!important;transition-timing-function:linear!important}.ease{-webkit-transition-timing-function:ease!important;transition-timing-function:ease!important}.ease-in{-webkit-transition-timing-function:ease-in!important;transition-timing-function:ease-in!important}.ease-out{-webkit-transition-timing-function:ease-out!important;transition-timing-function:ease-out!important}.ease-in-out{-webkit-transition-timing-function:ease-in-out!important;transition-timing-function:ease-in-out!important}.bounce-in{-webkit-transition-timing-function:cubic-bezier(.485,.155,.24,1.245)!important;transition-timing-function:cubic-bezier(.485,.155,.24,1.245)!important}.bounce-out{-webkit-transition-timing-function:cubic-bezier(.485,.155,.515,.845)!important;transition-timing-function:cubic-bezier(.485,.155,.515,.845)!important}.bounce-in-out{-webkit-transition-timing-function:cubic-bezier(.76,-.245,.24,1.245)!important;transition-timing-function:cubic-bezier(.76,-.245,.24,1.245)!important}.short-delay{-webkit-transition-delay:.3s!important;transition-delay:.3s!important}.long-delay{-webkit-transition-delay:.7s!important;transition-delay:.7s!important}html.lb-disable-scrolling{overflow:hidden;position:fixed;height:100vh;width:100vw}.lightboxOverlay{position:absolute;top:0;left:0;z-index:9999;background-color:#000;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);opacity:.8;display:none}.lightbox{position:absolute;left:0;width:100%;z-index:10000;text-align:center;line-height:0;font-weight:400}.lightbox .lb-image{display:block;height:auto;max-width:inherit;max-height:none;border-radius:3px;border:4px solid #fff}.lightbox a img{border:none}.lb-outerContainer{position:relative;*zoom:1;width:250px;height:250px;margin:0 auto;border-radius:4px;background-color:#fff}.lb-outerContainer:after{content:"";display:table;clear:both}.lb-loader{position:absolute;top:43%;left:0;height:25%;width:100%;text-align:center;line-height:0}.lb-cancel{display:block;width:32px;height:32px;margin:0 auto;background:url(../images/loading.gif) no-repeat}.lb-nav{position:absolute;top:0;left:0;height:100%;width:100%;z-index:10}.lb-container>.nav{left:0}.lb-nav a{outline:none;background-image:url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")}.lb-next,.lb-prev{height:100%;cursor:pointer;display:block}.lb-nav a.lb-prev{width:34%;left:0;float:left;background:url(../images/prev.png) left 48% no-repeat;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-prev:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lb-nav a.lb-next{width:64%;right:0;float:right;background:url(../images/next.png) right 48% no-repeat;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-next:hover{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.lb-dataContainer{margin:0 auto;padding-top:5px;*zoom:1;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.lb-dataContainer:after{content:"";display:table;clear:both}.lb-data{padding:0 4px;color:#ccc}.lb-data .lb-details{width:85%;float:left;text-align:left;line-height:1.1em}.lb-data .lb-caption{font-size:13px;font-weight:700;line-height:1em}.lb-data .lb-caption a{color:#4ae}.lb-data .lb-number{display:block;clear:left;padding-bottom:1em;font-size:12px;color:#999}.lb-data .lb-close{display:block;float:right;width:30px;height:30px;background:url(../images/close.png) 100% 0 no-repeat;text-align:right;outline:none;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=70);opacity:.7;-webkit-transition:opacity .2s;transition:opacity .2s}.lb-data .lb-close:hover{cursor:pointer;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.owl-carousel{display:none;width:100%;-webkit-tap-highlight-color:transparent;position:relative;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translateZ(0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0)}.owl-carousel .owl-item{position:relative;min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:none;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loaded{display:block}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:-webkit-grab;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.no-js .owl-carousel{display:block}.owl-carousel .animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{-webkit-animation-name:a;animation-name:a}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.owl-height{-webkit-transition:height .5s ease-in-out;transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;-webkit-transition:opacity .4s ease;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;-webkit-transition:-webkit-transform .1s ease;transition:-webkit-transform .1s ease;transition:transform .1s ease;transition:transform .1s ease,-webkit-transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-webkit-transform:scale(1.3);transform:scale(1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:50%;background-repeat:no-repeat;background-size:contain;-webkit-transition:opacity .4s ease;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}.owl-theme .owl-nav{margin-top:10px;text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-nav [class*=owl-]{color:#fff;font-size:14px;margin:5px;padding:4px 7px;background:#d6d6d6;display:inline-block;cursor:pointer;border-radius:3px}.owl-theme .owl-nav [class*=owl-]:hover{background:#869791;color:#fff;text-decoration:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots{text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1;*display:inline}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#d6d6d6;display:block;-webkit-backface-visibility:visible;-webkit-transition:opacity .2s ease;transition:opacity .2s ease;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#869791}@font-face{font-family:pat-training-services;font-weight:400;font-style:normal;src:url(../fonts/pat-training-services.eot);src:url(../fonts/pat-training-services.eot?#iefix) format("embedded-opentype"),url(../fonts/pat-training-services.woff) format("woff"),url(../fonts/pat-training-services.ttf) format("truetype"),url(../fonts/pat-training-services.svg#pat-training-services) format("svg")}[data-icon]:before{content:attr(data-icon)}[class*=" icon-"]:before,[class^=icon-]:before,[data-icon]:before{font-family:pat-training-services!important;line-height:1;font-weight:400!important;font-style:normal!important;font-variant:normal!important;text-transform:none!important;-webkit-font-smoothing:antialiased;speak:none;-moz-osx-font-smoothing:grayscale}.icon-android-arrow-dropright:before{content:"\61"}.icon-android-arrow-dropleft:before{content:"\62"}.icon-android-arrow-dropup:before{content:"\63"}.icon-android-arrow-dropdown:before{content:"\64"}.icon-menu:before{content:"\65"}.icon-search:before{content:"\66"}.icon-phone:before{content:"\67"}.icon-home:before{content:"\68"}.icon-at:before{content:"\69"}.icon-printer:before{content:"\6a"}.icon-cross:before{content:"\6b"}#on-site-modal .c-page-title__intro,#product-addons-total .wc-pao-subtotal-line .price,.c-accordion__title,.c-addon__name,.c-banner__title,.c-bundle .c-product__price,.c-callout__content,.c-callout__title,.c-centered-text__title,.c-content-pod__title,.c-customer-list__title,.c-highlight__name,.c-hire-product .c-offset-content-pod__title,.c-hire-product__price,.c-list-box__title,.c-modal--course .c-page-title__intro,.c-modal--course .c-product__price,.c-modal--course .o-related-products__title,.c-modal--nav .c-nav a,.c-modal--search input,.c-modal .c-page-title,.c-offset-content-pod__section-title,.c-offset-content-pod__title,.c-page-banner__title,.c-page-title,.c-price-box__price,.c-price-box__title,.c-product--booking .c-product__title,.c-product--listed .c-product__price,.c-product--standard .c-product__title,.c-product--view .c-product__price,.c-product__course-summary .c-content-pod__title,.c-product__free-gift-title,.c-product__onsite-courses,.c-product__price-suffix,.c-sidebar__title,.contact-us__details .o-flag,.o-content-box__title,.o-footer__nav .c-nav a,.o-header__mobile-contact,.o-header__nav .c-nav a,.o-icon-strip__title,.o-related-products__title,.o-search__see-more,.o-testimonial-slider__title,.utl-heading-alpha,.utl-heading-beta,.utl-heading-gamma,.utl-small,h1,h2,h3,small{margin:0 0 .5rem;color:#202529;font-family:pt-sans,droid-sans,Helvetica,Roboto,Arial,sans-serif;font-size:1rem;line-height:1.4;font-weight:700;letter-spacing:0;text-transform:none;text-rendering:optimizeLegibility}.c-banner__title,.c-page-banner__title,.c-page-title,.c-price-box__price,.c-product--booking .c-product__title,.utl-heading-alpha,h1{font-size:2rem;font-size:calc(2rem + .8125 * ((100vw - 20rem) / 55))}@media screen and (min-width:75rem){.c-banner__title,.c-page-banner__title,.c-page-title,.c-price-box__price,.c-product--booking .c-product__title,.utl-heading-alpha,h1{font-size:2.8125rem}}@media screen and (max-width:20rem){.c-banner__title,.c-page-banner__title,.c-page-title,.c-price-box__price,.c-product--booking .c-product__title,.utl-heading-alpha,h1{font-size:2rem}}#product-addons-total .wc-pao-subtotal-line .price,.c-bundle .c-product__price,.c-callout__title,.c-centered-text__title,.c-customer-list__title,.c-hire-product .c-offset-content-pod__title,.c-hire-product__price,.c-modal--course .c-product__price,.c-modal .c-page-title,.c-product--standard .c-product__title,.c-product--view .c-product__price,.c-product__course-summary .c-content-pod__title,.c-sidebar__title,.o-content-box__title,.o-icon-strip__title,.o-related-products__title,.o-testimonial-slider__title,.utl-heading-beta,h2{font-size:2.125rem;font-size:calc(2.125rem + -.125 * ((100vw - 20rem) / 55))}@media screen and (min-width:75rem){#product-addons-total .wc-pao-subtotal-line .price,.c-bundle .c-product__price,.c-callout__title,.c-centered-text__title,.c-customer-list__title,.c-hire-product .c-offset-content-pod__title,.c-hire-product__price,.c-modal--course .c-product__price,.c-modal .c-page-title,.c-product--standard .c-product__title,.c-product--view .c-product__price,.c-product__course-summary .c-content-pod__title,.c-sidebar__title,.o-content-box__title,.o-icon-strip__title,.o-related-products__title,.o-testimonial-slider__title,.utl-heading-beta,h2{font-size:2rem}}@media screen and (max-width:20rem){#product-addons-total .wc-pao-subtotal-line .price,.c-bundle .c-product__price,.c-callout__title,.c-centered-text__title,.c-customer-list__title,.c-hire-product .c-offset-content-pod__title,.c-hire-product__price,.c-modal--course .c-product__price,.c-modal .c-page-title,.c-product--standard .c-product__title,.c-product--view .c-product__price,.c-product__course-summary .c-content-pod__title,.c-sidebar__title,.o-content-box__title,.o-icon-strip__title,.o-related-products__title,.o-testimonial-slider__title,.utl-heading-beta,h2{font-size:2.125rem}}#on-site-modal .c-page-title__intro,.c-accordion__title,.c-addon__name,.c-callout__content,.c-content-pod__title,.c-list-box__title,.c-modal--course .c-page-title__intro,.c-modal--course .o-related-products__title,.c-modal--nav .c-nav a,.c-modal--search input,.c-offset-content-pod__title,.c-price-box__title,.c-product--listed .c-product__price,.c-product__free-gift-title,.c-product__price-suffix,.contact-us__details .o-flag,.o-header__mobile-contact,.utl-heading-gamma,h3{font-size:1.125rem;font-size:calc(1.125rem + .25 * ((100vw - 20rem) / 55))}@media screen and (min-width:75rem){#on-site-modal .c-page-title__intro,.c-accordion__title,.c-addon__name,.c-callout__content,.c-content-pod__title,.c-list-box__title,.c-modal--course .c-page-title__intro,.c-modal--course .o-related-products__title,.c-modal--nav .c-nav a,.c-modal--search input,.c-offset-content-pod__title,.c-price-box__title,.c-product--listed .c-product__price,.c-product__free-gift-title,.c-product__price-suffix,.contact-us__details .o-flag,.o-header__mobile-contact,.utl-heading-gamma,h3{font-size:1.375rem}}@media screen and (max-width:20rem){#on-site-modal .c-page-title__intro,.c-accordion__title,.c-addon__name,.c-callout__content,.c-content-pod__title,.c-list-box__title,.c-modal--course .c-page-title__intro,.c-modal--course .o-related-products__title,.c-modal--nav .c-nav a,.c-modal--search input,.c-offset-content-pod__title,.c-price-box__title,.c-product--listed .c-product__price,.c-product__free-gift-title,.c-product__price-suffix,.contact-us__details .o-flag,.o-header__mobile-contact,.utl-heading-gamma,h3{font-size:1.125rem}}#on-site-modal .c-nav__dropdown .c-page-title__intro,.c-modal--course .c-nav__dropdown .c-page-title__intro,.c-modal--course .c-nav__dropdown .o-related-products__title,.c-modal--nav .c-nav .c-nav__dropdown a,.c-modal--search .c-nav__dropdown input,.c-nav__dropdown #on-site-modal .c-page-title__intro,.c-nav__dropdown .c-accordion__title,.c-nav__dropdown .c-addon__name,.c-nav__dropdown .c-callout__content,.c-nav__dropdown .c-content-pod__title,.c-nav__dropdown .c-list-box__title,.c-nav__dropdown .c-modal--course .c-page-title__intro,.c-nav__dropdown .c-modal--course .o-related-products__title,.c-nav__dropdown .c-modal--nav .c-nav a,.c-nav__dropdown .c-modal--search input,.c-nav__dropdown .c-offset-content-pod__title,.c-nav__dropdown .c-price-box__title,.c-nav__dropdown .c-product--listed .c-product__price,.c-nav__dropdown .c-product__free-gift-title,.c-nav__dropdown .c-product__price-suffix,.c-nav__dropdown .contact-us__details .o-flag,.c-nav__dropdown .o-header__mobile-contact,.c-nav__dropdown .utl-heading-gamma,.c-nav__dropdown h3,.c-product--listed .c-nav__dropdown .c-product__price,.contact-us__details .c-nav__dropdown .o-flag{color:#fff}.c-highlight__name,.c-offset-content-pod__section-title,.c-product__onsite-courses,.o-footer__nav .c-nav a,.o-header__nav .c-nav a,.o-search__see-more,.utl-small,small{display:block;margin-bottom:0;font-size:.875rem;text-transform:uppercase}.c-nav__dropdown .c-highlight__name,.c-nav__dropdown .c-offset-content-pod__section-title,.c-nav__dropdown .c-product__onsite-courses,.c-nav__dropdown .o-footer__nav .c-nav a,.c-nav__dropdown .o-header__nav .c-nav a,.c-nav__dropdown .o-search__see-more,.c-nav__dropdown .utl-small,.c-nav__dropdown small,.o-footer__nav .c-nav .c-nav__dropdown a,.o-header__nav .c-nav .c-nav__dropdown a{color:#fff}@media screen and (max-width:39.99875em){.c-nav__dropdown .c-highlight__name,.c-nav__dropdown .c-offset-content-pod__section-title,.c-nav__dropdown .c-product__onsite-courses,.c-nav__dropdown .o-footer__nav .c-nav a,.c-nav__dropdown .o-header__nav .c-nav a,.c-nav__dropdown .o-search__see-more,.c-nav__dropdown .utl-small,.c-nav__dropdown small,.o-footer__nav .c-nav .c-nav__dropdown a,.o-header__nav .c-nav .c-nav__dropdown a{display:none}}a{display:inline-block;color:#0f547c;text-decoration:none;-webkit-transition:color .2s ease-in-out;transition:color .2s ease-in-out}a:focus,a:hover{color:#4d94cb}.o-footer__contact-details a{color:#fff}.c-button,.s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce #respond input#submit,.s-woocommerce-booking .woocommerce a.button,.s-woocommerce-booking .woocommerce button.button,.s-woocommerce-booking .woocommerce input.button,button:not([class*=wcc-]){display:inline-block;padding:.5rem 3.75rem .5rem 1rem;border:0;border-radius:0;position:relative;color:#fff;font-family:pt-sans,droid-sans,Helvetica,Roboto,Arial,sans-serif;font-size:.875rem;line-height:1.75;font-weight:700;text-align:left;text-decoration:none;text-transform:uppercase;-webkit-font-smoothing:antialiased;background-color:#4d94cb;opacity:1;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:opacity .2s ease-in-out;transition:opacity .2s ease-in-out;vertical-align:top;white-space:normal;outline:none}.c-button:after,.s-ninja-forms .submit-container input:after,.s-woocommerce-booking .woocommerce #respond input#submit:after,.s-woocommerce-booking .woocommerce a.button:after,.s-woocommerce-booking .woocommerce button.button:after,.s-woocommerce-booking .woocommerce input.button:after,button:not([class*=wcc-]):after{content:"";width:2.5rem;position:absolute;top:0;right:0;bottom:0;text-align:center;background-color:#0f547c;background-image:url(../img/icon-chevron-right.png);background-image:url(../img/icon-chevron-right.svg);background-position:50%;background-repeat:no-repeat;background-size:.625rem}.c-button:focus,.c-button:hover,.s-ninja-forms .submit-container input:focus,.s-ninja-forms .submit-container input:hover,.s-woocommerce-booking .woocommerce #respond input#submit:focus,.s-woocommerce-booking .woocommerce #respond input#submit:hover,.s-woocommerce-booking .woocommerce a.button:focus,.s-woocommerce-booking .woocommerce a.button:hover,.s-woocommerce-booking .woocommerce button.button:focus,.s-woocommerce-booking .woocommerce button.button:hover,.s-woocommerce-booking .woocommerce input.button:focus,.s-woocommerce-booking .woocommerce input.button:hover,button:not([class*=wcc-]):focus,button:not([class*=wcc-]):hover{color:#fff;text-decoration:none;opacity:.7}.c-button:disabled,.s-ninja-forms .submit-container input:disabled,.s-woocommerce-booking .woocommerce #respond input#submit:disabled,.s-woocommerce-booking .woocommerce a.button:disabled,.s-woocommerce-booking .woocommerce button.button:disabled,.s-woocommerce-booking .woocommerce input.button:disabled,button:not([class*=wcc-]):disabled{opacity:.5;cursor:not-allowed}.c-button:disabled:hover,.s-ninja-forms .submit-container input:disabled:hover,.s-woocommerce-booking .woocommerce #respond input#submit:disabled:hover,.s-woocommerce-booking .woocommerce a.button:disabled:hover,.s-woocommerce-booking .woocommerce button.button:disabled:hover,.s-woocommerce-booking .woocommerce input.button:disabled:hover,button:not([class*=wcc-]):disabled:hover{background-color:#8a8a8a}.c-button.c-search__button,.c-modal__close .c-button,.c-modal__close .s-ninja-forms .submit-container input,.c-modal__close .s-woocommerce-booking .woocommerce #respond input#submit,.c-modal__close .s-woocommerce-booking .woocommerce a.button,.c-modal__close .s-woocommerce-booking .woocommerce button.button,.c-modal__close .s-woocommerce-booking .woocommerce input.button,.c-modal__close button:not([class*=wcc-]),.o-header__mobile-nav-container .c-button,.o-header__mobile-nav-container .s-ninja-forms .submit-container input,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce #respond input#submit,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce a.button,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce button.button,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce input.button,.o-header__mobile-nav-container button:not([class*=wcc-]),.o-header__search-toggle .c-button,.o-header__search-toggle .s-ninja-forms .submit-container input,.o-header__search-toggle .s-woocommerce-booking .woocommerce #respond input#submit,.o-header__search-toggle .s-woocommerce-booking .woocommerce a.button,.o-header__search-toggle .s-woocommerce-booking .woocommerce button.button,.o-header__search-toggle .s-woocommerce-booking .woocommerce input.button,.o-header__search-toggle button:not([class*=wcc-]),.s-acf-map .c-button,.s-acf-map .s-ninja-forms .submit-container input,.s-acf-map .s-woocommerce-booking .woocommerce #respond input#submit,.s-acf-map .s-woocommerce-booking .woocommerce a.button,.s-acf-map .s-woocommerce-booking .woocommerce button.button,.s-acf-map .s-woocommerce-booking .woocommerce input.button,.s-acf-map button:not([class*=wcc-]),.s-ninja-forms .submit-container .c-modal__close input,.s-ninja-forms .submit-container .o-header__mobile-nav-container input,.s-ninja-forms .submit-container .o-header__search-toggle input,.s-ninja-forms .submit-container .s-acf-map input,.s-ninja-forms .submit-container input.c-search__button,.s-woocommerce-booking .woocommerce #respond .c-modal__close input#submit,.s-woocommerce-booking .woocommerce #respond .o-header__mobile-nav-container input#submit,.s-woocommerce-booking .woocommerce #respond .o-header__search-toggle input#submit,.s-woocommerce-booking .woocommerce #respond .s-acf-map input#submit,.s-woocommerce-booking .woocommerce #respond input.c-search__button#submit,.s-woocommerce-booking .woocommerce .c-modal__close a.button,.s-woocommerce-booking .woocommerce .c-modal__close button.button,.s-woocommerce-booking .woocommerce .c-modal__close input.button,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container a.button,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container button.button,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container input.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle a.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle button.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle input.button,.s-woocommerce-booking .woocommerce .s-acf-map a.button,.s-woocommerce-booking .woocommerce .s-acf-map button.button,.s-woocommerce-booking .woocommerce .s-acf-map input.button,.s-woocommerce-booking .woocommerce a.c-search__button.button,.s-woocommerce-booking .woocommerce button.c-search__button.button,.s-woocommerce-booking .woocommerce input.c-search__button.button,button:not([class*=wcc-]).c-search__button{padding:0}.c-button.c-search__button:after,.c-modal__close .c-button:after,.c-modal__close .s-ninja-forms .submit-container input:after,.c-modal__close .s-woocommerce-booking .woocommerce #respond input#submit:after,.c-modal__close .s-woocommerce-booking .woocommerce a.button:after,.c-modal__close .s-woocommerce-booking .woocommerce button.button:after,.c-modal__close .s-woocommerce-booking .woocommerce input.button:after,.c-modal__close button:not([class*=wcc-]):after,.o-header__mobile-nav-container .c-button:after,.o-header__mobile-nav-container .s-ninja-forms .submit-container input:after,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce #respond input#submit:after,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce a.button:after,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce button.button:after,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce input.button:after,.o-header__mobile-nav-container button:not([class*=wcc-]):after,.o-header__search-toggle .c-button:after,.o-header__search-toggle .s-ninja-forms .submit-container input:after,.o-header__search-toggle .s-woocommerce-booking .woocommerce #respond input#submit:after,.o-header__search-toggle .s-woocommerce-booking .woocommerce a.button:after,.o-header__search-toggle .s-woocommerce-booking .woocommerce button.button:after,.o-header__search-toggle .s-woocommerce-booking .woocommerce input.button:after,.o-header__search-toggle button:not([class*=wcc-]):after,.s-acf-map .c-button:after,.s-acf-map .s-ninja-forms .submit-container input:after,.s-acf-map .s-woocommerce-booking .woocommerce #respond input#submit:after,.s-acf-map .s-woocommerce-booking .woocommerce a.button:after,.s-acf-map .s-woocommerce-booking .woocommerce button.button:after,.s-acf-map .s-woocommerce-booking .woocommerce input.button:after,.s-acf-map button:not([class*=wcc-]):after,.s-ninja-forms .submit-container .c-modal__close input:after,.s-ninja-forms .submit-container .o-header__mobile-nav-container input:after,.s-ninja-forms .submit-container .o-header__search-toggle input:after,.s-ninja-forms .submit-container .s-acf-map input:after,.s-ninja-forms .submit-container input.c-search__button:after,.s-woocommerce-booking .woocommerce #respond .c-modal__close input#submit:after,.s-woocommerce-booking .woocommerce #respond .o-header__mobile-nav-container input#submit:after,.s-woocommerce-booking .woocommerce #respond .o-header__search-toggle input#submit:after,.s-woocommerce-booking .woocommerce #respond .s-acf-map input#submit:after,.s-woocommerce-booking .woocommerce #respond input.c-search__button#submit:after,.s-woocommerce-booking .woocommerce .c-modal__close a.button:after,.s-woocommerce-booking .woocommerce .c-modal__close button.button:after,.s-woocommerce-booking .woocommerce .c-modal__close input.button:after,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container a.button:after,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container button.button:after,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container input.button:after,.s-woocommerce-booking .woocommerce .o-header__search-toggle a.button:after,.s-woocommerce-booking .woocommerce .o-header__search-toggle button.button:after,.s-woocommerce-booking .woocommerce .o-header__search-toggle input.button:after,.s-woocommerce-booking .woocommerce .s-acf-map a.button:after,.s-woocommerce-booking .woocommerce .s-acf-map button.button:after,.s-woocommerce-booking .woocommerce .s-acf-map input.button:after,.s-woocommerce-booking .woocommerce a.c-search__button.button:after,.s-woocommerce-booking .woocommerce button.c-search__button.button:after,.s-woocommerce-booking .woocommerce input.c-search__button.button:after,button:not([class*=wcc-]).c-search__button:after{display:none}.c-button.c-search__button,.s-ninja-forms .submit-container input.c-search__button,.s-woocommerce-booking .woocommerce #respond input.c-search__button#submit,.s-woocommerce-booking .woocommerce a.c-search__button.button,.s-woocommerce-booking .woocommerce button.c-search__button.button,.s-woocommerce-booking .woocommerce input.c-search__button.button,button:not([class*=wcc-]).c-search__button{font-size:1.375rem}.o-header__mobile-nav-container .c-button,.o-header__mobile-nav-container .s-ninja-forms .submit-container input,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce #respond input#submit,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce a.button,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce button.button,.o-header__mobile-nav-container .s-woocommerce-booking .woocommerce input.button,.o-header__mobile-nav-container button:not([class*=wcc-]),.o-header__search-toggle .c-button,.o-header__search-toggle .s-ninja-forms .submit-container input,.o-header__search-toggle .s-woocommerce-booking .woocommerce #respond input#submit,.o-header__search-toggle .s-woocommerce-booking .woocommerce a.button,.o-header__search-toggle .s-woocommerce-booking .woocommerce button.button,.o-header__search-toggle .s-woocommerce-booking .woocommerce input.button,.o-header__search-toggle button:not([class*=wcc-]),.s-ninja-forms .submit-container .o-header__mobile-nav-container input,.s-ninja-forms .submit-container .o-header__search-toggle input,.s-woocommerce-booking .woocommerce #respond .o-header__mobile-nav-container input#submit,.s-woocommerce-booking .woocommerce #respond .o-header__search-toggle input#submit,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container a.button,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container button.button,.s-woocommerce-booking .woocommerce .o-header__mobile-nav-container input.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle a.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle button.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle input.button{background-color:transparent}.o-header__search-toggle .c-button,.o-header__search-toggle .s-ninja-forms .submit-container input,.o-header__search-toggle .s-woocommerce-booking .woocommerce #respond input#submit,.o-header__search-toggle .s-woocommerce-booking .woocommerce a.button,.o-header__search-toggle .s-woocommerce-booking .woocommerce button.button,.o-header__search-toggle .s-woocommerce-booking .woocommerce input.button,.o-header__search-toggle button:not([class*=wcc-]),.s-ninja-forms .submit-container .o-header__search-toggle input,.s-woocommerce-booking .woocommerce #respond .o-header__search-toggle input#submit,.s-woocommerce-booking .woocommerce .o-header__search-toggle a.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle button.button,.s-woocommerce-booking .woocommerce .o-header__search-toggle input.button{display:block;width:100%;color:#202529;font-family:droid-sans,Helvetica,Roboto,Arial,sans-serif;font-size:1.125rem;font-weight:400;text-align:right}.c-modal__close .c-button,.c-modal__close .s-ninja-forms .submit-container input,.c-modal__close .s-woocommerce-booking .woocommerce #respond input#submit,.c-modal__close .s-woocommerce-booking .woocommerce a.button,.c-modal__close .s-woocommerce-booking .woocommerce button.button,.c-modal__close .s-woocommerce-booking .woocommerce input.button,.c-modal__close button:not([class*=wcc-]),.s-ninja-forms .submit-container .c-modal__close input,.s-woocommerce-booking .woocommerce #respond .c-modal__close input#submit,.s-woocommerce-booking .woocommerce .c-modal__close a.button,.s-woocommerce-booking .woocommerce .c-modal__close button.button,.s-woocommerce-booking .woocommerce .c-modal__close input.button{color:#202529;background-color:#fff}.c-modal--nav .c-modal__close .c-button,.c-modal--nav .c-modal__close .s-ninja-forms .submit-container input,.c-modal--nav .c-modal__close .s-woocommerce-booking .woocommerce #respond input#submit,.c-modal--nav .c-modal__close .s-woocommerce-booking .woocommerce a.button,.c-modal--nav .c-modal__close .s-woocommerce-booking .woocommerce button.button,.c-modal--nav .c-modal__close .s-woocommerce-booking .woocommerce input.button,.c-modal--nav .c-modal__close button:not([class*=wcc-]),.c-modal--search .c-modal__close .c-button,.c-modal--search .c-modal__close .s-ninja-forms .submit-container input,.c-modal--search .c-modal__close .s-woocommerce-booking .woocommerce #respond input#submit,.c-modal--search .c-modal__close .s-woocommerce-booking .woocommerce a.button,.c-modal--search .c-modal__close .s-woocommerce-booking .woocommerce button.button,.c-modal--search .c-modal__close .s-woocommerce-booking .woocommerce input.button,.c-modal--search .c-modal__close button:not([class*=wcc-]),.s-ninja-forms .submit-container .c-modal--nav .c-modal__close input,.s-ninja-forms .submit-container .c-modal--search .c-modal__close input,.s-woocommerce-booking .woocommerce #respond .c-modal--nav .c-modal__close input#submit,.s-woocommerce-booking .woocommerce #respond .c-modal--search .c-modal__close input#submit,.s-woocommerce-booking .woocommerce .c-modal--nav .c-modal__close a.button,.s-woocommerce-booking .woocommerce .c-modal--nav .c-modal__close button.button,.s-woocommerce-booking .woocommerce .c-modal--nav .c-modal__close input.button,.s-woocommerce-booking .woocommerce .c-modal--search .c-modal__close a.button,.s-woocommerce-booking .woocommerce .c-modal--search .c-modal__close button.button,.s-woocommerce-booking .woocommerce .c-modal--search .c-modal__close input.button{color:#fff;font-size:1.375rem;background-color:transparent}@media screen and (max-width:39.99875em){.c-offset-content-pod__actions .c-button:not(:last-child),.c-offset-content-pod__actions .s-ninja-forms .submit-container input:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce a.button:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce button.button:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce input.button:not(:last-child),.c-offset-content-pod__actions button:not([class*=wcc-]):not(:last-child),.c-page-banner__ctas .c-button:not(:last-child) .c-button,.c-page-banner__ctas .c-button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce a.button,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce button.button,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce input.button,.c-page-banner__ctas .c-button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .c-button,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .s-woocommerce-booking .woocommerce a.button,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .s-woocommerce-booking .woocommerce button.button,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond a.button:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond button.button:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) input.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input.button:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) #respond input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) input.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) #respond input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) input.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) #respond input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) input.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .c-button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce a.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce button.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce input.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) button:not([class*=wcc-]),.c-product--booking .c-page-banner .c-button:not(:last-child),.c-product--booking .c-page-banner .s-ninja-forms .submit-container input:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce a.button:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce button.button:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce input.button:not(:last-child),.c-product--booking .c-page-banner button:not([class*=wcc-]):not(:last-child),.calibration__training-cta .c-button:not(:last-child),.calibration__training-cta .s-ninja-forms .submit-container input:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce a.button:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce button.button:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce input.button:not(:last-child),.calibration__training-cta button:not([class*=wcc-]):not(:last-child),.equipment-hire__ctas .c-button:not(:last-child),.equipment-hire__ctas .s-ninja-forms .submit-container input:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child),.equipment-hire__ctas button:not([class*=wcc-]):not(:last-child),.s-ninja-forms .submit-container .c-offset-content-pod__actions input:not(:last-child),.s-ninja-forms .submit-container .c-page-banner__ctas .c-button:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .c-button,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .s-woocommerce-booking .woocommerce a.button,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .s-woocommerce-booking .woocommerce button.button,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) button:not([class*=wcc-]),.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) input,.s-ninja-forms .submit-container .c-product--booking .c-page-banner input:not(:last-child),.s-ninja-forms .submit-container .calibration__training-cta input:not(:last-child),.s-ninja-forms .submit-container .equipment-hire__ctas input:not(:last-child),.s-ninja-forms .submit-container .s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) input,.s-ninja-forms .submit-container .s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) input,.s-ninja-forms .submit-container .s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) input,.s-woocommerce-booking .woocommerce #respond .c-offset-content-pod__actions input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas .c-button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas a.button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas button.button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) a.button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) button.button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) input.button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input.button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-product--booking .c-page-banner input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .calibration__training-cta input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .equipment-hire__ctas input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce .c-offset-content-pod__actions a.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-offset-content-pod__actions button.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-offset-content-pod__actions input.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-page-banner__ctas .c-button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .c-button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .c-button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) #respond input#submit,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) #respond input#submit,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) #respond input#submit,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-product--booking .c-page-banner a.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-product--booking .c-page-banner button.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-product--booking .c-page-banner input.button:not(:last-child),.s-woocommerce-booking .woocommerce .calibration__training-cta a.button:not(:last-child),.s-woocommerce-booking .woocommerce .calibration__training-cta button.button:not(:last-child),.s-woocommerce-booking .woocommerce .calibration__training-cta input.button:not(:last-child),.s-woocommerce-booking .woocommerce .equipment-hire__ctas a.button:not(:last-child),.s-woocommerce-booking .woocommerce .equipment-hire__ctas button.button:not(:last-child),.s-woocommerce-booking .woocommerce .equipment-hire__ctas input.button:not(:last-child),.s-woocommerce-booking .woocommerce .s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) button.button{margin-bottom:1rem}}@media print,screen and (min-width:40em){.c-offset-content-pod__actions .c-button:not(:last-child),.c-offset-content-pod__actions .s-ninja-forms .submit-container input:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce a.button:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce button.button:not(:last-child),.c-offset-content-pod__actions .s-woocommerce-booking .woocommerce input.button:not(:last-child),.c-offset-content-pod__actions button:not([class*=wcc-]):not(:last-child),.c-page-banner__ctas .c-button:not(:last-child) .c-button,.c-page-banner__ctas .c-button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce a.button,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce button.button,.c-page-banner__ctas .c-button:not(:last-child) .s-woocommerce-booking .woocommerce input.button,.c-page-banner__ctas .c-button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .c-button,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .s-woocommerce-booking .woocommerce a.button,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) .s-woocommerce-booking .woocommerce button.button,.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond a.button:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond button.button:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) input.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input.button:not(:last-child) input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) #respond input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) input.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) #respond input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) input.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) #respond input#submit,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) .c-button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) a.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) button.button,.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) button:not([class*=wcc-]),.c-page-banner__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child) input.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .c-button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-ninja-forms .submit-container input,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce a.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce button.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) .s-woocommerce-booking .woocommerce input.button,.c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) button:not([class*=wcc-]),.c-product--booking .c-page-banner .c-button:not(:last-child),.c-product--booking .c-page-banner .s-ninja-forms .submit-container input:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce a.button:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce button.button:not(:last-child),.c-product--booking .c-page-banner .s-woocommerce-booking .woocommerce input.button:not(:last-child),.c-product--booking .c-page-banner button:not([class*=wcc-]):not(:last-child),.calibration__training-cta .c-button:not(:last-child),.calibration__training-cta .s-ninja-forms .submit-container input:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce a.button:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce button.button:not(:last-child),.calibration__training-cta .s-woocommerce-booking .woocommerce input.button:not(:last-child),.calibration__training-cta button:not([class*=wcc-]):not(:last-child),.equipment-hire__ctas .c-button:not(:last-child),.equipment-hire__ctas .s-ninja-forms .submit-container input:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child),.equipment-hire__ctas .s-woocommerce-booking .woocommerce input.button:not(:last-child),.equipment-hire__ctas button:not([class*=wcc-]):not(:last-child),.s-ninja-forms .submit-container .c-offset-content-pod__actions input:not(:last-child),.s-ninja-forms .submit-container .c-page-banner__ctas .c-button:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas .s-woocommerce-booking .woocommerce a.button:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas .s-woocommerce-booking .woocommerce button.button:not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) input,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .c-button,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .s-woocommerce-booking .woocommerce #respond input#submit,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .s-woocommerce-booking .woocommerce a.button,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) .s-woocommerce-booking .woocommerce button.button,.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) button:not([class*=wcc-]),.s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) input,.s-ninja-forms .submit-container .c-product--booking .c-page-banner input:not(:last-child),.s-ninja-forms .submit-container .calibration__training-cta input:not(:last-child),.s-ninja-forms .submit-container .equipment-hire__ctas input:not(:last-child),.s-ninja-forms .submit-container .s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) input,.s-ninja-forms .submit-container .s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) input,.s-ninja-forms .submit-container .s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) input,.s-woocommerce-booking .woocommerce #respond .c-offset-content-pod__actions input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas .c-button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas a.button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas button.button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) a.button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) button.button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input#submit:not(:last-child) input.button,.s-woocommerce-booking .woocommerce #respond .c-page-banner__ctas input.button:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce #respond .c-product--booking .c-page-banner input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .calibration__training-cta input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .equipment-hire__ctas input#submit:not(:last-child),.s-woocommerce-booking .woocommerce #respond .s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) input#submit,.s-woocommerce-booking .woocommerce .c-offset-content-pod__actions a.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-offset-content-pod__actions button.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-offset-content-pod__actions input.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-page-banner__ctas .c-button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .c-button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .c-button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas .s-ninja-forms .submit-container input:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) #respond input#submit,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce .c-page-banner__ctas a.button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) #respond input#submit,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce .c-page-banner__ctas button.button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas button:not([class*=wcc-]):not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) #respond input#submit,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) .c-button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) .s-ninja-forms .submit-container input,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) button.button,.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) button:not([class*=wcc-]),.s-woocommerce-booking .woocommerce .c-page-banner__ctas input.button:not(:last-child) input.button,.s-woocommerce-booking .woocommerce .c-product--booking .c-page-banner a.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-product--booking .c-page-banner button.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-product--booking .c-page-banner input.button:not(:last-child),.s-woocommerce-booking .woocommerce .calibration__training-cta a.button:not(:last-child),.s-woocommerce-booking .woocommerce .calibration__training-cta button.button:not(:last-child),.s-woocommerce-booking .woocommerce .calibration__training-cta input.button:not(:last-child),.s-woocommerce-booking .woocommerce .equipment-hire__ctas a.button:not(:last-child),.s-woocommerce-booking .woocommerce .equipment-hire__ctas button.button:not(:last-child),.s-woocommerce-booking .woocommerce .equipment-hire__ctas input.button:not(:last-child),.s-woocommerce-booking .woocommerce .s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) a.button,.s-woocommerce-booking .woocommerce .s-ninja-forms .submit-container .c-page-banner__ctas input:not(:last-child) button.button{margin-right:2rem}}.c-product__course-booker .c-button:not(:last-child),.c-product__course-booker .s-ninja-forms .submit-container input:not(:last-child),.c-product__course-booker .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.c-product__course-booker .s-woocommerce-booking .woocommerce a.button:not(:last-child),.c-product__course-booker .s-woocommerce-booking .woocommerce button.button:not(:last-child),.c-product__course-booker .s-woocommerce-booking .woocommerce input.button:not(:last-child),.c-product__course-booker button:not([class*=wcc-]):not(:last-child),.s-ninja-forms .submit-container .c-product__course-booker input:not(:last-child),.s-woocommerce-booking .woocommerce #respond .c-product__course-booker input#submit:not(:last-child),.s-woocommerce-booking .woocommerce .c-product__course-booker a.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-product__course-booker button.button:not(:last-child),.s-woocommerce-booking .woocommerce .c-product__course-booker input.button:not(:last-child){margin-bottom:.5rem}@media print,screen and (min-width:40em){.c-list-box .c-button,.c-list-box .s-ninja-forms .submit-container input,.c-list-box .s-woocommerce-booking .woocommerce #respond input#submit,.c-list-box .s-woocommerce-booking .woocommerce a.button,.c-list-box .s-woocommerce-booking .woocommerce button.button,.c-list-box .s-woocommerce-booking .woocommerce input.button,.c-list-box button:not([class*=wcc-]),.s-ninja-forms .submit-container .c-list-box input,.s-woocommerce-booking .woocommerce #respond .c-list-box input#submit,.s-woocommerce-booking .woocommerce .c-list-box a.button,.s-woocommerce-booking .woocommerce .c-list-box button.button,.s-woocommerce-booking .woocommerce .c-list-box input.button{margin-top:auto}}.page-style-guide .c-button:not(:last-child),.page-style-guide .s-ninja-forms .submit-container input:not(:last-child),.page-style-guide .s-woocommerce-booking .woocommerce #respond input#submit:not(:last-child),.page-style-guide .s-woocommerce-booking .woocommerce a.button:not(:last-child),.page-style-guide .s-woocommerce-booking .woocommerce button.button:not(:last-child),.page-style-guide .s-woocommerce-booking .woocommerce input.button:not(:last-child),.page-style-guide button:not([class*=wcc-]):not(:last-child),.s-ninja-forms .submit-container .page-style-guide input:not(:last-child),.s-woocommerce-booking .woocommerce #respond .page-style-guide input#submit:not(:last-child),.s-woocommerce-booking .woocommerce .page-style-guide a.button:not(:last-child),.s-woocommerce-booking .woocommerce .page-style-guide button.button:not(:last-child),.s-woocommerce-booking .woocommerce .page-style-guide input.button:not(:last-child){margin-bottom:1rem}.pika-single .c-button:after,.pika-single .s-ninja-forms .submit-container input:after,.pika-single .s-woocommerce-booking .woocommerce #respond input#submit:after,.pika-single .s-woocommerce-booking .woocommerce a.button:after,.pika-single .s-woocommerce-booking .woocommerce button.button:after,.pika-single .s-woocommerce-booking .woocommerce input.button:after,.pika-single button:not([class*=wcc-]):after,.s-ninja-forms .submit-container .pika-single input:after,.s-woocommerce-booking .woocommerce #respond .pika-single input#submit:after,.s-woocommerce-booking .woocommerce .pika-single a.button:after,.s-woocommerce-booking .woocommerce .pika-single button.button:after,.s-woocommerce-booking .woocommerce .pika-single input.button:after{content:none}.c-button--alpha,.s-ninja-forms .submit-container input{background-color:#ee6534}.c-button--alpha:after,.s-ninja-forms .submit-container input:after{background-color:#c64618}.c-button--beta{padding:.5rem 1rem;color:#202529;text-align:center;text-transform:none;background-color:#f2f2f2;font-size:1.125rem;font-size:calc(1.125rem + .25 * ((100vw - 20rem) / 55))}@media screen and (min-width:75rem){.c-button--beta{font-size:1.375rem}}@media screen and (max-width:20rem){.c-button--beta{font-size:1.125rem}}.c-button--beta:after{display:none}.c-button--beta:focus,.c-button--beta:hover{color:#202529}.c-button--block{display:block;width:100%}label{margin-bottom:1rem;font-weight:400}.s-woocommerce-checkout label{margin-bottom:0}input,select,textarea{display:block;width:100%;-webkit-transition:border-color .2s ease-in-out;transition:border-color .2s ease-in-out}input,textarea{padding:.5rem;border:2px solid #d3d3d3;border-radius:0}input:focus,textarea:focus{border-color:#ee6534;outline:none}input:hover,textarea:hover{border-color:#ee6534}::-webkit-input-placeholder{color:#202529}::-ms-input-placeholder{color:#202529}::placeholder{color:#202529}input{line-height:1rem}.c-modal--search input{margin-bottom:0;padding-left:0;border:none;border-bottom:2px solid #fff;color:#fff;background-color:transparent}@media print,screen and (min-width:40em){.c-modal--search input{font-size:2rem;font-size:calc(2rem + .8125 * ((100vw - 20rem) / 55))}@media screen and (min-width:75rem){.c-modal--search input{font-size:2.8125rem}}@media screen and (max-width:20rem){.c-modal--search input{font-size:2rem}}}.c-modal--search input::-webkit-input-placeholder{color:#fff}.c-modal--search input::-ms-input-placeholder{color:#fff}.c-modal--search input::placeholder{color:#fff}textarea{height:9.375rem}input[type=checkbox],input[type=checkbox]+label{display:inline-block;vertical-align:middle}input[type=checkbox]{width:auto;margin-right:.5rem}@media screen and (max-width:39.99875em){input[type=checkbox]+label{width:80%}}.s-cms-content ul li{text-indent:.5rem;list-style-image:url(../img/icon-bullet.png);list-style-image:url(../img/icon-bullet.svg)}.c-accordion{border-bottom:1px solid #202529}.c-accordion:not(:last-child){margin-bottom:1rem}.c-accordion.c-faq{border:none}.c-accordion__title{margin:0 0 1rem;padding:0}.c-accordion__title:focus,.c-accordion__title:hover{color:#202529;text-decoration:none}.c-accordion__title:before{content:"d";margin-top:0;right:0;font-family:pat-training-services;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.is-active .c-accordion__title:before{content:"c"}.c-accordion__content{padding:0}.s-woocommerce-booking .wc-pao-addons-container .c-addon,.wc-bookings-booking-form .c-addon{padding:1rem;text-align:center;background-color:#f2f2f2}@media screen and (max-width:39.99875em){.s-woocommerce-booking .wc-pao-addons-container .c-addon,.wc-bookings-booking-form .c-addon{margin-bottom:1rem}}@media print,screen and (min-width:40em){.s-woocommerce-booking .wc-pao-addons-container .c-addon,.wc-bookings-booking-form .c-addon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.s-woocommerce-booking .wc-pao-addons-container .c-addon:first-child,.wc-bookings-booking-form .c-addon:first-child{width:100%!important;border-top:1px solid #202529;border-bottom:1px solid #202529;background-color:#fff}@media print,screen and (min-width:64em){.s-woocommerce-booking .wc-pao-addons-container .c-addon:first-child .c-addon__meta-container,.wc-bookings-booking-form .c-addon:first-child .c-addon__meta-container{margin:0 auto 1rem}}@media print,screen and (min-width:64em){.s-woocommerce-booking .wc-pao-addons-container .c-addon:first-child .c-addon__desc-container,.s-woocommerce-booking .wc-pao-addons-container .c-addon:first-child .c-addon__media,.wc-bookings-booking-form .c-addon:first-child .c-addon__desc-container,.wc-bookings-booking-form .c-addon:first-child .c-addon__media{display:inline-block;vertical-align:middle}}@media print,screen and (min-width:64em){.s-woocommerce-booking .wc-pao-addons-container .c-addon:first-child .c-addon__media,.wc-bookings-booking-form .c-addon:first-child .c-addon__media{max-width:40%;margin-right:2rem;margin-bottom:0}}@media print,screen and (min-width:64em){.s-woocommerce-booking .wc-pao-addons-container .c-addon:first-child .c-addon__desc-container,.wc-bookings-booking-form .c-addon:first-child .c-addon__desc-container{max-width:50%}}.c-addon__meta-container{min-height:.0625rem}.c-addon__media,.c-addon__name{margin-bottom:1rem}.c-addon__media{margin-right:auto;margin-left:auto}@media print,screen and (min-width:40em){.c-addon__desc{margin-bottom:auto}}.c-addon__desc p{font-size:.875rem!important;font-style:normal!important}.c-addon__quantity-selector{margin-top:auto!important}.c-banner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;background-position:50%;background-repeat:no-repeat;background-size:cover}@media print,screen and (min-width:40em){.c-banner{min-height:29.375rem}}.c-banner:after{content:"";display:block;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;background-color:hsla(0,0%,100%,.7)}.c-banner__content-container{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;z-index:2;text-align:center}@media screen and (max-width:39.99875em){.c-banner__content-container{padding:2rem}}@media print,screen and (min-width:40em){.c-banner__content-container{padding:4rem}}.c-banner__title{margin-bottom:1rem}.c-banner__content{font-size:1.125rem;font-size:calc(1.125rem + .25 * ((100vw - 20rem) / 55))}@media screen and (min-width:75rem){.c-banner__content{font-size:1.375rem}}@media screen and (max-width:20rem){.c-banner__content{font-size:1.125rem}}@media print,screen and (min-width:40em){.c-banner__content{max-width:65%;margin:0 auto 1rem}}.bundles .c-bundle:first-child{margin-top:2rem}.c-bundle:not(:last-child){margin-bottom:2rem}.c-callout{text-align:center;background-color:#0f547c}@media screen and (max-width:39.99875em){.c-callout{padding:1rem 0}}@media print,screen and (min-width:40em){.c-callout{padding:2rem 0}}.equipment-hire .c-callout{margin-top:2rem}.c-callout__content,.c-callout__title{margin-bottom:0;color:#fff}.c-callout__content{margin-top:1rem}.c-centered-text{text-align:center}.c-centered-text__title{margin-bottom:2rem}.c-centered-text__cta{margin-top:2rem}@media screen and (max-width:39.99875em){.c-content-pod:not(:last-child){margin-bottom:2rem}}@media print,screen and (min-width:40em){.c-content-pod:not(:last-child){margin-bottom:4rem}}@media print,screen and (min-width:40em){.c-content-pod:nth-child(2n) .cell:first-child{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media print,screen and (min-width:40em){.c-content-pod:nth-child(2n) .cell:last-child{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}}@media print,screen and (min-width:40em){.c-content-pod .cell{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}.c-product--booking .c-content-pod .cell{display:block}.c-content-pod__media{width:100%}@media screen and (max-width:39.99875em){.c-content-pod__media{margin-bottom:1rem}}.c-content-pod__media img{width:100%;height:auto}.c-content-pod__title,.c-product__course-summary .c-content-pod__title{margin-bottom:1rem}.c-customer-list{text-align:center}.c-customer-list__title{margin-bottom:2rem}.faqs .c-faq:nth-child(n+4),.o-search__sections.is-searched .c-faq{display:none}.o-search__sections.is-searched .c-faq.is-search-result{display:block}.c-highlight:not(:last-child){margin-bottom:1rem}.c-highlight__name{margin:0;color:#4d94cb;line-height:1.75}.c-hire-product:not(:last-child){margin-bottom:2rem}.c-hire-product__price{display:inline-block;color:#4d94cb;vertical-align:middle}@media screen and (max-width:39.99875em){.c-hire-product__price{margin-bottom:1rem}}@media print,screen and (min-width:40em){.c-hire-product__price{margin-right:1rem;margin-bottom:0}}.c-gallery__thumbs{margin-top:1rem}.c-icon{line-height:1}.c-icon:before{vertical-align:middle}.o-header__mobile-nav-container .c-icon{font-size:1.5625rem}.c-icon-hero{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;text-align:center}.c-icon-hero__text{margin-top:1rem}.c-list-box{text-align:center;background-color:#f2f2f2}@media screen and (max-width:39.99875em){.c-list-box{padding:.5rem}}@media print,screen and (min-width:40em){.c-list-box{height:100%;padding:2rem}}.c-list-box>a{display:block}@media print,screen and (min-width:40em){.post-type-archive-product .c-list-box a,.style-guide .c-list-box a{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}.c-list-box__image,.c-list-box__title{margin-bottom:1rem}@media print,screen and (min-width:40em){.c-list-box__image{margin-top:-4rem}}.c-list-box__description{max-width:100%;margin-bottom:2rem;color:#202529}.c-location--view .c-location__directions{margin-top:2rem}.c-location__directions-title{margin-bottom:2rem;text-align:center}.c-location--view .c-map{margin-top:2rem}.c-message-banner{display:block;width:100%;margin-bottom:1rem;padding:.5rem 1rem;color:#fff;font-family:pt-sans,droid-sans,Helvetica,Roboto,Arial,sans-serif;line-height:1.75;text-align:center;background-color:#ee6534}.c-message-banner.t-light_blue{background-color:#4d94cb}.c-message-banner.t-blue{background-color:#0f547c}.c-message-banner p{margin-bottom:.625rem}.c-message-banner p:last-child{margin:0}.c-minicart{text-decoration:none}@media print,screen and (min-width:40em){.c-minicart{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}.c-minicart:hover{text-decoration:none}.c-minicart__col{text-align:left}@media print,screen and (min-width:40em){.c-minicart__col{display:inline-block;vertical-align:middle}}@media print,screen and (min-width:40em){.c-minicart__col:last-child{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}.c-minicart__quant{width:2.5rem;height:2.1875rem;position:relative;text-align:center;background-repeat:no-repeat;background-size:cover}@media screen and (max-width:39.99875em){.c-minicart__quant{background-image:url(../img/icon-basket-mobile.png);background-image:url(../img/icon-basket-mobile.svg)}}@media print,screen and (min-width:40em){.c-minicart__quant{margin-right:.625rem;background-image:url(../img/icon-basket.png);background-image:url(../img/icon-basket.svg)}}.c-minicart__quant-num{width:100%;position:absolute;top:50%;left:0;font-family:pt-sans,droid-sans,Helvetica,Roboto,Arial,sans-serif;font-weight:700;text-align:center;-webkit-transform:translateY(-20%);transform:translateY(-20%)}@media print,screen and (min-width:40em){.c-minicart__quant-num{color:#fff}}.c-minicart__total{color:#202529;font-family:pt-sans,droid-sans,Helvetica,Roboto,Arial,sans-serif;font-size:1.125rem;font-weight:700}.c-minicart__checkout-link{color:#4d94cb;font-size:.75rem;text-transform:uppercase}.c-modal--nav{text-align:center;background-color:#4d94cb;background-color:rgba(77,148,203,.95)}.c-modal--search{background-color:#202529;background-color:rgba(32,37,41,.95)}.c-modal--course,.c-modal--search{text-align:center}.c-modal__close{width:100%;margin-bottom:1rem;line-height:0;text-align:right}.c-nav ul{margin:0}.c-nav li{list-style:none}.o-footer__nav .c-nav a,.o-header__nav .c-nav a{color:#fff}.c-modal--nav .c-nav a{margin:0;color:#fff;text-transform:uppercase}.c-nav--inline li{display:inline-block;width:auto;vertical-align:top}.c-nav--inline li:not(:last-child){margin-right:1rem}@media print,screen and (min-width:40em){.faqs__nav .c-nav--inline li:not(:last-child):after{content:"|";display:inline-block;margin-left:1rem;vertical-align:middle}}.c-nav--stretch{width:100%}.c-nav--stretch ul{width:auto;margin:0;padding:0}@media screen and (max-width:39.99875em){.c-nav--stretch ul{display:block}}@media print,screen and (min-width:40em){.c-nav--stretch ul{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}}.c-nav--stretch li{text-align:center}@media screen and (max-width:39.99875em){.c-nav--stretch li{display:block}}@media print,screen and (min-width:40em){.c-nav--stretch li{display:list-item;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}}@media screen and (max-width:39.99875em){.c-nav--stretch li:not(:last-child){margin-bottom:.5rem}}.c-nav--stretch a{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}@media print,screen and (min-width:40em){.o-header__nav .c-nav--stretch{display:-webkit-box;display:-ms-flexbox;display:flex}}@media print,screen and (min-width:40em){.o-header__nav .c-nav--stretch>ul{width:100%}}.o-header__nav .c-nav--stretch li{text-align:left}@media print,screen and (min-width:40em){.o-header__nav .c-nav--stretch li{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}.o-header__nav .c-nav--stretch a{width:100%}.c-nav--vertical li,.c-nav--vertical li.is-open .c-nav__dropdown{display:block}.c-nav--vertical li:not(:last-child){margin-bottom:.5rem}.c-modal--nav .c-nav--vertical li:not(:last-child){margin-bottom:1rem}.c-nav__parent-link{display:block;width:100%}.c-nav__parent-link:after,.c-nav__parent-link:before{display:table;content:" ";-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.c-nav__parent-link:after{clear:both}@media print,screen and (min-width:40em){.c-nav__parent-link{text-align:center}}.c-nav__parent-link.is-home a i{font-size:1.375rem}@media screen and (max-width:39.99875em){.c-nav__parent-link>a{display:inline-block;vertical-align:middle}}@media print,screen and (min-width:40em){.c-nav__parent-link>a{padding:.5rem!important;-webkit-transition:background-color .2s ease-in-out,color .2s ease-in-out;transition:background-color .2s ease-in-out,color .2s ease-in-out}}@media print,screen and (min-width:40em){.c-nav__parent-link>a:focus,.c-nav__parent-link>a:hover,.is-open .c-nav__parent-link>a{color:#fff;background-color:#4d94cb}}.c-nav__dropdown{display:none;text-transform:none}@media screen and (max-width:39.99875em){.c-nav__dropdown{margin:.5rem auto 1rem}}@media print,screen and (min-width:40em){.c-nav__dropdown{width:100%;padding:1rem;position:absolute;top:100%;right:0;left:0;z-index:4;text-align:left;background-color:#4d94cb;background-color:rgba(77,148,203,.97);padding-right:.625rem;padding-left:.625rem;max-width:75rem;margin-left:auto;margin-right:auto}}@media print,screen and (min-width:40em) and (min-width:40em){.c-nav__dropdown{padding-right:.9375rem;padding-left:.9375rem}}@media print,screen and (min-width:40em){.c-nav__dropdown-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}}.c-nav__dropdown-content:after,.c-nav__dropdown-content:before{display:table;content:" ";-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.c-nav__dropdown-content:after{clear:both}@media print,screen and (min-width:40em){.c-nav__dropdown-content{width:calc(100% - 1.875rem);margin-right:.9375rem;margin-left:.9375rem}}.c-nav__dropdown-links:after,.c-nav__dropdown-links:before{display:table;content:" ";-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.c-nav__dropdown-links:after{clear:both}@media print,screen and (min-width:40em){.c-nav__dropdown-links{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}}.c-nav__dropdown-links:after{content:"";width:25%;max-width:100%;margin:.5rem auto 0;border-bottom:1px solid #fff}@media print,screen and (min-width:40em){.c-nav__dropdown-links:after{display:none!important}}.c-nav__child-link-container{display:block}.c-nav__child-link-container:after,.c-nav__child-link-container:before{display:table;content:" ";-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.c-nav__child-link-container:after{clear:both}@media print,screen and (min-width:40em){.c-nav__child-link-container{margin-bottom:2rem;text-align:left;width:calc(33% - 1.875rem);margin-right:.9375rem;margin-left:.9375rem}}.c-nav__child-link-description{margin-bottom:.5rem;font-weight:400;text-transform:none}@media screen and (max-width:39.99875em){.c-nav__child-link-description{display:none}}.c-nav__toggler{display:inline-block;margin-left:.5rem;color:#fff;font-size:1.5rem;vertical-align:middle}@media print,screen and (min-width:40em){.c-nav__toggler{display:none}}@media print,screen and (min-width:40em){.bundles .c-offset-content-pod:nth-child(2n)>.grid-x>.cell:first-child{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}}@media print,screen and (min-width:40em){.bundles .c-offset-content-pod:nth-child(2n)>.grid-x>.cell:last-child{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media print,screen and (min-width:40em){.bundles .c-offset-content-pod:nth-child(2n) .c-offset-content-pod__media{margin-right:auto;margin-left:-4rem}}.search-results .c-offset-content-pod:not(:last-child){margin-bottom:1rem}@media screen and (max-width:39.99875em){.c-offset-content-pod__media{margin-bottom:.5rem}}@media print,screen and (min-width:40em){.c-offset-content-pod__media{margin-top:2rem;margin-right:-4rem;position:relative;z-index:2}}.c-offset-content-pod__title{margin-bottom:1rem}.c-hire-product .c-offset-content-pod__title{margin-bottom:2rem}.search-results .c-offset-content-pod__title{margin-bottom:1rem}.c-offset-content-pod__content{background-color:#f2f2f2}@media screen and (max-width:39.99875em){.c-offset-content-pod__content{padding:1rem}}@media print,screen and (min-width:40em){.c-offset-content-pod__content{padding:2rem 4rem}}.search-results .c-offset-content-pod__content{padding:1rem 2rem}.c-offset-content-pod__section{margin-bottom:1rem}.c-offset-content-pod__section-title{margin-bottom:.5rem;color:#4d94cb}.c-offset-content-pod__actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media screen and (max-width:39.99875em){.c-offset-content-pod__actions{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.search-results__pages .c-offset-content-pod__actions{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media print,screen and (min-width:40em){.c-offset-content-pod__actions{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.c-page-banner{background-color:#f2f2f2}@media screen and (max-width:39.99875em){.c-page-banner{padding:1rem .5rem;text-align:center}}@media print,screen and (min-width:40em){.c-page-banner{padding:1rem}}.c-product--view .c-page-banner{margin-bottom:2rem}@media screen and (max-width:39.99875em){.c-product--view .c-page-banner{text-align:left}}@media screen and (max-width:39.99875em){.c-page-banner__media,.c-page-banner__title{margin-bottom:1rem}}@media print,screen and (min-width:40em){.c-page-banner__title{margin-bottom:2rem}}.c-page-banner__ctas{margin-top:2rem}@media print,screen and (min-width:40em){.c-page-banner__ctas{text-align:right}}.c-page-title{text-align:center}.c-modal .c-page-title,.c-page-title{margin-bottom:2rem}.c-page-title__intro{margin-bottom:2rem;text-align:center}#on-site-modal .c-page-title__intro,.c-modal--course .c-page-title__intro{margin-bottom:2rem}#on-site-modal .c-page-title__intro{color:#4d94cb;font-family:droid-sans,Helvetica,Roboto,Arial,sans-serif;font-weight:400}.c-modal--course .c-page-title__intro span{color:#4d94cb}.c-price-box{display:-webkit-box;display:-ms-flexbox;display:flex;padding:2rem 1rem;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;background-color:#0f547c}@media screen and (max-width:39.99875em){.o-price-strip .c-price-box{margin-bottom:1rem}}@media print,screen and (min-width:40em){.o-price-strip .c-price-box{margin-top:-5rem}}.c-price-box__price,.c-price-box__title{color:#fff}.c-price-box__price{margin-bottom:0}.c-product--listed{display:block;padding:1rem;text-align:center;background-color:#f2f2f2}.c-product--listed.sale{position:relative}.c-modal--course .c-product--listed,.l-product-listing .c-product--listed,.search-results .c-product--listed{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.c-product--listed .c-product__image{min-height:1px;margin-bottom:2rem}.c-product--view .c-product__image{position:relative}.c-product--listed .c-product__title{font-family:droid-sans,Helvetica,Roboto,Arial,sans-serif;font-size:1rem;font-weight:400}.c-product--standard .c-product__title{margin-bottom:0}@media screen and (max-width:39.99875em){.c-product--standard .c-product__title{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}}.c-product--booking .c-product__title{margin-bottom:2rem}.c-product--view .c-product__price-container{margin-top:2rem}@media screen and (max-width:39.99875em){.c-product--view .c-product__price-container{text-align:center}}.c-product--view .c-product__price-meta{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:1rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media screen and (max-width:39.99875em){.c-product--view .c-product__price-meta{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media print,screen and (min-width:40em){.c-product--view .c-product__price-meta{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.c-product__course-booker .c-product__price-meta{display:block;margin-bottom:1rem}.c-modal--course .c-product__price-meta{display:none}.c-product--view .c-product__add-to-cart{margin-bottom:0!important}.c-product--view .c-product__add-to-cart .quantity input{margin-bottom:0}.c-modal--course .c-product--listed .c-product__price{display:none!important}.c-product--listed .c-product__price del{margin-right:.5rem;font-family:droid-sans,Helvetica,Roboto,Arial,sans-serif;font-size:1rem;font-weight:400}.c-bundle .c-product__price,.c-modal--course .c-product__price,.c-product--view .c-product__price{margin-bottom:0;color:#4d94cb}@media print,screen and (min-width:40em){.c-bundle .c-product__price{margin-right:1rem}}.c-product--standard .c-product__price{display:inline-block;vertical-align:middle}@media print,screen and (min-width:40em){.c-product--standard .c-product__price{margin-right:2rem}}.c-product--standard .c-product__price-meta .c-product__price del{display:none}.c-product--standard .c-product__price-meta .c-product__price ins{text-decoration:none}.c-product__price-vat{padding-left:.5rem;color:#202529;font-family:droid-sans,Helvetica,Roboto,Arial,sans-serif;font-weight:400}.c-product--listed .c-product__price-vat{font-size:.75rem}.c-modal--course .c-product__price-vat,.c-product--view .c-product__price-vat{font-size:1rem}.c-product__price-suffix{display:block;margin-bottom:0;color:#4d94cb;font-weight:400}.c-product--view .c-product__videos{margin-bottom:1rem}@media screen and (max-width:39.99875em){.c-product--view .c-product__content-container{margin-top:2rem;margin-bottom:1rem}}.c-product--booking .c-product__content-container{margin-top:2rem}@media screen and (max-width:39.99875em){.c-product--view .c-product__hire{text-align:center}}@media screen and (max-width:39.99875em){.c-product__delivery-item{display:inline-block;vertical-align:middle}}@media print,screen and (min-width:40em){.c-product__delivery-item{display:block}}@media screen and (max-width:39.99875em){.c-product__delivery-item:not(:last-child){margin-right:1rem}}.c-product__delivery-item:before{content:"";display:inline-block;margin-right:.5rem;background-repeat:no-repeat;vertical-align:middle}.c-product__delivery-item--in-stock:before{width:.875rem;height:.6875rem;background-image:url(../img/icon-check.png);background-image:url(../img/icon-check.svg)}.c-product__delivery-item--free-delivery:before{width:1.1875rem;height:.75rem;background-image:url(../img/icon-delivery.png);background-image:url(../img/icon-delivery.svg)}.c-product__onsite-courses{color:#4d94cb}.c-modal--course .c-product__meta,.l-product-listing .c-product__meta,.search-results .c-product__meta{margin-top:auto}.c-product__free-gift,.c-product__free-gift-image,.c-product__free-gift-value{margin-bottom:1rem}.c-product__free-gift{border-bottom:5px solid #4d94cb;text-align:center}.c-product__free-gift-title{color:#4d94cb}.c-product__free-gift-value{font-weight:700}.c-product__manufacturer-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:2rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media screen and (max-width:39.99875em){.c-product__manufacturer-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media print,screen and (min-width:40em){.c-product__manufacturer-container{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}}.c-product__manufacturer{text-align:center}@media screen and (max-width:39.99875em){.c-product__manufacturer{margin-bottom:1rem;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media print,screen and (min-width:40em){.c-product__manufacturer{max-width:20%;margin-left:1rem;font-size:.875rem}}.c-product__manufacturer img{margin-bottom:.5rem}.c-product__manufacturer span{display:block}@media screen and (max-width:63.99875em){.c-quantity-selector{width:100%;margin:.5rem auto}}@media print,screen and (min-width:64em){.c-quantity-selector{display:-webkit-box;display:-ms-flexbox;display:flex}}@media print,screen and (min-width:64em){.c-modal--course .c-quantity-selector{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media screen and (min-width:40em) and (max-width:63.99875em){.c-quantity__element{display:inline-block;vertical-align:middle}}.c-quantity__element:first-child{max-width:40%}@media screen and (max-width:39.99875em){.c-quantity__element:first-child{margin:0 auto 1rem}}@media print,screen and (min-width:40em){.c-quantity__element:first-child{margin-right:1rem}}@media print,screen and (min-width:64em){.c-quantity__element:first-child{margin-left:auto}}.c-modal--course .c-quantity__element:first-child{max-width:100%}@media print,screen and (min-width:64em){.c-modal--course .c-quantity__element:first-child{margin:0 auto;-ms-flex-item-align:center;align-self:center}}.c-quantity-selector__actions{display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.c-quantity-selector__input,.c-quantity-selector__toggler{text-align:center}.c-quantity-selector__toggler{display:-webkit-box;display:-ms-flexbox;display:flex;width:2.5rem;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#fff;background-color:#d3d3d3;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.c-quantity-selector__toggler.is-disabled{opacity:.7;cursor:not-allowed}.c-quantity-selector__input{width:33%}.c-quantity-selector__input input{height:100%!important;margin-bottom:0;border:none!important;color:#202529;text-align:center}@media print,screen and (min-width:40em){.table-scroll .c-table{width:100%}}.c-table tbody td,.c-table thead th{border-right:1.5px solid #0f547c;text-align:center}.c-bundle .c-table tbody td,.c-bundle .c-table thead th{padding:.5rem;border:none;color:#4d94cb;font-weight:700}.c-bundle .c-table tbody{border:none;background-color:transparent}.c-table tbody tr.is-unavailable td{color:#b3b3b3!important}.c-bundle .c-table tbody tr{border:none;background-color:transparent}.c-table tbody tr:nth-last-child(2){border-top:1px solid #4d94cb}.c-bundle .c-table tbody tr:last-child td{color:#ee6534!important}.c-table tbody tr td:first-child{font-weight:700;background-color:#f2f2f2}.c-table tbody tr td:not(:first-child){color:#0f547c;text-align:center}.c-bundle .c-table tbody tr td:not(:first-child){color:#4d94cb;text-align:left}.c-table--alt tbody td{color:#0f547c!important;background-color:#fff!important}.c-table--alt tbody td:first-child{font-weight:400!important}table{text-align:center}.o-testimonial-slider .c-testimonial{color:#fff}@media screen and (max-width:39.99875em){.o-testimonial-slider .c-testimonial{padding:0 2rem}}.c-testimonial__quote{margin:0 auto}@media print,screen and (min-width:40em){.c-testimonial__quote{max-width:75%}}.c-testimonial__author{margin-top:1rem;font-weight:700}.c-search{position:relative}.c-search__input{margin-bottom:0;padding-right:2rem!important}.c-search__button{margin:0;padding:.5rem;position:absolute;top:50%;right:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.c-search__button,.c-search__button:focus,.c-search__button:hover{background-color:transparent}.c-sidebar{padding:1rem;background-color:#f2f2f2}@media screen and (max-width:63.99875em){.shop__sidebar .c-sidebar{display:none;margin-top:1rem}}.c-sidebar__title{margin-bottom:2rem}.c-sticker{width:6.25rem;height:6.25rem;position:absolute;top:0;right:0;z-index:2;background-repeat:no-repeat;background-size:6.25rem}.c-sticker--sale{background-image:url(../img/sticker-sale.png);background-image:url(../img/sticker-sale.svg)}.c-sticker--free-gift{background-image:url(../img/sticker-free-gift.png);background-image:url(../img/sticker-free-gift.svg)}.c-video{max-width:100%;height:auto;padding-bottom:56.25%;overflow:hidden;position:relative}.c-video embed,.c-video iframe,.c-video object{width:100%;height:100%;position:absolute;top:0;left:0}.c-product--view .c-video:not(:last-child){margin-bottom:1rem}.o-content-box{background-color:#f2f2f2}@media screen and (max-width:63.99875em){.o-content-box{padding:2rem}}@media print,screen and (min-width:64em){.o-content-box{padding:3rem}}@media print,screen and (min-width:64em){.c-product--booking .o-content-box{height:100%}}.o-content-box--centered{text-align:center}.o-content-box__title{margin-bottom:1rem}.o-content-box__actions{margin-top:2rem}@media screen and (max-width:39.99875em){.o-content-box__actions{text-align:center}}@media print,screen and (min-width:40em){.o-content-box__actions{text-align:right}}.o-flag{display:table;width:100%}.c-location__contact .o-flag:not(:last-child),.contact-us__details .o-flag:not(:last-child){margin-bottom:1rem}.contact-us__details .o-flag{font-weight:400;font-famiy:"droid-sans",Helvetica,Roboto,Arial,sans-serif}.o-flag__content,.o-flag__media{display:table-cell;vertical-align:middle}.o-flag--top .o-flag__content,.o-flag--top .o-flag__media{vertical-align:top}.o-flag--bottom .o-flag__content,.o-flag--bottom .o-flag__media{vertical-align:bottom}.o-flag__media{padding-right:1rem}.o-flag__media>img{display:block;max-width:none}.o-flag--rev .o-flag__media{padding-right:0;padding-left:1rem}@media screen and (max-width:39.99875em){.c-location__contact .o-flag__media,.contact-us__details .o-flag__media,.o-footer__address .o-flag__media,.o-footer__contact-details .o-flag__media{display:none}}.o-flag__content{width:100%}@media screen and (max-width:39.99875em){.o-flexible-module:not(:last-child){margin-bottom:2rem}}@media print,screen and (min-width:40em){.o-flexible-module:not(:last-child){margin-bottom:4rem}}.o-footer{margin-top:2rem}.o-footer__main{padding:2rem 0;color:#fff;background-color:#0f547c}@media screen and (max-width:39.99875em){.o-footer__main{text-align:center}}@media screen and (max-width:39.99875em){.o-footer__main .cell:not(:last-child){margin-bottom:2rem}}.o-footer__contact-details{margin:0;color:#fff;font-weight:400;list-style:none}.o-footer__payment-title{margin-bottom:.5rem;font-weight:700}.o-footer__payment-po{margin-top:.5rem;font-size:.875rem}.o-footer__nav{margin-top:2rem}.o-footer__nav hr{width:27.8125rem;max-width:90%;margin:0 auto 2rem}.o-footer__copyright{padding:2rem 0;font-size:.875rem;text-align:center}.o-header{margin-bottom:1rem}body:has(.c-message-banner) .o-header{margin-bottom:0}.o-header__main{padding:.5rem 0}@media screen and (max-width:39.99875em){.o-header__desktop{display:none}}.o-header__mobile{margin-top:.5rem}@media print,screen and (min-width:40em){.o-header__mobile{display:none}}.o-header__mobile-nav-container{margin-top:.5rem;padding:1rem 0;color:#fff;background-color:#0f547c}@media screen and (max-width:39.99875em){.o-header__mobile-nav-container .cell:last-child,.o-header__mobile-nav-container .cell:nth-child(2n){text-align:center}}.o-header__mobile-contact{margin:0;color:#fff}.o-header__mobile-contact a,.o-header__mobile-contact a:focus,.o-header__mobile-contact a:hover{color:#fff}.o-header__contact{font-size:1.125rem}.o-header__contact-title{font-size:.75rem;text-transform:uppercase}.o-header__nav{background-color:#0f547c}@media print,screen and (min-width:40em){.o-header__nav{position:relative}}.o-header__logo{display:block}.o-icon-strip{text-align:center}@media screen and (max-width:39.99875em){.calibration__content-container .o-icon-strip{margin-top:2rem}}@media print,screen and (min-width:40em){.calibration__content-container .o-icon-strip{margin-top:4rem}}.o-icon-strip__title{margin-bottom:2rem}@media screen and (max-width:39.99875em){.o-icon-strip__icons .cell:not(:last-child){margin-bottom:2rem}}.o-price-strip{text-align:center;background-color:#f2f2f2}@media screen and (max-width:39.99875em){.o-price-strip{padding:2rem 1rem 1rem}}@media print,screen and (min-width:40em){.o-price-strip{padding:2rem}}@media print,screen and (min-width:40em){.calibration .o-price-strip,.l-flexible-modules .o-price-strip{margin-top:6rem}}@media print,screen and (min-width:40em){.style-guide .o-price-strip{margin-top:4rem}}@media screen and (max-width:39.99875em){.o-price-strip__price-boxes{margin-bottom:1rem}}@media print,screen and (min-width:40em){.o-price-strip__price-boxes{margin-bottom:2rem}}.o-related-products{padding:2rem 0}.o-related-products__title{margin-bottom:2rem;text-align:center}.c-modal--course .o-related-products__title{margin-bottom:1rem}.o-search__sections{padding-top:4rem}.o-search__section:not(:last-child){margin-bottom:4rem}.o-search__section.is-search-hidden,.o-search__sections.is-searched .o-search__section{display:none}.o-search__sections.is-searched .o-search__section.is-search-result{display:block}@media screen and (max-width:39.99875em){.o-search__section-title{margin-bottom:1rem;text-align:center}}.o-search__see-more{color:#4d94cb}.o-search__sections.is-searched .o-search__see-more{display:none}.o-search__no-items{line-height:1}.o-search__error{display:none}.o-testimonial-slider{text-align:center;background-color:#0f547c}@media screen and (max-width:39.99875em){.o-testimonial-slider{padding:1rem 0}}@media print,screen and (min-width:40em){.o-testimonial-slider{padding:2rem 0}}.o-testimonial-slider__title{margin-bottom:2rem;color:#fff}@media screen and (max-width:39.99875em){.l-bundle-listing{margin-top:2rem}}@media print,screen and (min-width:40em){.l-bundle-listing{margin-top:4rem}}@media screen and (max-width:39.99875em){.l-bundle-listing .cell{margin-bottom:1rem}}@media screen and (min-width:40em) and (max-width:63.99875em){.l-bundle-listing .cell{margin-bottom:4rem}}@media screen and (max-width:39.99875em){.l-location-directions .cell:not(:last-child){margin-bottom:1rem}}@media print,screen and (min-width:40em){.l-location-directions .cell:not(:nth-last-child(-n+2)){margin-bottom:1rem}}@media screen and (max-width:39.99875em){.l-location-listing{margin-top:2rem}}@media print,screen and (min-width:40em){.l-location-listing{margin-top:4rem}}@media screen and (max-width:39.99875em){.l-location-listing .cell:not(:nth-last-child(-n+2)){margin-bottom:1rem}}@media print,screen and (min-width:40em){.l-location-listing .cell:not(:nth-last-child(-n+3)){margin-bottom:4rem}}@media screen and (max-width:39.99875em){.l-product-category-listing .cell{margin-bottom:1rem!important}}@media print,screen and (min-width:40em){.l-product-category-listing .cell{margin-bottom:4rem!important}}@media screen and (max-width:39.99875em){.l-product-listing .cell{margin-bottom:1rem}}@media print,screen and (min-width:40em){.l-product-listing .cell{margin-bottom:2rem}}.l-product-search-results .cell{margin-bottom:1rem}.bundles__bundle-container{margin-top:4rem}.calibration__content-container{padding:2rem 0}.calibration__content-container.is-last{padding-bottom:0}.calibration__training-cta{margin-top:2rem;text-align:center}.calibration__modal-intro{margin-bottom:2rem}.course-calendar__table{margin-top:4rem}.checkout__review,.contact-us__content-container{margin-top:2rem}.contact-us__form{margin-top:1rem}.equipment-hire__ctas{text-align:center}@media screen and (max-width:39.99875em){.equipment-hire__ctas{margin:2rem auto}}@media print,screen and (min-width:40em){.equipment-hire__ctas{margin:4rem auto}}.equipment-hire__modal-intro{margin-bottom:2rem}.faqs__nav{margin:2rem auto;text-align:center}.faqs__contact{margin-top:2rem;text-align:center}.home__banner{margin-bottom:4rem;background-image:url(../img/home-banner-background.png);background-image:url(../img/home-banner-background.svg);background-position:50%;background-repeat:repeat-x}.locations__course-cta{margin-top:2rem;text-align:center}.on-site-training__modules{margin-top:4rem}.search-results__pages{margin-bottom:1rem}@media print,screen and (min-width:40em){.shop__categories{margin-top:2rem}}@media print,screen and (min-width:64em){.shop__filter-toggler{display:none}}@media screen and (max-width:63.99875em){.shop__sidebar{margin:1rem auto}}.s-acf-map{width:100%}@media screen and (max-width:39.99875em){.s-acf-map{height:25rem}}@media print,screen and (min-width:40em){.s-acf-map{height:31.25rem}.contact-us .s-acf-map{height:100%}}.s-acf-map img{max-width:inherit!important}.lightbox .lb-cancel{background:url(../img/lightbox2/loading.gif) no-repeat}.lightbox .lb-nav a.lb-prev{background:url(../img/lightbox2/prev.png) left 48% no-repeat}.lightbox .lb-nav a.lb-next{background:url(../img/lightbox2/next.png) right 48% no-repeat}.lightbox .lb-data .lb-close{background:url(../img/lightbox2/close.png) 100% 0 no-repeat}.s-owl-carousel{position:relative}.c-gallery__main .s-owl-carousel .owl-item{text-align:center}.s-owl-carousel.is-highlighted .owl-item{opacity:.5}.s-owl-carousel.is-highlighted .owl-item.is-highlighted{opacity:1}.s-owl-carousel .owl-nav{width:100%;margin-top:0;position:absolute}@media screen and (max-width:63.99875em){.s-owl-carousel .owl-nav{top:50%}}@media print,screen and (min-width:64em){.s-owl-carousel .owl-nav{top:25%}}.s-owl-carousel .owl-next,.s-owl-carousel .owl-prev{width:1.25rem;height:1.25rem;margin:0!important;padding:0!important;position:absolute!important;color:#fff!important;background:transparent!important}.c-gallery__thumbs .s-owl-carousel .owl-next,.c-gallery__thumbs .s-owl-carousel .owl-prev{color:#202529!important}.s-owl-carousel .owl-next:after,.s-owl-carousel .owl-prev:after{content:""!important;display:inline;width:1.25rem;height:1.25rem;background-color:transparent;background-position:50%;background-repeat:no-repeat;background-size:.625rem}@media screen and (max-width:74.99875em){.s-owl-carousel .owl-prev{left:0}}@media screen and (min-width:75em){.s-owl-carousel .owl-prev{left:-3rem}}.c-gallery__thumbs .s-owl-carousel .owl-prev{left:0}@media print,screen and (min-width:40em){.c-gallery__thumbs .s-owl-carousel .owl-prev{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}.s-owl-carousel .owl-prev:after{background-image:url(../img/icon-chevron-left.png);background-image:url(../img/icon-chevron-left.svg)}@media screen and (max-width:74.99875em){.s-owl-carousel .owl-next{right:0}}@media screen and (min-width:75em){.s-owl-carousel .owl-next{right:-3rem}}.c-gallery__thumbs .s-owl-carousel .owl-next{right:0}@media print,screen and (min-width:40em){.c-gallery__thumbs .s-owl-carousel .owl-next{-webkit-transform:translateX(100%);transform:translateX(100%)}}.s-owl-carousel .owl-next:after{background-image:url(../img/icon-chevron-right.png);background-image:url(../img/icon-chevron-right.svg)}.s-ninja-forms .nf-form-fields-required{margin-bottom:.5rem;font-size:.875rem}.s-ninja-forms .label-left .nf-field-label{text-align:left}.s-ninja-forms .nf-field-label label{font-weight:400}.s-ninja-forms .nf-field-description{font-size:.75rem}.s-ninja-forms .submit-container{text-align:center}.s-ninja-forms .submit-container input{padding:.5rem 2rem;border:none!important;text-align:center}.s-woocommerce .woocommerce-ordering,.s-woocommerce .woocommerce-page .woocommerce-ordering{float:none}.woocommerce #respond input#submit.disabled:after,.woocommerce #respond input#submit:after,.woocommerce #respond input#submit:disabled:after,.woocommerce #respond input#submit:disabled[disabled]:after,.woocommerce a.button.disabled:after,.woocommerce a.button:after,.woocommerce a.button:disabled:after,.woocommerce a.button:disabled[disabled]:after,.woocommerce button.button.disabled:after,.woocommerce button.button:after,.woocommerce button.button:disabled:after,.woocommerce button.button:disabled[disabled]:after,.woocommerce input.button.disabled:after,.woocommerce input.button:after,.woocommerce input.button:disabled:after,.woocommerce input.button:disabled[disabled]:after{display:none}.woocommerce .wc-bookings-booking-form-button:after{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.woocommerce div.product form.cart .variations tbody,.woocommerce div.product form.cart .variations tbody tr{border:none;background-color:transparent}.woocommerce-error,.woocommerce-info,.woocommerce-message{border-width:5px}.woocommerce-message{border-color:#ee6534}.woocommerce-message:before{color:#ee6534}.wc-pao-addon{margin:1rem auto}.c-product--standard .wc-pao-addon{margin-top:0;padding-top:1rem;border-top:1px solid #d3d3d3}.c-product--standard .wc-pao-addon.product-addon-free-gift{display:none}.c-product--standard .wc-pao-addon label{margin-bottom:0}.c-product--booking .wc-bookings-booking-form .wc-pao-addon label{margin-right:0!important;text-align:center}.c-product--standard .wc-pao-addon .woocommerce-Price-amount{color:#4d94cb;font-weight:700}.c-product--standard #product-addons-total{display:none}#product-addons-total ul li{gap:0 2rem}#product-addons-total .wc-pao-subtotal-line .price{margin-bottom:0}#product-addons-total .wc-pao-subtotal-line .price:after{content:"+ VAT";margin-left:.5rem;font-size:.875rem;font-weight:400}#product-addons-total .wc-pao-subtotal-line .price .amount{color:#4d94cb}.s-woocommerce-basket ul.variation{font-size:.75rem}.s-woocommerce-basket ul.variation dt{margin-bottom:0!important}@media print,screen and (min-width:40em){.s-woocommerce-basket .coupon input[type=text]{width:50%!important}}.s-woocommerce-basket .coupon input[type=submit]{width:auto}.s-woocommerce-basket .wc-proceed-to-checkout{text-align:right}@media print,screen and (min-width:40em){.s-woocommerce-basket .wc-proceed-to-checkout{margin:0 0 0 auto}}@media screen and (min-width:40em) and (max-width:63.99875em){.s-woocommerce-basket .wc-proceed-to-checkout{max-width:50%}}@media print,screen and (min-width:64em){.s-woocommerce-basket .wc-proceed-to-checkout{max-width:30%}}.s-woocommerce-basket #shipping_method li input{display:inline-block;width:auto;margin:.1875rem .3125rem .1875rem 0}.s-woocommerce-basket #shipping_method li label{display:inline-block}.s-woocommerce-basket .cart-collaterals .cart_totals{display:block;width:100%;margin:0;float:none}.s-woocommerce-booking .wc-bookings-date-picker .ui-datepicker td.partial_booked a:before{border-top:none}.s-woocommerce-booking .wc-bookings-booking-form{padding:0;border:none;text-align:left}.s-woocommerce-booking .wc-bookings-booking-form fieldset,.s-woocommerce-booking .wc-bookings-booking-form fieldset .picker.hasDatepicker{margin:0}.s-woocommerce-booking .wc-bookings-booking-form fieldset{padding:0;border:none}@media print,screen and (min-width:40em){.s-woocommerce-booking .wc-bookings-booking-form .wc-bookings-date-picker{margin:0 auto}}@media screen and (min-width:40em) and (max-width:63.99875em){.s-woocommerce-booking .wc-bookings-booking-form .wc-bookings-date-picker{max-width:75%}}@media print,screen and (min-width:64em){.s-woocommerce-booking .wc-bookings-booking-form .wc-bookings-date-picker{max-width:50%}}.s-woocommerce-booking .wc-bookings-booking-form .wc-bookings-date-picker .label{font-weight:700}.s-woocommerce-booking .wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker-week-end{background-color:#eee}.s-woocommerce-booking .wc-bookings-booking-form .wc-bookings-booking-cost{display:none!important;margin:0;padding:0;border-top:none;text-align:center;background:transparent}.s-woocommerce-booking .wc-bookings-booking-form .form-field{text-align:center}.s-woocommerce-booking .wc-bookings-booking-form .form-field input[type=number],.s-woocommerce-booking .wc-bookings-booking-form select{width:auto;margin:0 auto}.s-woocommerce-booking .wc-bookings-booking-form label{display:inline-block;width:auto;margin:0 1rem 0 0;font-weight:700;vertical-align:middle}.s-woocommerce-booking .wc-bookings-booking-form input,.s-woocommerce-booking .wc-bookings-booking-form select{display:inline-block;vertical-align:middle}.s-woocommerce-booking .wc-bookings-booking-form-button{padding:.5rem 3.75rem .5rem 1rem!important;border-radius:0!important;line-height:1.75!important;background-color:#ee6534!important}.s-woocommerce-booking .wc-bookings-booking-form-button:after{background-color:#c64618!important}.s-woocommerce-checkout .variation{font-size:.75rem}.s-woocommerce-checkout .variation dt{margin-bottom:0!important}.s-woocommerce-checkout .woocommerce-checkout-payment{border:none;background:#f2f2f2!important}.s-woocommerce-checkout .woocommerce-checkout-review-order-table tfoot,.s-woocommerce-checkout .woocommerce-checkout-review-order-table thead{background:transparent!important}@media screen and (max-width:39.99875em){.s-woocommerce-checkout ul.order_details li{display:block;width:100%;margin-right:0;padding-right:0;border:none;font-size:.875rem;text-transform:none}.s-woocommerce-checkout ul.order_details li:not(:last-child){margin-bottom:.5rem}}@media screen and (max-width:39.99875em){.s-woocommerce-checkout ul.order_details li strong{display:inline-block;font-size:.875rem}}.s-woocommerce-checkout #shipping_method li input{display:inline-block;width:auto;margin:.1875rem .3125rem .1875rem 0}.s-woocommerce-checkout #shipping_method li label{display:inline-block}.s-woocommerce-pagination nav.woocommerce-pagination ul{margin:0;border:none}.s-woocommerce-pagination nav.woocommerce-pagination ul li{border:none}.s-woocommerce-pagination nav.woocommerce-pagination ul li a{color:#202529}.s-woocommerce-pagination nav.woocommerce-pagination ul li a:focus,.s-woocommerce-pagination nav.woocommerce-pagination ul li a:hover,.s-woocommerce-pagination nav.woocommerce-pagination ul li span.current{color:#4d94cb;background:transparent}.s-woocommerce-pagination nav.woocommerce-pagination ul li span.current{font-weight:700}.s-wp-widgets .widget:not(:last-child){margin-bottom:2rem}.utl-clearfix:after,.utl-clearfix:before{display:table;content:" ";-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.utl-clearfix:after{clear:both}.utl-small-align-columns{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media print,screen and (min-width:40em){.utl-medium-align-columns{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}}.utl-invisible{visibility:hidden}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCJhcHAuY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIl92YXJpYWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19zaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ndXR0ZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2dyaWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZnJhbWUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX3NldHRpbmdzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19rZXlmcmFtZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NsaWRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvZWZmZWN0cy9faGluZ2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbGlnaHRib3gyL3NyYy9jc3MvbGlnaHRib3guY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYW5pbWF0ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYXV0b2hlaWdodC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fbGF6eWxvYWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX3ZpZGVvLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL190aGVtZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fdGhlbWUuZGVmYXVsdC5zY3NzIiwiZnJhbWV3b3JrL19pY29ucy5zY3NzIiwiZnJhbWV3b3JrL190eXBvZ3JhcGh5LnNjc3MiLCJmcmFtZXdvcmsvX21peGlucy5zY3NzIiwiPG5vIHNvdXJjZT4iLCJmcmFtZXdvcmsvX2J1dHRvbnMuc2NzcyIsImZyYW1ld29yay9fZm9ybXMuc2NzcyIsImZyYW1ld29yay9fbGlzdHMuc2NzcyIsImNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9fYWRkb24uc2NzcyIsImNvbXBvbmVudHMvX2Jhbm5lci5zY3NzIiwiY29tcG9uZW50cy9fYnVuZGxlLnNjc3MiLCJjb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCJjb21wb25lbnRzL19jZW50ZXJlZC10ZXh0LnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LXBvZC5zY3NzIiwiY29tcG9uZW50cy9fY3VzdG9tZXItbGlzdC5zY3NzIiwiY29tcG9uZW50cy9fZmFxLnNjc3MiLCJjb21wb25lbnRzL19oaWdobGlnaHQuc2NzcyIsImNvbXBvbmVudHMvX2hpcmUtcHJvZHVjdC5zY3NzIiwiY29tcG9uZW50cy9fZ2FsbGVyeS5zY3NzIiwiY29tcG9uZW50cy9faWNvbi5zY3NzIiwiY29tcG9uZW50cy9faWNvbi1oZXJvLnNjc3MiLCJjb21wb25lbnRzL19saXN0LWJveC5zY3NzIiwiY29tcG9uZW50cy9fbG9jYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX21hcC5zY3NzIiwiY29tcG9uZW50cy9fbWVzc2FnZS1iYW5uZXIuc2NzcyIsImNvbXBvbmVudHMvX21pbmljYXJ0LnNjc3MiLCJjb21wb25lbnRzL19tb2RhbC5zY3NzIiwiY29tcG9uZW50cy9fbmF2LnNjc3MiLCJjb21wb25lbnRzL19vZmZzZXQtY29udGVudC1wb2Quc2NzcyIsImNvbXBvbmVudHMvX3BhZ2UtYmFubmVyLnNjc3MiLCJjb21wb25lbnRzL19wYWdlLXRpdGxlLnNjc3MiLCJjb21wb25lbnRzL19wcmljZS1ib3guc2NzcyIsImNvbXBvbmVudHMvX3Byb2R1Y3Quc2NzcyIsImNvbXBvbmVudHMvX3F1YW50aXR5LXNlbGVjdG9yLnNjc3MiLCJjb21wb25lbnRzL190YWJsZS5zY3NzIiwiY29tcG9uZW50cy9fdGVzdGltb25pYWwuc2NzcyIsImNvbXBvbmVudHMvX3NlYXJjaC5zY3NzIiwiY29tcG9uZW50cy9fc2lkZWJhci5zY3NzIiwiY29tcG9uZW50cy9fc3RpY2tlci5zY3NzIiwiY29tcG9uZW50cy9fdmlkZW8uc2NzcyIsIm9iamVjdHMvX2NvbnRlbnQtYm94LnNjc3MiLCJvYmplY3RzL19mbGFnLnNjc3MiLCJvYmplY3RzL19mbGV4aWJsZS1tb2R1bGUuc2NzcyIsIm9iamVjdHMvX2Zvb3Rlci5zY3NzIiwib2JqZWN0cy9faGVhZGVyLnNjc3MiLCJvYmplY3RzL19pY29uLXN0cmlwLnNjc3MiLCJvYmplY3RzL19wcmljZS1zdHJpcC5zY3NzIiwib2JqZWN0cy9fcmVsYXRlZC1wcm9kdWN0cy5zY3NzIiwib2JqZWN0cy9fc2VhcmNoLnNjc3MiLCJvYmplY3RzL190ZXN0aW1vbmlhbC1zbGlkZXIuc2NzcyIsImxheW91dHMvX2J1bmRsZS1saXN0aW5nLnNjc3MiLCJsYXlvdXRzL19sb2NhdGlvbi1kaXJlY3Rpb25zLnNjc3MiLCJsYXlvdXRzL19sb2NhdGlvbi1saXN0aW5nLnNjc3MiLCJsYXlvdXRzL19wcm9kdWN0LWNhdGVnb3J5LWxpc3Rpbmcuc2NzcyIsImxheW91dHMvX3Byb2R1Y3QtbGlzdGluZy5zY3NzIiwibGF5b3V0cy9fcHJvZHVjdC1zZWFyY2gtcmVzdWx0cy5zY3NzIiwicGFnZS9fYnVuZGxlcy5zY3NzIiwicGFnZS9fY2FsaWJyYXRpb24uc2NzcyIsInBhZ2UvX2NvdXJzZS1jYWxlbmRhci5zY3NzIiwicGFnZS9fY29udGFjdC11cy5zY3NzIiwicGFnZS9fZXF1aXBtZW50LWhpcmUuc2NzcyIsInBhZ2UvX2ZhcXMuc2NzcyIsInBhZ2UvX2hvbWUuc2NzcyIsInBhZ2UvX2xvY2F0aW9ucy5zY3NzIiwicGFnZS9fb24tc2l0ZS10cmFpbmluZy5zY3NzIiwicGFnZS9fc2VhcmNoLXJlc3VsdHMuc2NzcyIsInBhZ2UvX3Nob3Auc2NzcyIsInNjb3Blcy9fYWNmLW1hcC5zY3NzIiwic2NvcGVzL19saWdodGJveC0yLnNjc3MiLCJzY29wZXMvX293bC1jYXJvdXNlbC5zY3NzIiwic2NvcGVzL19uaW5qYS1mb3Jtcy5zY3NzIiwic2NvcGVzL193b29jb21tZXJjZS5zY3NzIiwic2NvcGVzL193b29jb21tZXJjZS1hZGRvbnMuc2NzcyIsInNjb3Blcy9fd29vY29tbWVyY2UtYmFza2V0LnNjc3MiLCJzY29wZXMvX3dvb2NvbW1lcmNlLWJvb2tpbmcuc2NzcyIsInNjb3Blcy9fd29vY29tbWVyY2UtY2hlY2tvdXQuc2NzcyIsInNjb3Blcy9fd29vY29tbWVyY2UtcGFnaW5hdGlvbi5zY3NzIiwic2NvcGVzL193cC13aWRnZXRzLnNjc3MiLCJfdXRpbGl0aWVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNGNFLGlCQ3RTSSxBRDZENkIseUNFdExqQyxpREFDRSxXQUFXLEFBQ1gsVUFBVSxBQUNWLGFBQWMsQ0FDZixDQUFBOztBQ2hE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LEFBWkgsU0d4RkosU0NlcUQsQ0oyRWhELEFBSUMsY0t4RUosa0JBQWtCLEFBQ2xCLFFBSG1ELENMNEU5QyxBQUVELGNLNUVKLGtCQUFrQixBQUNsQixTQUhtRCxDTGdGOUMsQUFaSCxTR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxjS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsY0s1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQVpILFNHeEZKLGVDZXFELENKMkVoRCxBQUlDLGNLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxjSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBWkgsU0d4RkosU0NlcUQsQ0oyRWhELEFBSUMsY0t4RUosa0JBQWtCLEFBQ2xCLFFBSG1ELENMNEU5QyxBQUVELGNLNUVKLGtCQUFrQixBQUNsQixTQUhtRCxDTGdGOUMsQUFaSCxTR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxjS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsY0s1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQVpILFNHeEZKLGVDZXFELENKMkVoRCxBQUlDLGNLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxjSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBWkgsU0d4RkosU0NlcUQsQ0oyRWhELEFBSUMsY0t4RUosa0JBQWtCLEFBQ2xCLFFBSG1ELENMNEU5QyxBQUVELGNLNUVKLGtCQUFrQixBQUNsQixTQUhtRCxDTGdGOUMsQUFaSCxVR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQVpILFVHeEZKLGVDZXFELENKMkVoRCxBQUlDLGVLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxlSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBWkgsVUd4RkosVUNlcUQsQ0oyRWhELEFBdUJELHlDTXpHRixXVm9HdUQsQVVuR3ZELFVBQXVCLENBaUN4QixBTnVFRyx5RU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLDZFTTdFQSxVQUFXLENBQ1osQU40RUMsK0RNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMseUNNekdGLFdWb0d1RCxBVW5HdkQsU0FBdUIsQ0FpQ3hCLEFOdUVHLHlFTWpGQSxVQUFXLENBQ1osQU5nRkMsMkVNN0VBLFVBQVcsQ0FDWixBTjRFQywrRE16RUEsVVZvRXFELENVbkV0RCxBTndFQyx5Q016R0YsV1ZvR3VELEFVbkd2RCxlQUF1QixDQWlDeEIsQU51RUcseUVNakZBLFVBQVcsQ0FDWixBTmdGQyw2RU03RUEsVUFBVyxDQUNaLEFONEVDLCtETXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLHlDTXpHRixXVm9HdUQsQVVuR3ZELFNBQXVCLENBaUN4QixBTnVFRyx5RU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLDZFTTdFQSxVQUFXLENBQ1osQU40RUMsK0RNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMseUNNekdGLFdWb0d1RCxBVW5HdkQsU0FBdUIsQ0FpQ3hCLEFOdUVHLHlFTWpGQSxVQUFXLENBQ1osQU5nRkMsNkVNN0VBLFVBQVcsQ0FDWixBTjRFQywrRE16RUEsVVZvRXFELENVbkV0RCxBTndFQyx5Q016R0YsV1ZvR3VELEFVbkd2RCxlQUF1QixDQWlDeEIsQU51RUcseUVNakZBLFVBQVcsQ0FDWixBTmdGQyw2RU03RUEsVUFBVyxDQUNaLEFONEVDLCtETXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLHlDTXpHRixXVm9HdUQsQVVuR3ZELGVBQXVCLENBaUN4QixBTnVFRyx5RU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLDZFTTdFQSxVQUFXLENBQ1osQU40RUMsK0RNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMseUNNekdGLFdWb0d1RCxBVW5HdkQsV0FBdUIsQ0FpQ3hCLEFOdUVHLHlFTWpGQSxVQUFXLENBQ1osQU5nRkMsNkVNN0VBLFVBQVcsQ0FDWixBTjRFQywrRE16RUEsVVZvRXFELENVbkV0RCxBTjhFRCxpREUvR0EsZ0JMdUVTLEFLdEVULGNMc0VTLENHeUN1QyxBQVFoRCx1REFDRSxlQUFlLEFBQ2YsYUFBYyxDQUNmLEFBRUQscURFN0hBLHNCQUZxQyxBQUdyQyxvQkFIcUMsQ0ZnSW9CLEFBSXpELGdCSzFHQSxrQkFBa0IsQUFDbEIsZ0JBQWlCLENMMkdoQixBS2hIRCw2REFDRSxXQUFXLEFBQ1gsVUFBVyxDQUNaLEFMZ0hELDhDS25HRixnQkFBZ0IsQUFDaEIsZUFBZSxBQUNmLGFBQWMsQ0xxR1gsQUs5SUQsbUxBQ0UsV1RzR3FELEFTckdyRCxVQUFXLENBQ1osQUFJQyxxSUFDRSxXVGdHb0QsQ1MvRnJELEFiMElELHlDUWhFQSxVR3hGSixjQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsYUFIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLGNBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixhRHhDZ0MsQ0pnRzNCLEFBcEJELFVHeEZKLGVDZXFELENKMkVoRCxBQUlDLGVLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxlSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBTUgsaUJLdERKLG9CRHJDcUQsQ0o2RmhELEFBcEJELFVHeEZKLFNDZXFELENKMkVoRCxBQUlDLGVLeEVKLGtCQUFrQixBQUNsQixRQUhtRCxDTDRFOUMsQUFFRCxlSzVFSixrQkFBa0IsQUFDbEIsU0FIbUQsQ0xnRjlDLEFBTUgsaUJLdERKLHFCRHJDcUQsQ0o2RmhELEFBcEJELFVHeEZKLGVDZXFELENKMkVoRCxBQUlDLGVLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxlSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBTUgsaUJLdERKLGVEckNxRCxDSjZGaEQsQUFwQkQsVUd4RkosZUNlcUQsQ0oyRWhELEFBSUMsZUt4RUosa0JBQWtCLEFBQ2xCLGNBSG1ELENMNEU5QyxBQUVELGVLNUVKLGtCQUFrQixBQUNsQixlQUhtRCxDTGdGOUMsQUFNSCxpQkt0REoscUJEckNxRCxDSjZGaEQsQUFwQkQsVUd4RkosU0NlcUQsQ0oyRWhELEFBSUMsZUt4RUosa0JBQWtCLEFBQ2xCLFFBSG1ELENMNEU5QyxBQUVELGVLNUVKLGtCQUFrQixBQUNsQixTQUhtRCxDTGdGOUMsQUFNSCxpQkt0REoscUJEckNxRCxDSjZGaEQsQUFwQkQsVUd4RkosZUNlcUQsQ0oyRWhELEFBSUMsZUt4RUosa0JBQWtCLEFBQ2xCLGNBSG1ELENMNEU5QyxBQUVELGVLNUVKLGtCQUFrQixBQUNsQixlQUhtRCxDTGdGOUMsQUFNSCxpQkt0REosZURyQ3FELENKNkZoRCxBQXBCRCxVR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixxQkRyQ3FELENKNkZoRCxBQXBCRCxVR3hGSixTQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsUUFIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLFNBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixxQkRyQ3FELENKNkZoRCxBQXBCRCxXR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxnQkt4RUosa0JBQWtCLEFBQ2xCLGNBSG1ELENMNEU5QyxBQUVELGdCSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBTUgsaUJLdERKLGVEckNxRCxDSjZGaEQsQUFwQkQsV0d4RkosZUNlcUQsQ0oyRWhELEFBSUMsZ0JLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxnQks1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGtCS3RESixxQkRyQ3FELENKNkZoRCxBQXBCRCxXR3hGSixVQ2VxRCxDSjJFaEQsQUFnQkQsa0JLdERKLHFCRHJDcUQsQ0o2RmhELEFBS0QsMkNNekdGLFdWb0d1RCxBVW5HdkQsVUFBdUIsQ0FpQ3hCLEFOdUVHLDJFTWpGQSxVQUFXLENBQ1osQU5nRkMsK0VNN0VBLFVBQVcsQ0FDWixBTjRFQyxpRU16RUEsVVZvRXFELENVbkV0RCxBTndFQywyQ016R0YsV1ZvR3VELEFVbkd2RCxTQUF1QixDQWlDeEIsQU51RUcsMkVNakZBLFVBQVcsQ0FDWixBTmdGQyw2RU03RUEsVUFBVyxDQUNaLEFONEVDLGlFTXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLDJDTXpHRixXVm9HdUQsQVVuR3ZELGVBQXVCLENBaUN4QixBTnVFRywyRU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLCtFTTdFQSxVQUFXLENBQ1osQU40RUMsaUVNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMsMkNNekdGLFdWb0d1RCxBVW5HdkQsU0FBdUIsQ0FpQ3hCLEFOdUVHLDJFTWpGQSxVQUFXLENBQ1osQU5nRkMsK0VNN0VBLFVBQVcsQ0FDWixBTjRFQyxpRU16RUEsVVZvRXFELENVbkV0RCxBTndFQywyQ016R0YsV1ZvR3VELEFVbkd2RCxTQUF1QixDQWlDeEIsQU51RUcsMkVNakZBLFVBQVcsQ0FDWixBTmdGQywrRU03RUEsVUFBVyxDQUNaLEFONEVDLGlFTXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLDJDTXpHRixXVm9HdUQsQVVuR3ZELGVBQXVCLENBaUN4QixBTnVFRywyRU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLCtFTTdFQSxVQUFXLENBQ1osQU40RUMsaUVNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMsMkNNekdGLFdWb0d1RCxBVW5HdkQsZUFBdUIsQ0FpQ3hCLEFOdUVHLDJFTWpGQSxVQUFXLENBQ1osQU5nRkMsK0VNN0VBLFVBQVcsQ0FDWixBTjRFQyxpRU16RUEsVVZvRXFELENVbkV0RCxBTndFQywyQ016R0YsV1ZvR3VELEFVbkd2RCxXQUF1QixDQWlDeEIsQU51RUcsMkVNakZBLFVBQVcsQ0FDWixBTmdGQywrRU03RUEsVUFBVyxDQUNaLEFONEVDLGlFTXpFQSxVVm9FcUQsQ1VuRXRELEFOOEVELG1ERS9HQSxnQkx1RVMsQUt0RVQsY0xzRVMsQ0d5Q3VDLEFBUWhELHlEQUNFLGVBQWUsQUFDZixhQUFjLENBQ2YsQUFFRCx1REU3SEEsdUJBRnFDLEFBR3JDLHFCQUhxQyxDRmdJb0IsQUFJekQsaUJLMUdBLGtCQUFrQixBQUNsQixnQkFBaUIsQ0wyR2hCLEFLaEhELCtEQUNFLFdBQVcsQUFDWCxVQUFXLENBQ1osQUxnSEQsaURLbkdGLGdCQUFnQixBQUNoQixlQUFlLEFBQ2YsYUFBYyxDTHFHWCxBSzlJRCx5TEFDRSxXVHNHcUQsQVNyR3JELFVBQVcsQ0FDWixBQUlDLHdJQUNFLFdUZ0dvRCxDUy9GckQsQ0FBQSxBYjBJRCx5Q1FoRUEsU0d4RkosY0NlcUQsQ0oyRWhELEFBSUMsY0t4RUosa0JBQWtCLEFBQ2xCLGFBSG1ELENMNEU5QyxBQUVELGNLNUVKLGtCQUFrQixBQUNsQixjQUhtRCxDTGdGOUMsQUFNSCxnQkt0REosYUR4Q2dDLENKZ0czQixBQXBCRCxTR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxjS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsY0s1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGdCS3RESixvQkRyQ3FELENKNkZoRCxBQXBCRCxTR3hGSixTQ2VxRCxDSjJFaEQsQUFJQyxjS3hFSixrQkFBa0IsQUFDbEIsUUFIbUQsQ0w0RTlDLEFBRUQsY0s1RUosa0JBQWtCLEFBQ2xCLFNBSG1ELENMZ0Y5QyxBQU1ILGdCS3RESixxQkRyQ3FELENKNkZoRCxBQXBCRCxTR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxjS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsY0s1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGdCS3RESixlRHJDcUQsQ0o2RmhELEFBcEJELFNHeEZKLGVDZXFELENKMkVoRCxBQUlDLGNLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxjSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBTUgsZ0JLdERKLHFCRHJDcUQsQ0o2RmhELEFBcEJELFNHeEZKLFNDZXFELENKMkVoRCxBQUlDLGNLeEVKLGtCQUFrQixBQUNsQixRQUhtRCxDTDRFOUMsQUFFRCxjSzVFSixrQkFBa0IsQUFDbEIsU0FIbUQsQ0xnRjlDLEFBTUgsZ0JLdERKLHFCRHJDcUQsQ0o2RmhELEFBcEJELFNHeEZKLGVDZXFELENKMkVoRCxBQUlDLGNLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxjSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBTUgsZ0JLdERKLGVEckNxRCxDSjZGaEQsQUFwQkQsU0d4RkosZUNlcUQsQ0oyRWhELEFBSUMsY0t4RUosa0JBQWtCLEFBQ2xCLGNBSG1ELENMNEU5QyxBQUVELGNLNUVKLGtCQUFrQixBQUNsQixlQUhtRCxDTGdGOUMsQUFNSCxnQkt0REoscUJEckNxRCxDSjZGaEQsQUFwQkQsU0d4RkosU0NlcUQsQ0oyRWhELEFBSUMsY0t4RUosa0JBQWtCLEFBQ2xCLFFBSG1ELENMNEU5QyxBQUVELGNLNUVKLGtCQUFrQixBQUNsQixTQUhtRCxDTGdGOUMsQUFNSCxnQkt0REoscUJEckNxRCxDSjZGaEQsQUFwQkQsVUd4RkosZUNlcUQsQ0oyRWhELEFBSUMsZUt4RUosa0JBQWtCLEFBQ2xCLGNBSG1ELENMNEU5QyxBQUVELGVLNUVKLGtCQUFrQixBQUNsQixlQUhtRCxDTGdGOUMsQUFNSCxnQkt0REosZURyQ3FELENKNkZoRCxBQXBCRCxVR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixxQkRyQ3FELENKNkZoRCxBQXBCRCxVR3hGSixVQ2VxRCxDSjJFaEQsQUFnQkQsaUJLdERKLHFCRHJDcUQsQ0o2RmhELEFBS0QseUNNekdGLFdWb0d1RCxBVW5HdkQsVUFBdUIsQ0FpQ3hCLEFOdUVHLHlFTWpGQSxVQUFXLENBQ1osQU5nRkMsNkVNN0VBLFVBQVcsQ0FDWixBTjRFQywrRE16RUEsVVZvRXFELENVbkV0RCxBTndFQyx5Q016R0YsV1ZvR3VELEFVbkd2RCxTQUF1QixDQWlDeEIsQU51RUcseUVNakZBLFVBQVcsQ0FDWixBTmdGQywyRU03RUEsVUFBVyxDQUNaLEFONEVDLCtETXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLHlDTXpHRixXVm9HdUQsQVVuR3ZELGVBQXVCLENBaUN4QixBTnVFRyx5RU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLDZFTTdFQSxVQUFXLENBQ1osQU40RUMsK0RNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMseUNNekdGLFdWb0d1RCxBVW5HdkQsU0FBdUIsQ0FpQ3hCLEFOdUVHLHlFTWpGQSxVQUFXLENBQ1osQU5nRkMsNkVNN0VBLFVBQVcsQ0FDWixBTjRFQywrRE16RUEsVVZvRXFELENVbkV0RCxBTndFQyx5Q016R0YsV1ZvR3VELEFVbkd2RCxTQUF1QixDQWlDeEIsQU51RUcseUVNakZBLFVBQVcsQ0FDWixBTmdGQyw2RU03RUEsVUFBVyxDQUNaLEFONEVDLCtETXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLHlDTXpHRixXVm9HdUQsQVVuR3ZELGVBQXVCLENBaUN4QixBTnVFRyx5RU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLDZFTTdFQSxVQUFXLENBQ1osQU40RUMsK0RNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMseUNNekdGLFdWb0d1RCxBVW5HdkQsZUFBdUIsQ0FpQ3hCLEFOdUVHLHlFTWpGQSxVQUFXLENBQ1osQU5nRkMsNkVNN0VBLFVBQVcsQ0FDWixBTjRFQywrRE16RUEsVVZvRXFELENVbkV0RCxBTndFQyx5Q016R0YsV1ZvR3VELEFVbkd2RCxXQUF1QixDQWlDeEIsQU51RUcseUVNakZBLFVBQVcsQ0FDWixBTmdGQyw2RU03RUEsVUFBVyxDQUNaLEFONEVDLCtETXpFQSxVVm9FcUQsQ1VuRXRELEFOOEVELGlERS9HQSxnQkx1RVMsQUt0RVQsY0xzRVMsQ0d5Q3VDLEFBUWhELHVEQUNFLGVBQWUsQUFDZixhQUFjLENBQ2YsQUFFRCxxREU3SEEsdUJBRnFDLEFBR3JDLHFCQUhxQyxDRmdJb0IsQUFJekQsZ0JLMUdBLGtCQUFrQixBQUNsQixnQkFBaUIsQ0wyR2hCLEFLaEhELDZEQUNFLFdBQVcsQUFDWCxVQUFXLENBQ1osQUxnSEQsOENLbkdGLGdCQUFnQixBQUNoQixlQUFlLEFBQ2YsYUFBYyxDTHFHWCxBSzlJRCxtTEFDRSxXVHNHcUQsQVNyR3JELFVBQVcsQ0FDWixBQUlDLHFJQUNFLFdUZ0dvRCxDUy9GckQsQ0FBQSxBYitJRCxtQ1FyRUEsVUd4RkosY0NlcUQsQ0oyRWhELEFBSUMsZUt4RUosa0JBQWtCLEFBQ2xCLGFBSG1ELENMNEU5QyxBQUVELGVLNUVKLGtCQUFrQixBQUNsQixjQUhtRCxDTGdGOUMsQUFNSCxpQkt0REosYUR4Q2dDLENKZ0czQixBQXBCRCxVR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixvQkRyQ3FELENKNkZoRCxBQXBCRCxVR3hGSixTQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsUUFIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLFNBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixxQkRyQ3FELENKNkZoRCxBQXBCRCxVR3hGSixlQ2VxRCxDSjJFaEQsQUFJQyxlS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsZUs1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixlRHJDcUQsQ0o2RmhELEFBcEJELFVHeEZKLGVDZXFELENKMkVoRCxBQUlDLGVLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxlSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBTUgsaUJLdERKLHFCRHJDcUQsQ0o2RmhELEFBcEJELFVHeEZKLFNDZXFELENKMkVoRCxBQUlDLGVLeEVKLGtCQUFrQixBQUNsQixRQUhtRCxDTDRFOUMsQUFFRCxlSzVFSixrQkFBa0IsQUFDbEIsU0FIbUQsQ0xnRjlDLEFBTUgsaUJLdERKLHFCRHJDcUQsQ0o2RmhELEFBcEJELFVHeEZKLGVDZXFELENKMkVoRCxBQUlDLGVLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxlSzVFSixrQkFBa0IsQUFDbEIsZUFIbUQsQ0xnRjlDLEFBTUgsaUJLdERKLGVEckNxRCxDSjZGaEQsQUFwQkQsVUd4RkosZUNlcUQsQ0oyRWhELEFBSUMsZUt4RUosa0JBQWtCLEFBQ2xCLGNBSG1ELENMNEU5QyxBQUVELGVLNUVKLGtCQUFrQixBQUNsQixlQUhtRCxDTGdGOUMsQUFNSCxpQkt0REoscUJEckNxRCxDSjZGaEQsQUFwQkQsVUd4RkosU0NlcUQsQ0oyRWhELEFBSUMsZUt4RUosa0JBQWtCLEFBQ2xCLFFBSG1ELENMNEU5QyxBQUVELGVLNUVKLGtCQUFrQixBQUNsQixTQUhtRCxDTGdGOUMsQUFNSCxpQkt0REoscUJEckNxRCxDSjZGaEQsQUFwQkQsV0d4RkosZUNlcUQsQ0oyRWhELEFBSUMsZ0JLeEVKLGtCQUFrQixBQUNsQixjQUhtRCxDTDRFOUMsQUFFRCxnQks1RUosa0JBQWtCLEFBQ2xCLGVBSG1ELENMZ0Y5QyxBQU1ILGlCS3RESixlRHJDcUQsQ0o2RmhELEFBcEJELFdHeEZKLGVDZXFELENKMkVoRCxBQUlDLGdCS3hFSixrQkFBa0IsQUFDbEIsY0FIbUQsQ0w0RTlDLEFBRUQsZ0JLNUVKLGtCQUFrQixBQUNsQixlQUhtRCxDTGdGOUMsQUFNSCxrQkt0REoscUJEckNxRCxDSjZGaEQsQUFwQkQsV0d4RkosVUNlcUQsQ0oyRWhELEFBZ0JELGtCS3RESixxQkRyQ3FELENKNkZoRCxBQUtELDJDTXpHRixXVm9HdUQsQVVuR3ZELFVBQXVCLENBaUN4QixBTnVFRywyRU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLCtFTTdFQSxVQUFXLENBQ1osQU40RUMsaUVNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMsMkNNekdGLFdWb0d1RCxBVW5HdkQsU0FBdUIsQ0FpQ3hCLEFOdUVHLDJFTWpGQSxVQUFXLENBQ1osQU5nRkMsNkVNN0VBLFVBQVcsQ0FDWixBTjRFQyxpRU16RUEsVVZvRXFELENVbkV0RCxBTndFQywyQ016R0YsV1ZvR3VELEFVbkd2RCxlQUF1QixDQWlDeEIsQU51RUcsMkVNakZBLFVBQVcsQ0FDWixBTmdGQywrRU03RUEsVUFBVyxDQUNaLEFONEVDLGlFTXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLDJDTXpHRixXVm9HdUQsQVVuR3ZELFNBQXVCLENBaUN4QixBTnVFRywyRU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLCtFTTdFQSxVQUFXLENBQ1osQU40RUMsaUVNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMsMkNNekdGLFdWb0d1RCxBVW5HdkQsU0FBdUIsQ0FpQ3hCLEFOdUVHLDJFTWpGQSxVQUFXLENBQ1osQU5nRkMsK0VNN0VBLFVBQVcsQ0FDWixBTjRFQyxpRU16RUEsVVZvRXFELENVbkV0RCxBTndFQywyQ016R0YsV1ZvR3VELEFVbkd2RCxlQUF1QixDQWlDeEIsQU51RUcsMkVNakZBLFVBQVcsQ0FDWixBTmdGQywrRU03RUEsVUFBVyxDQUNaLEFONEVDLGlFTXpFQSxVVm9FcUQsQ1VuRXRELEFOd0VDLDJDTXpHRixXVm9HdUQsQVVuR3ZELGVBQXVCLENBaUN4QixBTnVFRywyRU1qRkEsVUFBVyxDQUNaLEFOZ0ZDLCtFTTdFQSxVQUFXLENBQ1osQU40RUMsaUVNekVBLFVWb0VxRCxDVW5FdEQsQU53RUMsMkNNekdGLFdWb0d1RCxBVW5HdkQsV0FBdUIsQ0FpQ3hCLEFOdUVHLDJFTWpGQSxVQUFXLENBQ1osQU5nRkMsK0VNN0VBLFVBQVcsQ0FDWixBTjRFQyxpRU16RUEsVVZvRXFELENVbkV0RCxBTjhFRCxtREUvR0EsZ0JMdUVTLEFLdEVULGNMc0VTLENHeUN1QyxBQVFoRCx5REFDRSxlQUFlLEFBQ2YsYUFBYyxDQUNmLEFBRUQsdURFN0hBLHVCQUZxQyxBQUdyQyxxQkFIcUMsQ0ZnSW9CLEFBSXpELGlCSzFHQSxrQkFBa0IsQUFDbEIsZ0JBQWlCLENMMkdoQixBS2hIRCwrREFDRSxXQUFX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c0MvRyxBQUZELHlCR25DQSwwQkFEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsZ0NBRGdILENIc0MvRyxBQUZELHlCR25DQSwwQkFEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsZ0NBRGdILENIc0MvRyxBQUZELHlCR25DQSwwQkFEZ0gsQ0hzQy9HLEFBRkQsMEJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCwwQkduQ0EsZ0NBRGdILENIc0MvRyxBQUZELDBCR25DQSwyQkFEZ0gsQ0hzQy9HLENBQUEsQWZ1Q0MseUNlakRKLHdERy9CRSxVQUFtQixDSGlDcEIsQUFNQyx3QkduQ0EsK0JBRGdILENIc0MvRyxBQUZELHdCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLDBCQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsZ0NBRGdILENIc0MvRyxBQUZELHdCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLDBCQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsZ0NBRGdILENIc0MvRyxBQUZELHdCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLDBCQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsZ0NBRGdILENIc0MvRyxBQUZELHlCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLDJCQURnSCxDSHNDL0csQ0FBQSxBZjRDQyxtQ2V0REosMERHL0JFLFVBQW1CLENIaUNwQixBQU1DLHlCR25DQSwrQkFEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsMEJBRGdILENIc0MvRyxBQUZELHlCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsMEJBRGdILENIc0MvRyxBQUZELHlCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsMEJBRGdILENIc0MvRyxBQUZELDBCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQsMEJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCwwQkduQ0EsMkJBRGdILENIc0MvRyxDQUFBLEFBOENILGdDQzdJTSxzQkFBNkQsQUFBN0Qsb0JBQTZELENEa0poRSxBZlpDLHlDZU9KLGdDQzdJTSx1QkFBNkQsQUFBN0QscUJBQTZELENEa0poRSxDQUFBLEFBSUQsMkNDdEpJLHNCQUE2RCxBQUE3RCxvQkFBNkQsQ0R3SmhFLEFmbEJDLHlDZWdCRiwyQ0N0SkksdUJBQTZELEFBQTdELHFCQUE2RCxDRHdKaEUsQ0FBQSxBQVhILHNCQzdJTSxzQkFBNkQsQUFBN0Qsb0JBQTZELENENkpoRSxBZnZCQyx5Q2VPSixzQkM3SU0sdUJBQTZELEFBQTdELHFCQUE2RCxDRDZKaEUsQ0FBQSxBSS9KSCxrQkQ0REUsVUFEb0QsQ0N6RHJELEFBRkQsa0JENERFLFNBRG9ELENDekRyRCxBQUZELGtCRDRERSxlQURvRCxDQ3pEckQsQUFGRCxrQkQ0REUsU0FEb0QsQ0N6RHJELEFBRkQsa0JENERFLFNBRG9ELENDekRyRCxBQUZELGtCRDRERSxlQURvRCxDQ3pEckQsQUFGRCxrQkQ0REUsZUFEb0QsQ0N6RHJELEFBRkQsa0JENERFLFdBRG9ELENDekRyRCxBbkJzSUcseUNtQnhJSixtQkQ0REUsVUFEb0QsQ0N6RHJELEFBRkQsbUJENERFLFNBRG9ELENDekRyRCxBQUZELG1CRDRERSxlQURvRCxDQ3pEckQsQUFGRCxtQkQ0REUsU0FEb0QsQ0N6RHJELEFBRkQsbUJENERFLFNBRG9ELENDekRyRCxBQUZELG1CRDRERSxlQURvRCxDQ3pEckQsQUFGRCxtQkQ0REUsZUFEb0QsQ0N6RHJELEFBRkQsbUJENERFLFdBRG9ELENDekRyRCxDQUFBLEFuQnNJRyx5Q21CeElKLGtCRDRERSxVQURvRCxDQ3pEckQsQUFGRCxrQkQ0REUsU0FEb0QsQ0N6RHJELEFBRkQsa0JENERFLGVBRG9ELENDekRyRCxBQUZELGtCRDRERSxTQURvRCxDQ3pEckQsQUFGRCxrQkQ0REUsU0FEb0QsQ0N6RHJELEFBRkQsa0JENERFLGVBRG9ELENDekRyRCxBQUZELGtCRDRERSxlQURvRCxDQ3pEckQsQUFGRCxrQkQ0REUsV0FEb0QsQ0N6RHJELENBQUEsQW5CMklHLG1DbUI3SUosbUJENERFLFVBRG9ELENDekRyRCxBQUZELG1CRDRERSxTQURvRCxDQ3pEckQsQUFGRCxtQkQ0REUsZUFEb0QsQ0N6RHJELEFBRkQsbUJENERFLFNBRG9ELENDekRyRCxBQUZELG1CRDRERSxTQURvRCxDQ3pEckQsQUFGRCxtQkQ0REUsZUFEb0QsQ0N6RHJELEFBRkQsbUJENERFLGVBRG9ELENDekRyRCxBQUZELG1CRDRERSxXQURvRCxDQ3pEckQsQ0FBQSxBQUZELGdDRDRERSwwQkFEZ0gsQ0N6RGpILEFBRkQsZ0NENERFLHlCQURnSCxDQ3pEakgsQUFGRCxnQ0Q0REUsK0JBRGdILENDekRqSCxBQUZELGdDRDRERSx5QkFEZ0gsQ0N6RGpILEFBRkQsZ0NENERFLHlCQURnSCxDQ3pEakgsQUFGRCxnQ0Q0REUsK0JBRGdILENDekRqSCxBQUZELGdDRDRERSwrQkFEZ0gsQ0N6RGpILEFBRkQsZ0NENERFLDJCQURnSCxDQ3pEakgsQW5Cc0lHLHlDbUJ4SUosZ0NENERFLDJCQURnSCxDQ3pEakgsQUFGRCxnQ0Q0REUsMEJBRGdILENDekRqSCxBQUZELGdDRDRERSxnQ0FEZ0gsQ0N6RGpILEFBRkQsZ0NENERFLDBCQURnSCxDQ3pEakgsQUFGRCxnQ0Q0REUsMEJBRGdILENDekRqSCxBQUZELGdDRDRERSxnQ0FEZ0gsQ0N6RGpILEFBRkQsZ0NENERFLGdDQURnSCxDQ3pEakgsQUFGRCxnQ0Q0REUsNEJBRGdILENDekRqSCxBQUZELGlDRDRERSwyQkFEZ0gsQ0N6RGpILEFBRkQsaUNENERFLDBCQURnSCxDQ3pEakgsQUFGRCxpQ0Q0REUsZ0NBRGdILENDekRqSCxBQUZELGlDRDRERSwwQkFEZ0gsQ0N6RGpILEFBRkQsaUNENERFLDBCQURnSCxDQ3pEakgsQUFGRCxpQ0Q0REUsZ0NBRGdILENDekRqSCxBQUZELGlDRDRERSxnQ0FEZ0gsQ0N6RGpILEFBRkQsaUNENERFLDRCQURnSCxDQ3pEakgsQ0FBQSxBbkJzSUcseUNtQnhJSixnQ0Q0REUsMkJBRGdILENDekRqSCxBQUZELGdDRDRERSwwQkFEZ0gsQ0N6RGpILEFBRkQsZ0NENERFLGdDQURnSCxDQ3pEakgsQUFGRCxnQ0Q0REUsMEJBRGdILENDekRqSCxBQUZELGdDRDRERSwwQkFEZ0gsQ0N6RGpILEFBRkQsZ0NENERFLGdDQURnSCxDQ3pEakgsQUFGRCxnQ0Q0REUsZ0NBRGdILENDekRqSCxBQUZELGdDRDRERSw0QkFEZ0gsQ0N6RGpILENBQUEsQW5CMklHLG1DbUI3SUosaUNENERFLDJCQURnSCxDQ3pEakgsQUFGRCxpQ0Q0REUsMEJBRGdILENDekRqSCxBQUZELGlDRDRERSxnQ0FEZ0gsQ0N6RGpILEFBRkQsaUNENERFLDBCQURnSCxDQ3pEakgsQUFGRCxpQ0Q0REUsMEJBRGdILENDekRqSCxBQUZELGlDRDRERSxnQ0FEZ0gsQ0N6RGpILEFBRkQsaUNENERFLGdDQURnSCxDQ3pEakgsQUFGRCxpQ0Q0REUsNEJBRGdILENDekRqSCxDQUFBLEFDSkcsb0RBRUksZUFBMEIsQUFBMUIsYUFBMEIsQ0FFN0IsQUFvQkssZ0NGc0NSLGNBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsZ0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsZ0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsVUFEb0QsQ0VuQzNDLEFwQmdIUCx5Q29CbEhNLGlDRnNDUixjQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLFNBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLFNBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLFNBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLFVBRG9ELENFbkMzQyxDQUFBLEFwQmdIUCx5Q29CbEhNLGdDRnNDUixjQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsZ0NGc0NSLFNBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsZ0NGc0NSLFNBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsZ0NGc0NSLFNBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLFVBRG9ELENFbkMzQyxDQUFBLEFwQnFIUCxtQ29CdkhNLGlDRnNDUixjQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLFNBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLFNBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLFNBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsZUFEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLFVBRG9ELENFbkMzQyxDQUFBLEFMeUxQLHdCSy9LRSxlQUEwQixBQUExQixhQUEwQixDTGlMM0IsQUs5S0QsOEJBRUksZ0JBQTRCLEFBQTVCLGNBQTRCLENBRS9CLEFwQitGRCx5Q29CMUlBLHNEQUVJLGVBQTBCLEFBQTFCLGFBQTBCLENBRTdCLENBQUEsQXBCc0lELHlDb0IzSE0saUNGK0NSLGNBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsa0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGtDRitDUixlQURvRCxDRTVDM0MsQUFGRCxrQ0YrQ1IsVUFEb0QsQ0U1QzNDLENBQUEsQXBCeUhQLHlDb0JsSE0sa0NGc0NSLGNBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsbUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELG1DRnNDUixlQURvRCxDRW5DM0MsQUFGRCxtQ0ZzQ1IsVUFEb0QsQ0VuQzNDLENBQUEsQXBCZ0hQLHlDb0JsSE0saUNGc0NSLGNBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsVUFEb0QsQ0VuQzNDLENBQUEsQXBCcUhQLG1Db0J2SE0sa0NGc0NSLGNBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsbUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELG1DRnNDUixlQURvRCxDRW5DM0MsQUFGRCxtQ0ZzQ1IsVUFEb0QsQ0VuQzNDLENBQUEsQXBCZ0hQLHlDZXlFQSx5QksvS0UsZUFBMEIsQUFBMUIsYUFBMEIsQ0xpTDNCLEFLOUtELCtCQUVJLGdCQUE0QixBQUE1QixjQUE0QixDQUUvQixDQUFBLEFwQitGRCx5Q29CMUlBLG9EQUVJLGVBQTBCLEFBQTFCLGFBQTBCLENBRTdCLENBQUEsQXBCc0lELHlDb0IzSE0sZ0NGK0NSLGNBRG9ELENFNUMzQyxBQUZELGdDRitDUixlQURvRCxDRTVDM0MsQUFGRCxnQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsZ0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGdDRitDUixlQURvRCxDRTVDM0MsQUFGRCxnQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsZ0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGdDRitDUixlQURvRCxDRTVDM0MsQUFGRCxnQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsVUFEb0QsQ0U1QzNDLENBQUEsQXBCeUhQLHlDb0IzSE0saUNGK0NSLGNBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsa0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGtDRitDUixlQURvRCxDRTVDM0MsQUFGRCxrQ0YrQ1IsVUFEb0QsQ0U1QzNDLENBQUEsQXBCeUhQLHlDb0JsSE0sZ0NGc0NSLGNBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsZ0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsZ0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGdDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxnQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsVUFEb0QsQ0VuQzNDLENBQUEsQXBCcUhQLG1Db0J2SE0saUNGc0NSLGNBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsaUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELGlDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxpQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsVUFEb0QsQ0VuQzNDLENBQUEsQXBCZ0hQLHlDZXlFQSx3QksvS0UsZUFBMEIsQUFBMUIsYUFBMEIsQ0xpTDNCLEFLOUtELDhCQUVJLGdCQUE0QixBQUE1QixjQUE0QixDQUUvQixDQUFBLEFwQm9HRCxtQ29CL0lBLHNEQUVJLGVBQTBCLEFBQTFCLGFBQTBCLENBRTdCLENBQUEsQXBCMklELG1Db0JoSU0saUNGK0NSLGNBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsa0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGtDRitDUixlQURvRCxDRTVDM0MsQUFGRCxrQ0YrQ1IsVUFEb0QsQ0U1QzNDLENBQUEsQXBCOEhQLG1Db0JoSU0sa0NGK0NSLGNBRG9ELENFNUMzQyxBQUZELGtDRitDUixlQURvRCxDRTVDM0MsQUFGRCxrQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsa0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGtDRitDUixlQURvRCxDRTVDM0MsQUFGRCxrQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsa0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGtDRitDUixlQURvRCxDRTVDM0MsQUFGRCxrQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsbUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELG1DRitDUixlQURvRCxDRTVDM0MsQUFGRCxtQ0YrQ1IsVUFEb0QsQ0U1QzNDLENBQUEsQXBCOEhQLG1Db0JoSU0saUNGK0NSLGNBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsaUNGK0NSLGVBRG9ELENFNUMzQyxBQUZELGlDRitDUixlQURvRCxDRTVDM0MsQUFGRCxpQ0YrQ1IsU0FEb0QsQ0U1QzNDLEFBRkQsa0NGK0NSLGVBRG9ELENFNUMzQyxBQUZELGtDRitDUixlQURvRCxDRTVDM0MsQUFGRCxrQ0YrQ1IsVUFEb0QsQ0U1QzNDLENBQUEsQXBCOEhQLG1Db0J2SE0sa0NGc0NSLGNBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsa0NGc0NSLGVBRG9ELENFbkMzQyxBQUZELGtDRnNDUixlQURvRCxDRW5DM0MsQUFGRCxrQ0ZzQ1IsU0FEb0QsQ0VuQzNDLEFBRkQsbUNGc0NSLGVBRG9ELENFbkMzQyxBQUZELG1DRnNDUixlQURvRCxDRW5DM0MsQUFGRCxtQ0ZzQ1IsVUFEb0QsQ0VuQzNDLENBQUEsQXBCcUhQLG1DZW9FQSx5QksvS0UsZUFBMEIsQUFBMUIsYUFBMEIsQ0xpTDNCLEFLOUtELCtCQUVJLGdCQUE0QixBQUE1QixjQUE0QixDQUUvQixDQUFBLEFaaURELGdCYTNGRixhQUE2QixDTmtPMUIsQUFFRCwrQk1wT0YsOEJBQTZCLENOc08xQixBUDNJRCxnQmEzRkYsb0JBQTZCLENOa08xQixBQUVELCtCTXBPRixvQ0FBNkIsQ05zTzFCLEFQM0lELGdCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsK0JNcE9GLHFDQUE2QixDTnNPMUIsQVAzSUQsZ0JhM0ZGLGVBQTZCLENOa08xQixBQUVELCtCTXBPRiwrQkFBNkIsQ05zTzFCLEFQM0lELGdCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsK0JNcE9GLHFDQUE2QixDTnNPMUIsQVAzSUQsZ0JhM0ZGLHFCQUE2QixDTmtPMUIsQUFFRCwrQk1wT0YscUNBQTZCLENOc08xQixBUDNJRCxnQmEzRkYsZUFBNkIsQ05rTzFCLEFBRUQsK0JNcE9GLCtCQUE2QixDTnNPMUIsQVAzSUQsZ0JhM0ZGLHFCQUE2QixDTmtPMUIsQUFFRCwrQk1wT0YscUNBQTZCLENOc08xQixBUDNJRCxnQmEzRkYscUJBQTZCLENOa08xQixBQUVELCtCTXBPRixxQ0FBNkIsQ05zTzFCLEFQM0lELGdCYTNGRixlQUE2QixDTmtPMUIsQUFFRCwrQk1wT0YsK0JBQTZCLENOc08xQixBUDNJRCxpQmEzRkYscUJBQTZCLENOa08xQixBQUVELGdDTXBPRixxQ0FBNkIsQ05zTzFCLEFQM0lELGlCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsZ0NNcE9GLHFDQUE2QixDTnNPMUIsQWY3RkQseUNROUNBLGlCYTNGRixhQUE2QixDTmtPMUIsQUFFRCxnQ01wT0YsK0JBQTZCLENOc08xQixBUDNJRCxpQmEzRkYsb0JBQTZCLENOa08xQixBQUVELGdDTXBPRixxQ0FBNkIsQ05zTzFCLEFQM0lELGlCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsZ0NNcE9GLHNDQUE2QixDTnNPMUIsQVAzSUQsaUJhM0ZGLGVBQTZCLENOa08xQixBQUVELGdDTXBPRixnQ0FBNkIsQ05zTzFCLEFQM0lELGlCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsZ0NNcE9GLHNDQUE2QixDTnNPMUIsQVAzSUQsaUJhM0ZGLHFCQUE2QixDTmtPMUIsQUFFRCxnQ01wT0Ysc0NBQTZCLENOc08xQixBUDNJRCxpQmEzRkYsZUFBNkIsQ05rTzFCLEFBRUQsZ0NNcE9GLGdDQUE2QixDTnNPMUIsQVAzSUQsaUJhM0ZGLHFCQUE2QixDTmtPMUIsQUFFRCxnQ01wT0Ysc0NBQTZCLENOc08xQixBUDNJRCxpQmEzRkYscUJBQTZCLENOa08xQixBQUVELGdDTXBPRixzQ0FBNkIsQ05zTzFCLEFQM0lELGlCYTNGRixlQUE2QixDTmtPMUIsQUFFRCxnQ01wT0YsZ0NBQTZCLENOc08xQixBUDNJRCxrQmEzRkYscUJBQTZCLENOa08xQixBQUVELGlDTXBPRixzQ0FBNkIsQ05zTzFCLEFQM0lELGtCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsaUNNcE9GLHNDQUE2QixDTnNPMUIsQ0FBQSxBZjdGRCx5Q1E5Q0EsZ0JhM0ZGLGFBQTZCLENOa08xQixBQUVELCtCTXBPRiwrQkFBNkIsQ05zTzFCLEFQM0lELGdCYTNGRixvQkFBNkIsQ05rTzFCLEFBRUQsK0JNcE9GLHFDQUE2QixDTnNPMUIsQVAzSUQsZ0JhM0ZGLHFCQUE2QixDTmtPMUIsQUFFRCwrQk1wT0Ysc0NBQTZCLENOc08xQixBUDNJRCxnQmEzRkYsZUFBNkIsQ05rTzFCLEFBRUQsK0JNcE9GLGdDQUE2QixDTnNPMUIsQVAzSUQsZ0JhM0ZGLHFCQUE2QixDTmtPMUIsQUFFRCwrQk1wT0Ysc0NBQTZCLENOc08xQixBUDNJRCxnQmEzRkYscUJBQTZCLENOa08xQixBQUVELCtCTXBPRixzQ0FBNkIsQ05zTzFCLEFQM0lELGdCYTNGRixlQUE2QixDTmtPMUIsQUFFRCwrQk1wT0YsZ0NBQTZCLENOc08xQixBUDNJRCxnQmEzRkYscUJBQTZCLENOa08xQixBQUVELCtCTXBPRixzQ0FBNkIsQ05zTzFCLEFQM0lELGdCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsK0JNcE9GLHNDQUE2QixDTnNPMUIsQVAzSUQsZ0JhM0ZGLGVBQTZCLENOa08xQixBQUVELCtCTXBPRixnQ0FBNkIsQ05zTzFCLEFQM0lELGlCYTNGRixxQkFBNkIsQ05rTzFCLEFBRUQsZ0NNcE9GLHNDQUE2QixDTnNPMUIsQVAzSUQsaUJhM0ZGLHFCQUE2QixDTmtPMUIsQUFFRCxnQ01wT0Ysc0NBQTZCLENOc08xQixDQUFBLEFmeEZELG1DUW5EQSxpQmEzRkYsYUFBNkIsQ05rTzFCLEFBRUQsZ0NNcE9GLCtCQUE2QixDTnNPMUIsQVAzSUQsaUJhM0ZGLG9CQUE2QixDTmtPMUIsQUFFRCxnQ01wT0YscUNBQTZCLENOc08xQixBUDNJRCxpQmEzRkYscUJBQTZCLENOa08xQixBQUVELGdDTXBPRixzQ0FBNkIs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RyxBQUZELHlCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsMkJBRGdILENIc0MvRyxBZnVDQyx5Q2VqREosNENHL0JFLFdBQW1CLENIaUNwQixBQU1DLHdCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsMkJBRGdILENIc0MvRyxBQUZELHdCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsMkJBRGdILENIc0MvRyxBQUZELHdCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsMkJBRGdILENIc0MvRyxBQUZELHlCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsNEJBRGdILENIc0MvRyxBQVZILDBERy9CRSxXQUFtQixDSGlDcEIsQUFNQyx5QkduQ0EsZ0NBRGdILENIc0MvRyxBQUZELHlCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLDJCQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsaUNBRGdILENIc0MvRyxBQUZELHlCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLDJCQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsaUNBRGdILENIc0MvRyxBQUZELHlCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLDJCQURnSCxDSHNDL0csQUFGRCwwQkduQ0EsaUNBRGdILENIc0MvRyxBQUZELDBCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQsMEJHbkNBLDRCQURnSCxDSHNDL0csQ0FBQSxBZnVDQyx5Q2VqREosd0RHL0JFLFdBQW1CLENIaUNwQixBQU1DLHdCR25DQSxnQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsMkJBRGdILENIc0MvRyxBQUZELHdCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsMkJBRGdILENIc0MvRyxBQUZELHdCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQsd0JHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx3QkduQ0EsMkJBRGdILENIc0MvRyxBQUZELHlCR25DQSxpQ0FEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsNEJBRGdILENIc0MvRyxDQUFBLEFmNENDLG1DZXRESiwwREcvQkUsV0FBbUIsQ0hpQ3BCLEFBTUMseUJHbkNBLGdDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsaUNBRGdILENIc0MvRyxBQUZELHlCR25DQSwyQkFEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsaUNBRGdILENIc0MvRyxBQUZELHlCR25DQSwyQkFEZ0gsQ0hzQy9HLEFBRkQseUJHbkNBLGlDQURnSCxDSHNDL0csQUFGRCx5QkduQ0EsaUNBRGdILENIc0MvRyxBQUZELHlCR25DQSwyQkFEZ0gsQ0hzQy9HLEFBRkQsMEJHbkNBLGlDQURnSCxDSHNDL0csQUFGRCwwQkduQ0EsaUNBRGdILENIc0MvRyxBQUZELDBCR25DQSw0QkFEZ0gsQ0hzQy9HLENBQUEsQUFtVEQsMEJPL1lJLDRCQUFtQyxDUGladEMsQWY5UUMseUNlNFFGLDBCTy9ZSSw2QkFBbUMsQ1BpWnRDLENBQUEsQWY5UUMseUNlNFFGLDBCTy9ZSSw2QkFBbUMsQ1BpWnRDLENBQUEsQWZ6UUMsbUNldVFGLDBCTy9ZSSw2QkFBbUMsQ1BpWnRDLENBQUEsQWY5UUMseUNlZ1JBLGlDT25aRSw2QkFBbUMsQ1BxWnBDLENBQUEsQWZsUkQseUNlZ1JBLGdDT25aRSw2QkFBbUMsQ1BxWnBDLENBQUEsQWY3UUQsbUNlMlFBLGlDT25aRSw2QkFBbUMsQ1BxWnBDLENBQUEsQWhCekxMLG9FQW1CRSxTQUFTLEFBQ1QsU0FBVSxDQUNYLEFBR0QsRUFDRSxtQkF6SzBCLEFBMksxQixrQkFBa0IsQUFDbEIs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T0FBQSxDQUdYLEFBRkQsZUNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FHWCxBQUZELGVDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBR1gsQS9Cc0RELHlDK0J4REEsZ0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBR1gsQUFGRCxnQkNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FHWCxBQUZELGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUdYLEFBRkQsZ0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBR1gsQUFGRCxnQkNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FHWCxBQUZELGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUdYLENBQUEsQS9Cc0RELHlDK0J4REEsZUNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FHWCxBQUZELGVDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBR1gsQUFGRCxlQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUdYLEFBRkQsZUNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FHWCxBQUZELGVDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBR1gsQUFGRCxlQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUdYLENBQUEsQS9CMkRELG1DK0I3REEsZ0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBR1gsQUFGRCxnQkNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FHWCxBQUZELGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUdYLEFBRkQsZ0JD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LEFBTkQsb0VBSVEsYUFBYyxDQUNqQixBbkd5SkgseUNtR3JKTix5QkFFUSxtQjlGZ0VpRCxBOEY5RGpELGlCQUFrQixDQUV6QixDQUFBLEFBRUQsb0JBQ0ksYTdGakJrQixDNkZ3QnJCLEFBSEcsb0RBQ0ksWUFBYSxDQUNoQixBQUdMLG9CQUNJLGFBQWMsQ0FDakIsQUFFRCxpQkFDSSxZQUFhLENBQ2hCLEFDOUNELHNCQUNJLGtCQUFrQixBQUVsQix3QjlGWWlCLEM4RkpwQixBcEdnS0sseUNvRzNLTixzQkFNUSxjQUFpQixDQUt4QixDQUFBLEFwRzJKSyx5Q29HdEtOLHNCQVNRLGNBQXdCLENBRS9CLENBQUEsQUFFRCw2QkFDSSxtQjlGK0JxQixBOEY3QnJCLFU5RnFCUSxDOEZsQlgsQXBHd0pLLHlDcUczS04sa0JBRVEsZS9GMkNpQixDK0Y3QnhCLENBQUEsQXJHc0pLLHlDcUd0S04sa0JBS1EsZS9GMENlLEMrRi9CdEIsQ0FBQSxBckcySksseUNxRzNLTix3QkFVWSxrQmhHOEU2QyxDZ0d6RXBELENBQUEsQXJHNEpDLDhEcUczS04sd0JBYVksa0IvRmtDVyxDK0ZoQ2xCLENBQUEsQXJHNEpDLHlDc0czS04sOENBR1ksa0JqR3FGNkMsQ2lHbkZwRCxDQUFBLEF0R2lLQyx5Q3NHdEtOLHdEQVNZLGtCakcrRTZDLENpRzdFcEQsQ0FBQSxBdEdnS0MseUN1RzNLTixvQkFFUSxlakcyQ2lCLENpR3hCeEIsQ0FBQSxBdkdpSksseUN1R3RLTixvQkFLUSxlakcwQ2UsQ2lHMUJ0QixDQUFBLEF2R3NKSyx5Q3VHM0tOLHFEQVdnQixrQmxHNkV5QyxDa0czRWhELENBQUEsQXZHeUpILHlDdUd0S04scURBaUJnQixrQmpHOEJPLENpRzVCZCxDQUFBLEF2R3dKSCx5Q3dHM0tOLGtDQUVRLDRCQUFnQyxDQUt2QyxDQUFBLEF4RytKSyx5Q3dHdEtOLGtDQUtRLDRCQUFxQyxDQUU1QyxDQUFBLEF4R29LSyx5Q3lHM0tOLHlCQUVRLGtCcEdzRmlELENvR2pGeEQsQ0FBQSxBekcrSksseUN5R3RLTix5QkFLUSxrQm5H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Q0FFMUIsQ0FBQSxBQUVELGVBQ0ksaUJBQWtCLENBQ3JCIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuXG4gICAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtIC4wMDEyNTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuLy8gVGhpcyBzaG91bGQgYmUgaW4gdGhlIHNhbWUgYnJlYWtwb2ludCB0aGVuIGBAbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoYFxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgLy8gRXh0ZW5kcyBtdXN0IGJlIG1hZGUgb3V0c2lkZSBvZiBicmVha3BvaW50cyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5ld2VyIFNhc3MgdmVyc2lvbnMgKGxpYnNhc3MgdjMuNSlcbiAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC1zY3JlZW4gbW9kYWwsIHdoaWNoIHN0cmV0Y2hlcyB0aGUgZnVsbCB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSB3aW5kb3cuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW4ge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG5cbiAgLy8vIERpc2FibGVzIHRoZSBzY3JvbGwgd2hlbiBSZXZlYWwgaXMgc2hvd24gdG8gcHJldmVudCB0aGUgYmFja2dyb3VuZCBmcm9tIHNoaWZ0aW5nXG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG5cbiAgICAmLnpmLWhhcy1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIH1cblxuICAgIGJvZHkgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gUmVtb3ZlIHBhZGRpbmdcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gU2l6aW5nIGNsYXNzZXNcbiAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDMwJSk7IH1cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDUwJSk7IH1cbiAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDkwJSk7IH1cblxuICAgIC8vIEZ1bGwtc2NyZWVuIG1vZGVcbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICAmLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNS4yXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbCwgLnJldmVhbC50aW55LCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLmxhcmdlIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDsgfVxuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyB9XG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgZm9udDogaW5oZXJpdDsgfVxuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBcImRyb2lkLXNhbnNcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzIwMjUyOTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6OmJlZm9yZSwgLnJvdzo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5yb3c6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdyAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAucm93LmV4cGFuZGVkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAucm93LmV4cGFuZGVkIC5yb3cge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLnJvdzpub3QoLmV4cGFuZGVkKSAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1uLCAucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbiwgLmNvbHVtbnMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuY29sdW1uLCAuY29sdW1ucywgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY29sdW1uLmVuZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5lbmQuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lOyB9XG5cbi5yb3cgLmNvbHVtbi5yb3cucm93LCAucm93IC5yb3cucm93LmNvbHVtbnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xNi42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7IH1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7IH1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTUwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uc21hbGwtcHVzaC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7IH1cblxuLnNtYWxsLXB1bGwtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTc1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTgzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyMCU7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMi41JTsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmV4cGFuZGVkLnJvdyAuc21hbGwtY29sbGFwc2Uucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuXG4uc21hbGwtY2VudGVyZWQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5zbWFsbC1jZW50ZXJlZCwgLnNtYWxsLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5zbWFsbC11bmNlbnRlcmVkLFxuLnNtYWxsLXB1c2gtMCxcbi5zbWFsbC1wdWxsLTAge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zbWFsbC11bmNlbnRlcmVkLCAuc21hbGwtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuc21hbGwtcHVzaC0wLFxuICAuc21hbGwtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIC5zbWFsbC1wdWxsLTAsXG4gIC5zbWFsbC1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLnNtYWxsLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuc21hbGwtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLm1lZGl1bS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmV4cGFuZGVkLnJvdyAubWVkaXVtLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLm1lZGl1bS1jZW50ZXJlZCwgLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLFxuICAubWVkaXVtLXB1c2gtMCxcbiAgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS11bmNlbnRlcmVkLCAubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAubWVkaXVtLXB1c2gtMCxcbiAgICAubWVkaXVtLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5tZWRpdW0tcHVsbC0wLFxuICAgIC5tZWRpdW0tcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5tZWRpdW0tcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLm1lZGl1bS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTsgfVxuICAubGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC5sYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbiwgLmxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLmxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIC5sYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5sYXJnZS11bmNlbnRlcmVkLFxuICAubGFyZ2UtcHVzaC0wLFxuICAubGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS11bmNlbnRlcmVkLCAubGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5sYXJnZS1wdXNoLTAsXG4gICAgLmxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5sYXJnZS1wdWxsLTAsXG4gICAgLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAubGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLnhsYXJnZS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLnhsYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLnhsYXJnZS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnhsYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLnhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnhsYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLnhsYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlOyB9XG4gICAgLnhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnhsYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLnhsYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICAueGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnhsYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnhsYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueGxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnhsYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmV4cGFuZGVkLnJvdyAueGxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC54bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLnhsYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLnhsYXJnZS1jZW50ZXJlZCwgLnhsYXJnZS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLnhsYXJnZS11bmNlbnRlcmVkLFxuICAueGxhcmdlLXB1c2gtMCxcbiAgLnhsYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnhsYXJnZS11bmNlbnRlcmVkLCAueGxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAueGxhcmdlLXB1c2gtMCxcbiAgICAueGxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC54bGFyZ2UtcHVsbC0wLFxuICAgIC54bGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC54bGFyZ2UtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLnhsYXJnZS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uY29sdW1uLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sdW1uLWJsb2NrIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmdyaWQtY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZ1bGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmdyaWQteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cblxuLmNlbGwge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWluLWhlaWdodDogMHB4O1xuICBtaW4td2lkdGg6IDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbGwuYXV0byB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuY2VsbC5zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtZnVsbCwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnhsYXJnZS1mdWxsLCAuZ3JpZC14ID4gLnhsYXJnZS0xLCAuZ3JpZC14ID4gLnhsYXJnZS0yLCAuZ3JpZC14ID4gLnhsYXJnZS0zLCAuZ3JpZC14ID4gLnhsYXJnZS00LCAuZ3JpZC14ID4gLnhsYXJnZS01LCAuZ3JpZC14ID4gLnhsYXJnZS02LCAuZ3JpZC14ID4gLnhsYXJnZS03LCAuZ3JpZC14ID4gLnhsYXJnZS04LCAuZ3JpZC14ID4gLnhsYXJnZS05LCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtMTEsIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnhsYXJnZS0xLCAuZ3JpZC14ID4gLnhsYXJnZS0yLCAuZ3JpZC14ID4gLnhsYXJnZS0zLCAuZ3JpZC14ID4gLnhsYXJnZS00LCAuZ3JpZC14ID4gLnhsYXJnZS01LCAuZ3JpZC14ID4gLnhsYXJnZS02LCAuZ3JpZC14ID4gLnhsYXJnZS03LCAuZ3JpZC14ID4gLnhsYXJnZS04LCAuZ3JpZC14ID4gLnhsYXJnZS05LCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtMTEsIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAueGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pOyB9IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjYyNXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwdnc7IH1cblxuLmNlbGwgLmdyaWQtZnJhbWUge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2VsbC1ibG9jayB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnhsYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwicHQtc2Fuc1wiLCBcImRyb2lkLXNhbnNcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLCAuaDEgc21hbGwsXG4gIGgyIHNtYWxsLCAuaDIgc21hbGwsXG4gIGgzIHNtYWxsLCAuaDMgc21hbGwsXG4gIGg0IHNtYWxsLCAuaDQgc21hbGwsXG4gIGg1IHNtYWxsLCAuaDUgc21hbGwsXG4gIGg2IHNtYWxsLCAuaDYgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjY2FjYWNhOyB9XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07IH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjkzNzVyZW07IH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07IH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMxNzc5YmE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTQ2OGEwOyB9XG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICAgIGNvbG9yOiAjOGE4YThhOyB9XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjOGE4YThhOyB9XG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmNvZGUge1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7IH1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjOGE4YThhOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIHAgKyAuc3RhdCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7IH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAuYWNjb3JkaW9uW2Rpc2FibGVkXSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzIwMjUyOTsgfVxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICBjb250ZW50OiAnKyc7IH1cbiAgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxMyc7IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYTBhMGE7IH1cbiAgOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG5odG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4uemYtaGFzLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbi5yZXZlYWwge1xuICB6LWluZGV4OiAxMDA2O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJldmVhbCB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgbWluLWhlaWdodDogMDsgfSB9XG4gIC5yZXZlYWwgLmNvbHVtbiwgLnJldmVhbCAuY29sdW1ucyB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG4gIC5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnRpbnkge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwuc21hbGwge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwubGFyZ2Uge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogMS41cHggc29saWQgIzBmNTQ3YztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0Ym9keSB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAxLjVweCBzb2xpZCAjMGY1NDdjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7IH1cbiAgdGFibGUuc3RyaXBlZCB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMzsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5OyB9XG5cbnRhYmxlLmhvdmVyLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjOyB9XG5cbi50YWJsZS1zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDsgfVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAueGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC54bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnhsYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAueGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC54bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1ncm93IHtcbiAgZmxleDogMSAwIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgZmxleDogMCAxIGF1dG87IH1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cblxuLmZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC54bGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAueGxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7IH1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50OyB9XG5cbmh0bWwubGItZGlzYWJsZS1zY3JvbGxpbmcge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiBQb3NpdGlvbiBmaXhlZCByZXF1aXJlZCBmb3IgaU9TLiBKdXN0IHB1dHRpbmcgb3ZlcmZsb3c6IGhpZGRlbjsgb24gdGhlIGJvZHkgaXMgbm90IGVub3VnaC4gKi9cbiAgcG9zaXRpb246IGZpeGVkO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogMTAwdnc7IH1cblxuLmxpZ2h0Ym94T3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT04MCk7XG4gIG9wYWNpdHk6IDAuODtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubGlnaHRib3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4ubGlnaHRib3ggLmxiLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIC8qIEltYWdlIGJvcmRlciAqL1xuICBib3JkZXI6IDRweCBzb2xpZCB3aGl0ZTsgfVxuXG4ubGlnaHRib3ggYSBpbWcge1xuICBib3JkZXI6IG5vbmU7IH1cblxuLmxiLW91dGVyQ29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAqem9vbTogMTtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAvKiBCYWNrZ3JvdW5kIGNvbG9yIGJlaGluZCBpbWFnZS5cbiAgICAgVGhpcyBpcyB2aXNpYmxlIGR1cmluZyB0cmFuc2l0aW9ucy4gKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuLmxiLW91dGVyQ29udGFpbmVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5sYi1sb2FkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDMlO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDI1JTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cblxuLmxiLWNhbmNlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9sb2FkaW5nLmdpZikgbm8tcmVwZWF0OyB9XG5cbi5sYi1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA7IH1cblxuLmxiLWNvbnRhaW5lciA+IC5uYXYge1xuICBsZWZ0OiAwOyB9XG5cbi5sYi1uYXYgYSB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEFRQUJBUEFBQVAvLy93QUFBQ0g1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlDUkFFQU93PT1cIik7IH1cblxuLmxiLXByZXYsIC5sYi1uZXh0IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5sYi1uYXYgYS5sYi1wcmV2IHtcbiAgd2lkdGg6IDM0JTtcbiAgbGVmdDogMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvcHJldi5wbmcpIGxlZnQgNDglIG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKTtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnM7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC42czsgfVxuXG4ubGItbmF2IGEubGItcHJldjpob3ZlciB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubGItbmF2IGEubGItbmV4dCB7XG4gIHdpZHRoOiA2NCU7XG4gIHJpZ2h0OiAwO1xuICBmbG9hdDogcmlnaHQ7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbmV4dC5wbmcpIHJpZ2h0IDQ4JSBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MCk7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC42cztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnM7IH1cblxuLmxiLW5hdiBhLmxiLW5leHQ6aG92ZXIge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmxiLWRhdGFDb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgKnpvb206IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7IH1cblxuLmxiLWRhdGFDb250YWluZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmxiLWRhdGEge1xuICBwYWRkaW5nOiAwIDRweDtcbiAgY29sb3I6ICNjY2M7IH1cblxuLmxiLWRhdGEgLmxiLWRldGFpbHMge1xuICB3aWR0aDogODUlO1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtOyB9XG5cbi5sYi1kYXRhIC5sYi1jYXB0aW9uIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDFlbTsgfVxuXG4ubGItZGF0YSAubGItY2FwdGlvbiBhIHtcbiAgY29sb3I6ICM0YWU7IH1cblxuLmxiLWRhdGEgLmxiLW51bWJlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogbGVmdDtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogIzk5OTk5OTsgfVxuXG4ubGItZGF0YSAubGItY2xvc2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2Nsb3NlLnBuZykgdG9wIHJpZ2h0IG5vLXJlcGVhdDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9NzApO1xuICBvcGFjaXR5OiAwLjc7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7IH1cblxuLmxiLWRhdGEgLmxiLWNsb3NlOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTEwMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZO1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi8gfVxuICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6IDA7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXIsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuICAub3dsLWNhcm91c2VsIC5vd2wtZG90cy5kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgYnV0dG9uLm93bC1kb3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBmb250OiBpbmhlcml0OyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbSB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWdyYWIge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IGdyYWI7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVtIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7XG4gIHotaW5kZXg6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuLm93bC1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gTGF6eSBMb2FkIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi8gfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSB7XG4gICAgbWF4LWhlaWdodDogMDsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcub3dsLWxhenkge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gVmlkZW8gUGx1Z2luXG4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwib3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRuIHtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLypcbiAqIFx0RGVmYXVsdCB0aGVtZSAtIE93bCBDYXJvdXNlbCBDU1MgRmlsZVxuICovXG4ub3dsLXRoZW1lIC5vd2wtbmF2IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj0nb3dsLSddIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luOiA1cHg7XG4gICAgcGFkZGluZzogNHB4IDdweDtcbiAgICBiYWNrZ3JvdW5kOiAjRDZENkQ2O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gICAgLm93bC10aGVtZSAub3dsLW5hdiBbY2xhc3MqPSdvd2wtJ106aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzg2OTc5MTtcbiAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5vd2wtdGhlbWUgLm93bC1uYXYgLmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQgKyAub3dsLWRvdHMge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1kb3RzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgem9vbTogMTtcbiAgICAqZGlzcGxheTogaW5saW5lOyB9XG4gICAgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Qgc3BhbiB7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIG1hcmdpbjogNXB4IDdweDtcbiAgICAgIGJhY2tncm91bmQ6ICNENkQ2RDY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7IH1cbiAgICAub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgc3BhbiwgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjODY5NzkxOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3BhdC10cmFpbmluZy1zZXJ2aWNlcyc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9wYXQtdHJhaW5pbmctc2VydmljZXMuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3BhdC10cmFpbmluZy1zZXJ2aWNlcy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9wYXQtdHJhaW5pbmctc2VydmljZXMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9wYXQtdHJhaW5pbmctc2VydmljZXMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9wYXQtdHJhaW5pbmctc2VydmljZXMuc3ZnI3BhdC10cmFpbmluZy1zZXJ2aWNlc1wiKSBmb3JtYXQoXCJzdmdcIik7IH1cblxuW2RhdGEtaWNvbl06YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLWljb24pO1xuICBmb250LWZhbWlseTogJ3BhdC10cmFpbmluZy1zZXJ2aWNlcycgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBzcGVhazogbm9uZTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5bY2xhc3NePSdpY29uLSddOmJlZm9yZSxcbltjbGFzcyo9JyBpY29uLSddOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAncGF0LXRyYWluaW5nLXNlcnZpY2VzJyAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgZm9udC12YXJpYW50OiBub3JtYWwgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIHNwZWFrOiBub25lO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5pY29uLWFuZHJvaWQtYXJyb3ctZHJvcHJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXDYxJzsgfVxuXG4uaWNvbi1hbmRyb2lkLWFycm93LWRyb3BsZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXDYyJzsgfVxuXG4uaWNvbi1hbmRyb2lkLWFycm93LWRyb3B1cDpiZWZvcmUge1xuICBjb250ZW50OiAnXFw2Myc7IH1cblxuLmljb24tYW5kcm9pZC1hcnJvdy1kcm9wZG93bjpiZWZvcmUge1xuICBjb250ZW50OiAnXFw2NCc7IH1cblxuLmljb24tbWVudTpiZWZvcmUge1xuICBjb250ZW50OiAnXFw2NSc7IH1cblxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXDY2JzsgfVxuXG4uaWNvbi1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiAnXFw2Nyc7IH1cblxuLmljb24taG9tZTpiZWZvcmUge1xuICBjb250ZW50OiAnXFw2OCc7IH1cblxuLmljb24tYXQ6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcNjknOyB9XG5cbi5pY29uLXByaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcNmEnOyB9XG5cbi5pY29uLWNyb3NzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXDZiJzsgfVxuXG5oMSxcbi51dGwtaGVhZGluZy1hbHBoYSxcbi5jLWJhbm5lcl9fdGl0bGUsXG4uYy1wYWdlLWJhbm5lcl9fdGl0bGUsXG4uYy1wYWdlLXRpdGxlLFxuLmMtcHJpY2UtYm94X19wcmljZSxcbi5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcHJvZHVjdF9fdGl0bGUsXG5oMixcbi51dGwtaGVhZGluZy1iZXRhLFxuLmMtY2FsbG91dF9fdGl0bGUsXG4uYy1jZW50ZXJlZC10ZXh0X190aXRsZSxcbi5jLXByb2R1Y3RfX2NvdXJzZS1zdW1tYXJ5IC5jLWNvbnRlbnQtcG9kX190aXRsZSxcbi5jLWN1c3RvbWVyLWxpc3RfX3RpdGxlLFxuLmMtaGlyZS1wcm9kdWN0X19wcmljZSxcbi5jLWhpcmUtcHJvZHVjdCAuYy1vZmZzZXQtY29udGVudC1wb2RfX3RpdGxlLFxuLmMtbW9kYWwgLmMtcGFnZS10aXRsZSxcbi5jLXByb2R1Y3QtLXN0YW5kYXJkIC5jLXByb2R1Y3RfX3RpdGxlLFxuLmMtYnVuZGxlIC5jLXByb2R1Y3RfX3ByaWNlLFxuLmMtbW9kYWwtLWNvdXJzZSAuYy1wcm9kdWN0X19wcmljZSxcbi5jLXByb2R1Y3QtLXZpZXcgLmMtcHJvZHVjdF9fcHJpY2UsXG4uYy1zaWRlYmFyX190aXRsZSxcbi5vLWNvbnRlbnQtYm94X190aXRsZSxcbi5vLWljb24tc3RyaXBfX3RpdGxlLFxuLm8tcmVsYXRlZC1wcm9kdWN0c19fdGl0bGUsXG4uby10ZXN0aW1vbmlhbC1zbGlkZXJfX3RpdGxlLFxuI3Byb2R1Y3QtYWRkb25zLXRvdGFsIC53Yy1wYW8tc3VidG90YWwtbGluZSAucHJpY2UsXG5oMyxcbi51dGwtaGVhZGluZy1nYW1tYSxcbi5jLWFkZG9uX19uYW1lLFxuLmMtbW9kYWwtLXNlYXJjaCBpbnB1dCxcbi5jLWFjY29yZGlvbl9fdGl0bGUsXG4uYy1jYWxsb3V0X19jb250ZW50LFxuLmMtY29udGVudC1wb2RfX3RpdGxlLFxuLmMtbGlzdC1ib3hfX3RpdGxlLFxuLmMtbW9kYWwtLW5hdiAuYy1uYXYgYSxcbi5jLW9mZnNldC1jb250ZW50LXBvZF9fdGl0bGUsXG4jb24tc2l0ZS1tb2RhbCAuYy1wYWdlLXRpdGxlX19pbnRybyxcbi5jLW1vZGFsLS1jb3Vyc2UgLmMtcGFnZS10aXRsZV9faW50cm8sXG4uYy1wcmljZS1ib3hfX3RpdGxlLFxuLmMtcHJvZHVjdC0tbGlzdGVkIC5jLXByb2R1Y3RfX3ByaWNlLFxuLmMtcHJvZHVjdF9fcHJpY2Utc3VmZml4LFxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0LXRpdGxlLFxuLmNvbnRhY3QtdXNfX2RldGFpbHMgLm8tZmxhZyxcbi5vLWhlYWRlcl9fbW9iaWxlLWNvbnRhY3QsXG4uYy1tb2RhbC0tY291cnNlIC5vLXJlbGF0ZWQtcHJvZHVjdHNfX3RpdGxlLFxuc21hbGwsXG4udXRsLXNtYWxsLFxuLmMtaGlnaGxpZ2h0X19uYW1lLFxuLm8taGVhZGVyX19uYXYgLmMtbmF2IGEsXG4uby1mb290ZXJfX25hdiAuYy1uYXYgYSxcbi5jLW9mZnNldC1jb250ZW50LXBvZF9fc2VjdGlvbi10aXRsZSxcbi5jLXByb2R1Y3RfX29uc2l0ZS1jb3Vyc2VzLFxuLm8tc2VhcmNoX19zZWUtbW9yZSB7XG4gIG1hcmdpbjogMCAwIDAuNXJlbTtcbiAgY29sb3I6ICMyMDI1Mjk7XG4gIGZvbnQtZmFtaWx5OiBcInB0LXNhbnNcIiwgXCJkcm9pZC1zYW5zXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuaDEsXG4udXRsLWhlYWRpbmctYWxwaGEsXG4uYy1iYW5uZXJfX3RpdGxlLFxuLmMtcGFnZS1iYW5uZXJfX3RpdGxlLFxuLmMtcGFnZS10aXRsZSxcbi5jLXByaWNlLWJveF9fcHJpY2UsXG4uYy1wcm9kdWN0LS1ib29raW5nIC5jLXByb2R1Y3RfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXNpemU6IHJlc3BvbnNpdmUgMnJlbSAyLjgxMjVyZW07XG4gIGZvbnQtcmFuZ2U6IDIwcmVtIDc1cmVtOyB9XG5cbmgyLFxuLnV0bC1oZWFkaW5nLWJldGEsXG4uYy1jYWxsb3V0X190aXRsZSxcbi5jLWNlbnRlcmVkLXRleHRfX3RpdGxlLFxuLmMtcHJvZHVjdF9fY291cnNlLXN1bW1hcnkgLmMtY29udGVudC1wb2RfX3RpdGxlLFxuLmMtY3VzdG9tZXItbGlzdF9fdGl0bGUsXG4uYy1oaXJlLXByb2R1Y3RfX3ByaWNlLFxuLmMtaGlyZS1wcm9kdWN0IC5jLW9mZnNldC1jb250ZW50LXBvZF9fdGl0bGUsXG4uYy1tb2RhbCAuYy1wYWdlLXRpdGxlLFxuLmMtcHJvZHVjdC0tc3RhbmRhcmQgLmMtcHJvZHVjdF9fdGl0bGUsXG4uYy1idW5kbGUgLmMtcHJvZHVjdF9fcHJpY2UsXG4uYy1tb2RhbC0tY291cnNlIC5jLXByb2R1Y3RfX3ByaWNlLFxuLmMtcHJvZHVjdC0tdmlldyAuYy1wcm9kdWN0X19wcmljZSxcbi5jLXNpZGViYXJfX3RpdGxlLFxuLm8tY29udGVudC1ib3hfX3RpdGxlLFxuLm8taWNvbi1zdHJpcF9fdGl0bGUsXG4uby1yZWxhdGVkLXByb2R1Y3RzX190aXRsZSxcbi5vLXRlc3RpbW9uaWFsLXNsaWRlcl9fdGl0bGUsXG4jcHJvZHVjdC1hZGRvbnMtdG90YWwgLndjLXBhby1zdWJ0b3RhbC1saW5lIC5wcmljZSB7XG4gIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gIGZvbnQtc2l6ZTogcmVzcG9uc2l2ZSAyLjEyNXJlbSAycmVtO1xuICBmb250LXJhbmdlOiAyMHJlbSA3NXJlbTsgfVxuXG5oMyxcbi51dGwtaGVhZGluZy1nYW1tYSxcbi5jLWFkZG9uX19uYW1lLFxuLmMtbW9kYWwtLXNlYXJjaCBpbnB1dCxcbi5jLWFjY29yZGlvbl9fdGl0bGUsXG4uYy1jYWxsb3V0X19jb250ZW50LFxuLmMtY29udGVudC1wb2RfX3RpdGxlLFxuLmMtbGlzdC1ib3hfX3RpdGxlLFxuLmMtbW9kYWwtLW5hdiAuYy1uYXYgYSxcbi5jLW9mZnNldC1jb250ZW50LXBvZF9fdGl0bGUsXG4jb24tc2l0ZS1tb2RhbCAuYy1wYWdlLXRpdGxlX19pbnRybyxcbi5jLW1vZGFsLS1jb3Vyc2UgLmMtcGFnZS10aXRsZV9faW50cm8sXG4uYy1wcmljZS1ib3hfX3RpdGxlLFxuLmMtcHJvZHVjdC0tbGlzdGVkIC5jLXByb2R1Y3RfX3ByaWNlLFxuLmMtcHJvZHVjdF9fcHJpY2Utc3VmZml4LFxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0LXRpdGxlLFxuLmNvbnRhY3QtdXNfX2RldGFpbHMgLm8tZmxhZyxcbi5vLWhlYWRlcl9fbW9iaWxlLWNvbnRhY3QsXG4uYy1tb2RhbC0tY291cnNlIC5vLXJlbGF0ZWQtcHJvZHVjdHNfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC1zaXplOiByZXNwb25zaXZlIDEuMTI1cmVtIDEuMzc1cmVtO1xuICBmb250LXJhbmdlOiAyMHJlbSA3NXJlbTsgfVxuICAuYy1uYXZfX2Ryb3Bkb3duIGgzLCAuYy1uYXZfX2Ryb3Bkb3duIC51dGwtaGVhZGluZy1nYW1tYSwgLmMtbmF2X19kcm9wZG93biAuYy1hZGRvbl9fbmFtZSwgLmMtbmF2X19kcm9wZG93biAuYy1tb2RhbC0tc2VhcmNoIGlucHV0LCAuYy1tb2RhbC0tc2VhcmNoIC5jLW5hdl9fZHJvcGRvd24gaW5wdXQsIC5jLW5hdl9fZHJvcGRvd24gLmMtYWNjb3JkaW9uX190aXRsZSwgLmMtbmF2X19kcm9wZG93biAuYy1jYWxsb3V0X19jb250ZW50LCAuYy1uYXZfX2Ryb3Bkb3duIC5jLWNvbnRlbnQtcG9kX190aXRsZSwgLmMtbmF2X19kcm9wZG93biAuYy1saXN0LWJveF9fdGl0bGUsIC5jLW5hdl9fZHJvcGRvd24gLmMtbW9kYWwtLW5hdiAuYy1uYXYgYSwgLmMtbW9kYWwtLW5hdiAuYy1uYXYgLmMtbmF2X19kcm9wZG93biBhLCAuYy1uYXZfX2Ryb3Bkb3duIC5jLW9mZnNldC1jb250ZW50LXBvZF9fdGl0bGUsIC5jLW5hdl9fZHJvcGRvd24gI29uLXNpdGUtbW9kYWwgLmMtcGFnZS10aXRsZV9faW50cm8sICNvbi1zaXRlLW1vZGFsIC5jLW5hdl9fZHJvcGRvd24gLmMtcGFnZS10aXRsZV9faW50cm8sXG4gIC5jLW5hdl9fZHJvcGRvd24gLmMtbW9kYWwtLWNvdXJzZSAuYy1wYWdlLXRpdGxlX19pbnRybywgLmMtbW9kYWwtLWNvdXJzZSAuYy1uYXZfX2Ryb3Bkb3duIC5jLXBhZ2UtdGl0bGVfX2ludHJvLCAuYy1uYXZfX2Ryb3Bkb3duIC5jLXByaWNlLWJveF9fdGl0bGUsIC5jLW5hdl9fZHJvcGRvd24gLmMtcHJvZHVjdC0tbGlzdGVkIC5jLXByb2R1Y3RfX3ByaWNlLCAuYy1wcm9kdWN0LS1saXN0ZWQgLmMtbmF2X19kcm9wZG93biAuYy1wcm9kdWN0X19wcmljZSwgLmMtbmF2X19kcm9wZG93biAuYy1wcm9kdWN0X19wcmljZS1zdWZmaXgsIC5jLW5hdl9fZHJvcGRvd24gLmMtcHJvZHVjdF9fZnJlZS1naWZ0LXRpdGxlLCAuYy1uYXZfX2Ryb3Bkb3duIC5jb250YWN0LXVzX19kZXRhaWxzIC5vLWZsYWcsIC5jb250YWN0LXVzX19kZXRhaWxzIC5jLW5hdl9fZHJvcGRvd24gLm8tZmxhZywgLmMtbmF2X19kcm9wZG93biAuby1oZWFkZXJfX21vYmlsZS1jb250YWN0LCAuYy1uYXZfX2Ryb3Bkb3duIC5jLW1vZGFsLS1jb3Vyc2UgLm8tcmVsYXRlZC1wcm9kdWN0c19fdGl0bGUsIC5jLW1vZGFsLS1jb3Vyc2UgLmMtbmF2X19kcm9wZG93biAuby1yZWxhdGVkLXByb2R1Y3RzX190aXRsZSB7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuc21hbGwsXG4udXRsLXNtYWxsLFxuLmMtaGlnaGxpZ2h0X19uYW1lLFxuLm8taGVhZGVyX19uYXYgLmMtbmF2IGEsXG4uby1mb290ZXJfX25hdiAuYy1uYXYgYSxcbi5jLW9mZnNldC1jb250ZW50LXBvZF9fc2VjdGlvbi10aXRsZSxcbi5jLXByb2R1Y3RfX29uc2l0ZS1jb3Vyc2VzLFxuLm8tc2VhcmNoX19zZWUtbW9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5jLW5hdl9fZHJvcGRvd24gc21hbGwsIC5jLW5hdl9fZHJvcGRvd25cbiAgLnV0bC1zbWFsbCwgLmMtbmF2X19kcm9wZG93biAuYy1oaWdobGlnaHRfX25hbWUsIC5jLW5hdl9fZHJvcGRvd24gLm8taGVhZGVyX19uYXYgLmMtbmF2IGEsIC5vLWhlYWRlcl9fbmF2IC5jLW5hdiAuYy1uYXZfX2Ryb3Bkb3duIGEsXG4gIC5jLW5hdl9fZHJvcGRvd24gLm8tZm9vdGVyX19uYXYgLmMtbmF2IGEsIC5vLWZvb3Rlcl9fbmF2IC5jLW5hdiAuYy1uYXZfX2Ryb3Bkb3duIGEsIC5jLW5hdl9fZHJvcGRvd24gLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19zZWN0aW9uLXRpdGxlLCAuYy1uYXZfX2Ryb3Bkb3duIC5jLXByb2R1Y3RfX29uc2l0ZS1jb3Vyc2VzLCAuYy1uYXZfX2Ryb3Bkb3duIC5vLXNlYXJjaF9fc2VlLW1vcmUge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmMtbmF2X19kcm9wZG93biBzbWFsbCwgLmMtbmF2X19kcm9wZG93blxuICAgICAgLnV0bC1zbWFsbCwgLmMtbmF2X19kcm9wZG93biAuYy1oaWdobGlnaHRfX25hbWUsIC5jLW5hdl9fZHJvcGRvd24gLm8taGVhZGVyX19uYXYgLmMtbmF2IGEsIC5vLWhlYWRlcl9fbmF2IC5jLW5hdiAuYy1uYXZfX2Ryb3Bkb3duIGEsXG4gICAgICAuYy1uYXZfX2Ryb3Bkb3duIC5vLWZvb3Rlcl9fbmF2IC5jLW5hdiBhLCAuby1mb290ZXJfX25hdiAuYy1uYXYgLmMtbmF2X19kcm9wZG93biBhLCAuYy1uYXZfX2Ryb3Bkb3duIC5jLW9mZnNldC1jb250ZW50LXBvZF9fc2VjdGlvbi10aXRsZSwgLmMtbmF2X19kcm9wZG93biAuYy1wcm9kdWN0X19vbnNpdGUtY291cnNlcywgLmMtbmF2X19kcm9wZG93biAuby1zZWFyY2hfX3NlZS1tb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbmEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjMGY1NDdjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICM0ZDk0Y2I7IH1cbiAgLm8tZm9vdGVyX19jb250YWN0LWRldGFpbHMgYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuLmMtYnV0dG9uLFxuLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4ucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4ucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbi5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sXG4ucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbSAzLjc1cmVtIDAuNXJlbSAxcmVtO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcInB0LXNhbnNcIiwgXCJkcm9pZC1zYW5zXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZDk0Y2I7XG4gIG9wYWNpdHk6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgb3V0bGluZTogbm9uZTsgfVxuICBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6YWZ0ZXIsXG4gIC5jLWJ1dHRvbjphZnRlcixcbiAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6YWZ0ZXIsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlcixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246YWZ0ZXIsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246YWZ0ZXIsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDIuNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBmNTQ3YztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1jaGV2cm9uLXJpZ2h0LnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1jaGV2cm9uLXJpZ2h0LnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAwLjYyNXJlbTsgfVxuICBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6aG92ZXIsIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpmb2N1cyxcbiAgLmMtYnV0dG9uOmhvdmVyLFxuICAuYy1idXR0b246Zm9jdXMsXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0OmhvdmVyLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6aG92ZXIsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOmhvdmVyLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmhvdmVyLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246aG92ZXIsXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0OmZvY3VzLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6Zm9jdXMsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOmZvY3VzLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmZvY3VzLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjc7IH1cbiAgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOmRpc2FibGVkLFxuICAuYy1idXR0b246ZGlzYWJsZWQsXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0OmRpc2FibGVkLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6ZGlzYWJsZWQsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOmRpc2FibGVkLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmRpc2FibGVkLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOmRpc2FibGVkOmhvdmVyLFxuICAgIC5jLWJ1dHRvbjpkaXNhYmxlZDpob3ZlcixcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpkaXNhYmxlZDpob3ZlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6ZGlzYWJsZWQ6aG92ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246ZGlzYWJsZWQ6aG92ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZDpob3ZlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246ZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTsgfVxuICBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSkuYy1zZWFyY2hfX2J1dHRvbixcbiAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gIC5jLW1vZGFsX19jbG9zZSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gIC5zLWFjZi1tYXAgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAuYy1idXR0b24uYy1zZWFyY2hfX2J1dHRvbixcbiAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlXG4gIC5jLWJ1dHRvbixcbiAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lclxuICAuYy1idXR0b24sXG4gIC5jLW1vZGFsX19jbG9zZVxuICAuYy1idXR0b24sXG4gIC5zLWFjZi1tYXBcbiAgLmMtYnV0dG9uLFxuICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dC5jLXNlYXJjaF9fYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dC5jLXNlYXJjaF9fYnV0dG9uI3N1Ym1pdCxcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5jLXNlYXJjaF9fYnV0dG9uLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmMtc2VhcmNoX19idXR0b24uYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5jLXNlYXJjaF9fYnV0dG9uLmJ1dHRvbixcbiAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgaW5wdXQsXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBpbnB1dCNzdWJtaXQsXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGEuYnV0dG9uLFxuICAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGJ1dHRvbi5idXR0b24sXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBpbnB1dC5idXR0b24sXG4gIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgaW5wdXQsXG4gIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGlucHV0I3N1Ym1pdCxcbiAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciBhLmJ1dHRvbixcbiAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGJ1dHRvbi5idXR0b24sXG4gIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGlucHV0LmJ1dHRvbixcbiAgLmMtbW9kYWxfX2Nsb3NlIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1tb2RhbF9fY2xvc2UgaW5wdXQsXG4gIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLW1vZGFsX19jbG9zZSBpbnB1dCNzdWJtaXQsXG4gIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtbW9kYWxfX2Nsb3NlIGEuYnV0dG9uLFxuICAuYy1tb2RhbF9fY2xvc2UgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtbW9kYWxfX2Nsb3NlIGJ1dHRvbi5idXR0b24sXG4gIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLW1vZGFsX19jbG9zZSBpbnB1dC5idXR0b24sXG4gIC5zLWFjZi1tYXAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5zLWFjZi1tYXAgaW5wdXQsXG4gIC5zLWFjZi1tYXAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAucy1hY2YtbWFwIGlucHV0I3N1Ym1pdCxcbiAgLnMtYWNmLW1hcCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLnMtYWNmLW1hcCBhLmJ1dHRvbixcbiAgLnMtYWNmLW1hcCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucy1hY2YtbWFwIGJ1dHRvbi5idXR0b24sXG4gIC5zLWFjZi1tYXAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucy1hY2YtbWFwIGlucHV0LmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKS5jLXNlYXJjaF9fYnV0dG9uOmFmdGVyLFxuICAgIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6YWZ0ZXIsXG4gICAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6YWZ0ZXIsXG4gICAgLmMtbW9kYWxfX2Nsb3NlIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTphZnRlcixcbiAgICAucy1hY2YtbWFwIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTphZnRlcixcbiAgICAuYy1idXR0b24uYy1zZWFyY2hfX2J1dHRvbjphZnRlcixcbiAgICAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGVcbiAgICAuYy1idXR0b246YWZ0ZXIsXG4gICAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lclxuICAgIC5jLWJ1dHRvbjphZnRlcixcbiAgICAuYy1tb2RhbF9fY2xvc2VcbiAgICAuYy1idXR0b246YWZ0ZXIsXG4gICAgLnMtYWNmLW1hcFxuICAgIC5jLWJ1dHRvbjphZnRlcixcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dC5jLXNlYXJjaF9fYnV0dG9uOmFmdGVyLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0LmMtc2VhcmNoX19idXR0b24jc3VibWl0OmFmdGVyLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYy1zZWFyY2hfX2J1dHRvbi5idXR0b246YWZ0ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmMtc2VhcmNoX19idXR0b24uYnV0dG9uOmFmdGVyLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmMtc2VhcmNoX19idXR0b24uYnV0dG9uOmFmdGVyLFxuICAgIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDphZnRlcixcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgaW5wdXQ6YWZ0ZXIsXG4gICAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgaW5wdXQjc3VibWl0OmFmdGVyLFxuICAgIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjphZnRlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgYS5idXR0b246YWZ0ZXIsXG4gICAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246YWZ0ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGJ1dHRvbi5idXR0b246YWZ0ZXIsXG4gICAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgaW5wdXQuYnV0dG9uOmFmdGVyLFxuICAgIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6YWZ0ZXIsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciBpbnB1dDphZnRlcixcbiAgICAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGlucHV0I3N1Ym1pdDphZnRlcixcbiAgICAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOmFmdGVyLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgYS5idXR0b246YWZ0ZXIsXG4gICAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmFmdGVyLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgYnV0dG9uLmJ1dHRvbjphZnRlcixcbiAgICAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGlucHV0LmJ1dHRvbjphZnRlcixcbiAgICAuYy1tb2RhbF9fY2xvc2UgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6YWZ0ZXIsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtbW9kYWxfX2Nsb3NlIGlucHV0OmFmdGVyLFxuICAgIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtbW9kYWxfX2Nsb3NlIGlucHV0I3N1Ym1pdDphZnRlcixcbiAgICAuYy1tb2RhbF9fY2xvc2UgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246YWZ0ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtbW9kYWxfX2Nsb3NlIGEuYnV0dG9uOmFmdGVyLFxuICAgIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmFmdGVyLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLW1vZGFsX19jbG9zZSBidXR0b24uYnV0dG9uOmFmdGVyLFxuICAgIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246YWZ0ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtbW9kYWxfX2Nsb3NlIGlucHV0LmJ1dHRvbjphZnRlcixcbiAgICAucy1hY2YtbWFwIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0OmFmdGVyLFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5zLWFjZi1tYXAgaW5wdXQ6YWZ0ZXIsXG4gICAgLnMtYWNmLW1hcCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLnMtYWNmLW1hcCBpbnB1dCNzdWJtaXQ6YWZ0ZXIsXG4gICAgLnMtYWNmLW1hcCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjphZnRlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucy1hY2YtbWFwIGEuYnV0dG9uOmFmdGVyLFxuICAgIC5zLWFjZi1tYXAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjphZnRlcixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucy1hY2YtbWFwIGJ1dHRvbi5idXR0b246YWZ0ZXIsXG4gICAgLnMtYWNmLW1hcCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246YWZ0ZXIsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLnMtYWNmLW1hcCBpbnB1dC5idXR0b246YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSkuYy1zZWFyY2hfX2J1dHRvbixcbiAgLmMtYnV0dG9uLmMtc2VhcmNoX19idXR0b24sXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LmMtc2VhcmNoX19idXR0b24sXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0LmMtc2VhcmNoX19idXR0b24jc3VibWl0LFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmMtc2VhcmNoX19idXR0b24uYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYy1zZWFyY2hfX2J1dHRvbi5idXR0b24sXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmMtc2VhcmNoX19idXR0b24uYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLCAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGVcbiAgLmMtYnV0dG9uLFxuICAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyXG4gIC5jLWJ1dHRvbixcbiAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgaW5wdXQsXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBpbnB1dCNzdWJtaXQsXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGEuYnV0dG9uLFxuICAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGJ1dHRvbi5idXR0b24sXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBpbnB1dC5idXR0b24sXG4gIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgaW5wdXQsXG4gIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGlucHV0I3N1Ym1pdCxcbiAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciBhLmJ1dHRvbixcbiAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGJ1dHRvbi5idXR0b24sXG4gIC5vLWhlYWRlcl9fbW9iaWxlLW5hdi1jb250YWluZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIGlucHV0LmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSwgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlXG4gIC5jLWJ1dHRvbixcbiAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgaW5wdXQsXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBpbnB1dCNzdWJtaXQsXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGEuYnV0dG9uLFxuICAuby1oZWFkZXJfX3NlYXJjaC10b2dnbGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlIGJ1dHRvbi5idXR0b24sXG4gIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5vLWhlYWRlcl9fc2VhcmNoLXRvZ2dsZSBpbnB1dC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAjMjAyNTI5O1xuICAgIGZvbnQtZmFtaWx5OiBcImRyb2lkLXNhbnNcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuYy1tb2RhbF9fY2xvc2UgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLCAuYy1tb2RhbF9fY2xvc2VcbiAgLmMtYnV0dG9uLFxuICAuYy1tb2RhbF9fY2xvc2UgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLW1vZGFsX19jbG9zZSBpbnB1dCxcbiAgLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtbW9kYWxfX2Nsb3NlIGlucHV0I3N1Ym1pdCxcbiAgLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1tb2RhbF9fY2xvc2UgYS5idXR0b24sXG4gIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1tb2RhbF9fY2xvc2UgYnV0dG9uLmJ1dHRvbixcbiAgLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbixcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtbW9kYWxfX2Nsb3NlIGlucHV0LmJ1dHRvbiB7XG4gICAgY29sb3I6ICMyMDI1Mjk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5jLW1vZGFsLS1zZWFyY2ggLmMtbW9kYWxfX2Nsb3NlIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAuYy1tb2RhbC0tbmF2IC5jLW1vZGFsX19jbG9zZSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksIC5jLW1vZGFsLS1zZWFyY2ggLmMtbW9kYWxfX2Nsb3NlXG4gICAgLmMtYnV0dG9uLFxuICAgIC5jLW1vZGFsLS1uYXYgLmMtbW9kYWxfX2Nsb3NlXG4gICAgLmMtYnV0dG9uLCAuYy1tb2RhbC0tc2VhcmNoIC5jLW1vZGFsX19jbG9zZSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dCwgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtbW9kYWwtLXNlYXJjaCAuYy1tb2RhbF9fY2xvc2UgaW5wdXQsIC5jLW1vZGFsLS1zZWFyY2ggLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCwgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtbW9kYWwtLXNlYXJjaCAuYy1tb2RhbF9fY2xvc2UgaW5wdXQjc3VibWl0LFxuICAgIC5jLW1vZGFsLS1zZWFyY2ggLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uLCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1tb2RhbC0tc2VhcmNoIC5jLW1vZGFsX19jbG9zZSBhLmJ1dHRvbixcbiAgICAuYy1tb2RhbC0tc2VhcmNoIC5jLW1vZGFsX19jbG9zZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1tb2RhbC0tc2VhcmNoIC5jLW1vZGFsX19jbG9zZSBidXR0b24uYnV0dG9uLFxuICAgIC5jLW1vZGFsLS1zZWFyY2ggLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiwgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtbW9kYWwtLXNlYXJjaCAuYy1tb2RhbF9fY2xvc2UgaW5wdXQuYnV0dG9uLFxuICAgIC5jLW1vZGFsLS1uYXYgLmMtbW9kYWxfX2Nsb3NlIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLW1vZGFsLS1uYXYgLmMtbW9kYWxfX2Nsb3NlIGlucHV0LFxuICAgIC5jLW1vZGFsLS1uYXYgLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1tb2RhbC0tbmF2IC5jLW1vZGFsX19jbG9zZSBpbnB1dCNzdWJtaXQsXG4gICAgLmMtbW9kYWwtLW5hdiAuYy1tb2RhbF9fY2xvc2UgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtbW9kYWwtLW5hdiAuYy1tb2RhbF9fY2xvc2UgYS5idXR0b24sXG4gICAgLmMtbW9kYWwtLW5hdiAuYy1tb2RhbF9fY2xvc2UgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1tb2RhbC0tbmF2IC5jLW1vZGFsX19jbG9zZSBidXR0b24uYnV0dG9uLFxuICAgIC5jLW1vZGFsLS1uYXYgLmMtbW9kYWxfX2Nsb3NlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1tb2RhbC0tbmF2IC5jLW1vZGFsX19jbG9zZSBpbnB1dC5idXR0b24ge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuZXF1aXBtZW50LWhpcmVfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCksIC5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhXG4gICAgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zXG4gICAgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXNcbiAgICAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lclxuICAgIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5lcXVpcG1lbnQtaGlyZV9fY3Rhc1xuICAgIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLCAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLCAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLCAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSwgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIGlucHV0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXIgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wcm9kdWN0LS1ib29raW5nIC5jLXBhZ2UtYmFubmVyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wcm9kdWN0LS1ib29raW5nIC5jLXBhZ2UtYmFubmVyIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wcm9kdWN0LS1ib29raW5nIC5jLXBhZ2UtYmFubmVyIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wcm9kdWN0LS1ib29raW5nIC5jLXBhZ2UtYmFubmVyIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5lcXVpcG1lbnQtaGlyZV9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5lcXVpcG1lbnQtaGlyZV9fY3RhcyBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5lcXVpcG1lbnQtaGlyZV9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuZXF1aXBtZW50LWhpcmVfX2N0YXMgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmVxdWlwbWVudC1oaXJlX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmVxdWlwbWVudC1oaXJlX19jdGFzIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmVxdWlwbWVudC1oaXJlX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuZXF1aXBtZW50LWhpcmVfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5lcXVpcG1lbnQtaGlyZV9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuZXF1aXBtZW50LWhpcmVfX2N0YXMgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZClcbiAgICAuYy1idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXNcbiAgICAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKVxuICAgIC5jLWJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIC5jLWJ1dHRvbixcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIC5jLWJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSAuYy1idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgLmMtYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLmMtYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLmMtYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSAuYy1idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5jLWJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSAuYy1idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLmMtYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCkgYS5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSBpbnB1dC5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgaW5wdXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgaW5wdXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgaW5wdXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dCxcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dCxcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgaW5wdXQjc3VibWl0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQjc3VibWl0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgYS5idXR0b24sXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYS5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYS5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgaW5wdXQuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dC5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXIgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmVxdWlwbWVudC1oaXJlX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpLCAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YVxuICAgIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9uc1xuICAgIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzXG4gICAgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXJcbiAgICAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuZXF1aXBtZW50LWhpcmVfX2N0YXNcbiAgICAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSwgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSwgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmNhbGlicmF0aW9uX190cmFpbmluZy1jdGEgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSksXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSxcbiAgICAuYy1wcm9kdWN0LS1ib29raW5nIC5jLXBhZ2UtYmFubmVyIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYy1wcm9kdWN0LS1ib29raW5nIC5jLXBhZ2UtYmFubmVyIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXIgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLmMtcGFnZS1iYW5uZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wYWdlLWJhbm5lciBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuZXF1aXBtZW50LWhpcmVfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuZXF1aXBtZW50LWhpcmVfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuZXF1aXBtZW50LWhpcmVfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmVxdWlwbWVudC1oaXJlX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5lcXVpcG1lbnQtaGlyZV9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5lcXVpcG1lbnQtaGlyZV9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5lcXVpcG1lbnQtaGlyZV9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmVxdWlwbWVudC1oaXJlX19jdGFzIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuZXF1aXBtZW50LWhpcmVfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmVxdWlwbWVudC1oaXJlX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpXG4gICAgLmMtYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzXG4gICAgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZClcbiAgICAuYy1idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSAuYy1idXR0b24sXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSAuYy1idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgLmMtYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIC5jLWJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5jLWJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5jLWJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLmMtYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSAuYy1idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLmMtYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5jLWJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dCxcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSBpbnB1dCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQjc3VibWl0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQuYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYS5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLmMtYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5jLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dC5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSBpbnB1dCxcbiAgICAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQsXG4gICAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgaW5wdXQjc3VibWl0LFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgaW5wdXQjc3VibWl0LFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQjc3VibWl0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0I3N1Ym1pdCxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQjc3VibWl0LFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dCNzdWJtaXQsXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLmMtcGFnZS1iYW5uZXJfX2N0YXMgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYS5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGEuYnV0dG9uLFxuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXBhZ2UtYmFubmVyX19jdGFzIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBhLmJ1dHRvbixcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIC5jLXBhZ2UtYmFubmVyX19jdGFzIGlucHV0Om5vdCg6bGFzdC1jaGlsZCkgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dDpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGEuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGJ1dHRvbi5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgYnV0dG9uLmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBidXR0b24uYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dCNzdWJtaXQ6bm90KDpsYXN0LWNoaWxkKSBpbnB1dC5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dC5idXR0b24sXG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcGFnZS1iYW5uZXJfX2N0YXMgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dC5idXR0b24sXG4gICAgLmMtcGFnZS1iYW5uZXJfX2N0YXMgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkgaW5wdXQuYnV0dG9uLFxuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIGlucHV0LmJ1dHRvbixcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1wYWdlLWJhbm5lcl9fY3RhcyBpbnB1dC5idXR0b246bm90KDpsYXN0LWNoaWxkKSBpbnB1dC5idXR0b24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9IH1cbiAgLmMtcHJvZHVjdF9fY291cnNlLWJvb2tlciBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6bm90KDpsYXN0LWNoaWxkKSwgLmMtcHJvZHVjdF9fY291cnNlLWJvb2tlclxuICAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLmMtcHJvZHVjdF9fY291cnNlLWJvb2tlciAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDpub3QoOmxhc3QtY2hpbGQpLCAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1wcm9kdWN0X19jb3Vyc2UtYm9va2VyIGlucHV0Om5vdCg6bGFzdC1jaGlsZCksIC5jLXByb2R1Y3RfX2NvdXJzZS1ib29rZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5jLXByb2R1Y3RfX2NvdXJzZS1ib29rZXIgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksXG4gIC5jLXByb2R1Y3RfX2NvdXJzZS1ib29rZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcHJvZHVjdF9fY291cnNlLWJvb2tlciBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAuYy1wcm9kdWN0X19jb3Vyc2UtYm9va2VyIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgLmMtcHJvZHVjdF9fY291cnNlLWJvb2tlciBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksXG4gIC5jLXByb2R1Y3RfX2NvdXJzZS1ib29rZXIgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLXByb2R1Y3RfX2NvdXJzZS1ib29rZXIgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLWxpc3QtYm94IGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKSwgLmMtbGlzdC1ib3hcbiAgICAuYy1idXR0b24sIC5jLWxpc3QtYm94IC5zLW5pbmphLWZvcm1zIC5zdWJtaXQtY29udGFpbmVyIGlucHV0LCAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciAuYy1saXN0LWJveCBpbnB1dCwgLmMtbGlzdC1ib3ggLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAuYy1saXN0LWJveCBpbnB1dCNzdWJtaXQsXG4gICAgLmMtbGlzdC1ib3ggLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b24sIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLWxpc3QtYm94IGEuYnV0dG9uLFxuICAgIC5jLWxpc3QtYm94IC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5jLWxpc3QtYm94IGJ1dHRvbi5idXR0b24sXG4gICAgLmMtbGlzdC1ib3ggLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAuYy1saXN0LWJveCBpbnB1dC5idXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfSB9XG4gIC5wYWdlLXN0eWxlLWd1aWRlIGJ1dHRvbjpub3QoW2NsYXNzKj0nd2NjLSddKTpub3QoOmxhc3QtY2hpbGQpLCAucGFnZS1zdHlsZS1ndWlkZVxuICAuYy1idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLnBhZ2Utc3R5bGUtZ3VpZGUgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSwgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLnBhZ2Utc3R5bGUtZ3VpZGUgaW5wdXQ6bm90KDpsYXN0LWNoaWxkKSwgLnBhZ2Utc3R5bGUtZ3VpZGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0Om5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlICNyZXNwb25kIC5wYWdlLXN0eWxlLWd1aWRlIGlucHV0I3N1Ym1pdDpub3QoOmxhc3QtY2hpbGQpLFxuICAucGFnZS1zdHlsZS1ndWlkZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucGFnZS1zdHlsZS1ndWlkZSBhLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLFxuICAucGFnZS1zdHlsZS1ndWlkZSAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5wYWdlLXN0eWxlLWd1aWRlIGJ1dHRvbi5idXR0b246bm90KDpsYXN0LWNoaWxkKSxcbiAgLnBhZ2Utc3R5bGUtZ3VpZGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5wYWdlLXN0eWxlLWd1aWRlIGlucHV0LmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5waWthLXNpbmdsZSBidXR0b246bm90KFtjbGFzcyo9J3djYy0nXSk6YWZ0ZXIsIC5waWthLXNpbmdsZVxuICAuYy1idXR0b246YWZ0ZXIsIC5waWthLXNpbmdsZSAucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dDphZnRlciwgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgLnBpa2Etc2luZ2xlIGlucHV0OmFmdGVyLCAucGlrYS1zaW5nbGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmFmdGVyLCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAjcmVzcG9uZCAucGlrYS1zaW5nbGUgaW5wdXQjc3VibWl0OmFmdGVyLFxuICAucGlrYS1zaW5nbGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgYS5idXR0b246YWZ0ZXIsIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5waWthLXNpbmdsZSBhLmJ1dHRvbjphZnRlcixcbiAgLnBpa2Etc2luZ2xlIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246YWZ0ZXIsIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndvb2NvbW1lcmNlIC5waWthLXNpbmdsZSBidXR0b24uYnV0dG9uOmFmdGVyLFxuICAucGlrYS1zaW5nbGUgLnMtd29vY29tbWVyY2UtYm9va2luZyAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmFmdGVyLCAucy13b29jb21tZXJjZS1ib29raW5nIC53b29jb21tZXJjZSAucGlrYS1zaW5nbGUgaW5wdXQuYnV0dG9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lOyB9XG5cbi5jLWJ1dHRvbi0tYWxwaGEsXG4ucy1uaW5qYS1mb3JtcyAuc3VibWl0LWNvbnRhaW5lciBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZTY1MzQ7IH1cbiAgLmMtYnV0dG9uLS1hbHBoYTphZnRlcixcbiAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNjQ2MTg7IH1cblxuLmMtYnV0dG9uLS1iZXRhIHtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGNvbG9yOiAjMjAyNTI5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXNpemU6IHJlc3BvbnNpdmUgMS4xMjVyZW0gMS4zNzVyZW07XG4gIGZvbnQtcmFuZ2U6IDIwcmVtIDc1cmVtOyB9XG4gIC5jLWJ1dHRvbi0tYmV0YTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYy1idXR0b24tLWJldGE6aG92ZXIsIC5jLWJ1dHRvbi0tYmV0YTpmb2N1cyB7XG4gICAgY29sb3I6ICMyMDI1Mjk7IH1cblxuLmMtYnV0dG9uLS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLnMtd29vY29tbWVyY2UtY2hlY2tvdXQgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuaW5wdXQsXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAycHggc29saWQgI2QzZDNkMztcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBpbnB1dDpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2VlNjUzNDtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIGlucHV0OmhvdmVyLFxuICB0ZXh0YXJlYTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWU2NTM0OyB9XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzIwMjUyOTsgfVxuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiAxcmVtOyB9XG4gIC5jLW1vZGFsLS1zZWFyY2ggaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI2ZmZjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYy1tb2RhbC0tc2VhcmNoIGlucHV0IHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBmb250LXNpemU6IHJlc3BvbnNpdmUgMnJlbSAyLjgxMjVyZW07XG4gICAgICAgIGZvbnQtcmFuZ2U6IDIwcmVtIDc1cmVtOyB9IH1cbiAgICAuYy1tb2RhbC0tc2VhcmNoIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogOS4zNzVyZW07IH1cblxuaW5wdXRbdHlwZT1jaGVja2JveF0sXG5pbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsIHtcbiAgICAgIHdpZHRoOiA4MCU7IH0gfVxuXG4ucy1jbXMtY29udGVudCB1bCBsaSB7XG4gIHRleHQtaW5kZW50OiAwLjVyZW07XG4gIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWJ1bGxldC5wbmdcIik7XG4gIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWJ1bGxldC5zdmdcIik7IH1cblxuLmMtYWNjb3JkaW9uIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyMDI1Mjk7IH1cbiAgLmMtYWNjb3JkaW9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmMtYWNjb3JkaW9uLmMtZmFxIHtcbiAgICBib3JkZXI6IG5vbmU7IH1cblxuLmMtYWNjb3JkaW9uX190aXRsZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmMtYWNjb3JkaW9uX190aXRsZTpob3ZlciwgLmMtYWNjb3JkaW9uX190aXRsZTpmb2N1cyB7XG4gICAgY29sb3I6ICMyMDI1Mjk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5jLWFjY29yZGlvbl9fdGl0bGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnZCc7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBmb250LWZhbWlseTogJ3BhdC10cmFpbmluZy1zZXJ2aWNlcyc7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gICAgLmlzLWFjdGl2ZSAuYy1hY2NvcmRpb25fX3RpdGxlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnYyc7IH1cblxuLmMtYWNjb3JkaW9uX19jb250ZW50IHtcbiAgcGFkZGluZzogMDsgfVxuXG4ucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1wYW8tYWRkb25zLWNvbnRhaW5lciAuYy1hZGRvbixcbi53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLmMtYWRkb24ge1xuICBwYWRkaW5nOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLXBhby1hZGRvbnMtY29udGFpbmVyIC5jLWFkZG9uLFxuICAgIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLmMtYWRkb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtcGFvLWFkZG9ucy1jb250YWluZXIgLmMtYWRkb24sXG4gICAgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSAuYy1hZGRvbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLXBhby1hZGRvbnMtY29udGFpbmVyIC5jLWFkZG9uOmZpcnN0LWNoaWxkLFxuICAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIC5jLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjMjAyNTI5O1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjMjAyNTI5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtcGFvLWFkZG9ucy1jb250YWluZXIgLmMtYWRkb246Zmlyc3QtY2hpbGQgLmMtYWRkb25fX21ldGEtY29udGFpbmVyLFxuICAgICAgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSAuYy1hZGRvbjpmaXJzdC1jaGlsZCAuYy1hZGRvbl9fbWV0YS1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDAgYXV0byAxcmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtcGFvLWFkZG9ucy1jb250YWluZXIgLmMtYWRkb246Zmlyc3QtY2hpbGQgLmMtYWRkb25fX21lZGlhLFxuICAgICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtcGFvLWFkZG9ucy1jb250YWluZXIgLmMtYWRkb246Zmlyc3QtY2hpbGQgLmMtYWRkb25fX2Rlc2MtY29udGFpbmVyLFxuICAgICAgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSAuYy1hZGRvbjpmaXJzdC1jaGlsZCAuYy1hZGRvbl9fbWVkaWEsXG4gICAgICAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIC5jLWFkZG9uOmZpcnN0LWNoaWxkIC5jLWFkZG9uX19kZXNjLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLXBhby1hZGRvbnMtY29udGFpbmVyIC5jLWFkZG9uOmZpcnN0LWNoaWxkIC5jLWFkZG9uX19tZWRpYSxcbiAgICAgIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLmMtYWRkb246Zmlyc3QtY2hpbGQgLmMtYWRkb25fX21lZGlhIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLXBhby1hZGRvbnMtY29udGFpbmVyIC5jLWFkZG9uOmZpcnN0LWNoaWxkIC5jLWFkZG9uX19kZXNjLWNvbnRhaW5lcixcbiAgICAgIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLmMtYWRkb246Zmlyc3QtY2hpbGQgLmMtYWRkb25fX2Rlc2MtY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuXG4uYy1hZGRvbl9fbWV0YS1jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiAwLjA2MjVyZW07IH1cblxuLmMtYWRkb25fX25hbWUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5jLWFkZG9uX19tZWRpYSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmMtYWRkb25fX2Rlc2Mge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG87IH0gfVxuXG4uYy1hZGRvbl9fZGVzYyBwIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbSAhaW1wb3J0YW50O1xuICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuXG4uYy1hZGRvbl9fcXVhbnRpdHktc2VsZWN0b3Ige1xuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmMtYmFubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLWJhbm5lciB7XG4gICAgICBtaW4taGVpZ2h0OiAyOS4zNzVyZW07IH0gfVxuICAuYy1iYW5uZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7IH1cblxuLmMtYmFubmVyX19jb250ZW50LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmMtYmFubmVyX19jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1iYW5uZXJfX2NvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDRyZW07IH0gfVxuXG4uYy1iYW5uZXJfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYy1iYW5uZXJfX2NvbnRlbnQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXNpemU6IHJlc3BvbnNpdmUgMS4xMjVyZW0gMS4zNzVyZW07XG4gIGZvbnQtcmFuZ2U6IDIwcmVtIDc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtYmFubmVyX19jb250ZW50IHtcbiAgICAgIG1heC13aWR0aDogNjUlO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTsgfSB9XG5cbi5idW5kbGVzIC5jLWJ1bmRsZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuLmMtYnVuZGxlOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5jLWNhbGxvdXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZjU0N2M7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jLWNhbGxvdXQge1xuICAgICAgcGFkZGluZzogMXJlbSAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1jYWxsb3V0IHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDsgfSB9XG4gIC5lcXVpcG1lbnQtaGlyZSAuYy1jYWxsb3V0IHtcbiAgICBtYXJnaW4tdG9wOiAycmVtOyB9XG5cbi5jLWNhbGxvdXRfX3RpdGxlLFxuLmMtY2FsbG91dF9fY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5jLWNhbGxvdXRfX2NvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5jLWNlbnRlcmVkLXRleHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmMtY2VudGVyZWQtdGV4dF9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5jLWNlbnRlcmVkLXRleHRfX2N0YSB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYy1jb250ZW50LXBvZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmMtY29udGVudC1wb2Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jLWNvbnRlbnQtcG9kOm50aC1jaGlsZCgybikgLmNlbGw6Zmlyc3QtY2hpbGQge1xuICAgIG9yZGVyOiAxOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmMtY29udGVudC1wb2Q6bnRoLWNoaWxkKDJuKSAuY2VsbDpsYXN0LWNoaWxkIHtcbiAgICBvcmRlcjogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jLWNvbnRlbnQtcG9kIC5jZWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG4uYy1wcm9kdWN0LS1ib29raW5nIC5jLWNvbnRlbnQtcG9kIC5jZWxsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmMtY29udGVudC1wb2RfX21lZGlhIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jLWNvbnRlbnQtcG9kX19tZWRpYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgLmMtY29udGVudC1wb2RfX21lZGlhIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5jLWNvbnRlbnQtcG9kX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmMtcHJvZHVjdF9fY291cnNlLXN1bW1hcnkgLmMtY29udGVudC1wb2RfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5jLWN1c3RvbWVyLWxpc3Qge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmMtY3VzdG9tZXItbGlzdF9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5mYXFzIC5jLWZhcTpudGgtY2hpbGQobis0KSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm8tc2VhcmNoX19zZWN0aW9ucy5pcy1zZWFyY2hlZCAuYy1mYXEge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5vLXNlYXJjaF9fc2VjdGlvbnMuaXMtc2VhcmNoZWQgLmMtZmFxLmlzLXNlYXJjaC1yZXN1bHQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jLWhpZ2hsaWdodDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYy1oaWdobGlnaHRfX25hbWUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNGQ5NGNiO1xuICBsaW5lLWhlaWdodDogMS43NTsgfVxuXG4uYy1oaXJlLXByb2R1Y3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLmMtaGlyZS1wcm9kdWN0X19wcmljZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICM0ZDk0Y2I7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jLWhpcmUtcHJvZHVjdF9fcHJpY2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtaGlyZS1wcm9kdWN0X19wcmljZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmMtZ2FsbGVyeV9fdGh1bWJzIHtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4uYy1pY29uIHtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmMtaWNvbjpiZWZvcmUge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAuYy1pY29uIHtcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTsgfVxuXG4uYy1pY29uLWhlcm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jLWljb24taGVyb19fdGV4dCB7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuLmMtbGlzdC1ib3gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jLWxpc3QtYm94IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtbGlzdC1ib3gge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMnJlbTsgfSB9XG4gIC5jLWxpc3QtYm94ID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9zdC10eXBlLWFyY2hpdmUtcHJvZHVjdCAuYy1saXN0LWJveCBhLFxuICAgIC5zdHlsZS1ndWlkZSAuYy1saXN0LWJveCBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuLmMtbGlzdC1ib3hfX2ltYWdlLFxuLmMtbGlzdC1ib3hfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYy1saXN0LWJveF9faW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IC00cmVtOyB9IH1cblxuLmMtbGlzdC1ib3hfX2Rlc2NyaXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBjb2xvcjogIzIwMjUyOTsgfVxuXG4uYy1sb2NhdGlvbi0tdmlldyAuYy1sb2NhdGlvbl9fZGlyZWN0aW9ucyB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuLmMtbG9jYXRpb25fX2RpcmVjdGlvbnMtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmMtbG9jYXRpb24tLXZpZXcgLmMtbWFwIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG4uYy1tZXNzYWdlLWJhbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6IFwicHQtc2Fuc1wiLCBcImRyb2lkLXNhbnNcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWU2NTM0OyB9XG4gIC5jLW1lc3NhZ2UtYmFubmVyLnQtbGlnaHRfYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRkOTRjYjsgfVxuICAuYy1tZXNzYWdlLWJhbm5lci50LWJsdWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjU0N2M7IH1cbiAgLmMtbWVzc2FnZS1iYW5uZXIgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAuYy1tZXNzYWdlLWJhbm5lciBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbi5jLW1pbmljYXJ0IHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtbWluaWNhcnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAuYy1taW5pY2FydDpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jLW1pbmljYXJ0X19jb2wge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtbWluaWNhcnRfX2NvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1taW5pY2FydF9fY29sOmxhc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG5cbi5jLW1pbmljYXJ0X19xdWFudCB7XG4gIHdpZHRoOiAyLjVyZW07XG4gIGhlaWdodDogMi4xODc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmMtbWluaWNhcnRfX3F1YW50IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWJhc2tldC1tb2JpbGUucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tYmFza2V0LW1vYmlsZS5zdmdcIik7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLW1pbmljYXJ0X19xdWFudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tYmFza2V0LnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWJhc2tldC5zdmdcIik7IH0gfVxuXG4uYy1taW5pY2FydF9fcXVhbnQtbnVtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIGZvbnQtZmFtaWx5OiBcInB0LXNhbnNcIiwgXCJkcm9pZC1zYW5zXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwJSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1taW5pY2FydF9fcXVhbnQtbnVtIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9IH1cblxuLmMtbWluaWNhcnRfX3RvdGFsIHtcbiAgY29sb3I6ICMyMDI1Mjk7XG4gIGZvbnQtZmFtaWx5OiBcInB0LXNhbnNcIiwgXCJkcm9pZC1zYW5zXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uYy1taW5pY2FydF9fY2hlY2tvdXQtbGluayB7XG4gIGNvbG9yOiAjNGQ5NGNiO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmMtbW9kYWwtLW5hdiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRkOTRjYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3NywgMTQ4LCAyMDMsIDAuOTUpOyB9XG5cbi5jLW1vZGFsLS1zZWFyY2gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMDI1Mjk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzIsIDM3LCA0MSwgMC45NSk7IH1cblxuLmMtbW9kYWwtLWNvdXJzZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYy1tb2RhbF9fY2xvc2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5jLW5hdiB1bCB7XG4gIG1hcmdpbjogMDsgfVxuXG4uYy1uYXYgbGkge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5vLWhlYWRlcl9fbmF2IC5jLW5hdiBhLFxuLm8tZm9vdGVyX19uYXYgLmMtbmF2IGEge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uYy1tb2RhbC0tbmF2IC5jLW5hdiBhIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uYy1uYXYtLWlubGluZSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLmMtbmF2LS1pbmxpbmUgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mYXFzX19uYXYgLmMtbmF2LS1pbmxpbmUgbGk6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9XG5cbi5jLW5hdi0tc3RyZXRjaCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jLW5hdi0tc3RyZXRjaCB1bCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuYy1uYXYtLXN0cmV0Y2ggdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jLW5hdi0tc3RyZXRjaCB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gIC5jLW5hdi0tc3RyZXRjaCBsaSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmMtbmF2LS1zdHJldGNoIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYy1uYXYtLXN0cmV0Y2ggbGkge1xuICAgICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgICAgIGZsZXgtZ3JvdzogMTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmMtbmF2LS1zdHJldGNoIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH0gfVxuICAuYy1uYXYtLXN0cmV0Y2ggYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWhlYWRlcl9fbmF2IC5jLW5hdi0tc3RyZXRjaCB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1oZWFkZXJfX25hdiAuYy1uYXYtLXN0cmV0Y2ggPiB1bCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5vLWhlYWRlcl9fbmF2IC5jLW5hdi0tc3RyZXRjaCBsaSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuby1oZWFkZXJfX25hdiAuYy1uYXYtLXN0cmV0Y2ggbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIC5vLWhlYWRlcl9fbmF2IC5jLW5hdi0tc3RyZXRjaCBhIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uYy1uYXYtLXZlcnRpY2FsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmMtbmF2LS12ZXJ0aWNhbCBsaS5pcy1vcGVuIC5jLW5hdl9fZHJvcGRvd24ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jLW5hdi0tdmVydGljYWwgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gICAgLmMtbW9kYWwtLW5hdiAuYy1uYXYtLXZlcnRpY2FsIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYy1uYXZfX3BhcmVudC1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jLW5hdl9fcGFyZW50LWxpbms6OmJlZm9yZSwgLmMtbmF2X19wYXJlbnQtbGluazo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5jLW5hdl9fcGFyZW50LWxpbms6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLW5hdl9fcGFyZW50LWxpbmsge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLmMtbmF2X19wYXJlbnQtbGluay5pcy1ob21lIGEgaSB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmMtbmF2X19wYXJlbnQtbGluayA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtbmF2X19wYXJlbnQtbGluayA+IGEge1xuICAgICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQsIGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pcy1vcGVuIC5jLW5hdl9fcGFyZW50LWxpbmsgPiBhLCAuYy1uYXZfX3BhcmVudC1saW5rID4gYTpmb2N1cywgLmMtbmF2X19wYXJlbnQtbGluayA+IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ5NGNiOyB9IH1cblxuLmMtbmF2X19kcm9wZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYy1uYXZfX2Ryb3Bkb3duIHtcbiAgICAgIG1hcmdpbjogMC41cmVtIGF1dG8gMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtbmF2X19kcm9wZG93biB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiA0O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0ZDk0Y2I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDc3LCAxNDgsIDIwMywgMC45Nyk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1uYXZfX2Ryb3Bkb3duIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmMtbmF2X19kcm9wZG93bi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDsgfSB9XG5cbi5jLW5hdl9fZHJvcGRvd24tY29udGVudDo6YmVmb3JlLCAuYy1uYXZfX2Ryb3Bkb3duLWNvbnRlbnQ6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7IH1cblxuLmMtbmF2X19kcm9wZG93bi1jb250ZW50OjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jLW5hdl9fZHJvcGRvd24tY29udGVudCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLmMtbmF2X19kcm9wZG93bi1saW5rczo6YmVmb3JlLCAuYy1uYXZfX2Ryb3Bkb3duLWxpbmtzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5jLW5hdl9fZHJvcGRvd24tbGlua3M6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmMtbmF2X19kcm9wZG93bi1saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9IH1cblxuLmMtbmF2X19kcm9wZG93bi1saW5rczphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMjUlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMC41cmVtIGF1dG8gMDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1uYXZfX2Ryb3Bkb3duLWxpbmtzOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5jLW5hdl9fY2hpbGQtbGluay1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuYy1uYXZfX2NoaWxkLWxpbmstY29udGFpbmVyOjpiZWZvcmUsIC5jLW5hdl9fY2hpbGQtbGluay1jb250YWluZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYy1uYXZfX2NoaWxkLWxpbmstY29udGFpbmVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1uYXZfX2NoaWxkLWxpbmstY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgd2lkdGg6IGNhbGMoMzMlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLmMtbmF2X19jaGlsZC1saW5rLWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmMtbmF2X19jaGlsZC1saW5rLWRlc2NyaXB0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYy1uYXZfX3RvZ2dsZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLW5hdl9fdG9nZ2xlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmJ1bmRsZXMgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kOm50aC1jaGlsZCgybikgPiAuZ3JpZC14ID4gLmNlbGw6Zmlyc3QtY2hpbGQge1xuICAgIG9yZGVyOiAyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmJ1bmRsZXMgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kOm50aC1jaGlsZCgybikgPiAuZ3JpZC14ID4gLmNlbGw6bGFzdC1jaGlsZCB7XG4gICAgb3JkZXI6IDE7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYnVuZGxlcyAuYy1vZmZzZXQtY29udGVudC1wb2Q6bnRoLWNoaWxkKDJuKSAuYy1vZmZzZXQtY29udGVudC1wb2RfX21lZGlhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IC00cmVtOyB9IH1cblxuLnNlYXJjaC1yZXN1bHRzIC5jLW9mZnNldC1jb250ZW50LXBvZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5jLW9mZnNldC1jb250ZW50LXBvZF9fbWVkaWEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jLW9mZnNldC1jb250ZW50LXBvZF9fbWVkaWEge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfSB9XG5cbi5jLW9mZnNldC1jb250ZW50LXBvZF9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5jLWhpcmUtcHJvZHVjdCAuYy1vZmZzZXQtY29udGVudC1wb2RfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIC5zZWFyY2gtcmVzdWx0cyAuYy1vZmZzZXQtY29udGVudC1wb2RfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5jLW9mZnNldC1jb250ZW50LXBvZF9fY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jLW9mZnNldC1jb250ZW50LXBvZF9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1vZmZzZXQtY29udGVudC1wb2RfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogMnJlbSA0cmVtOyB9IH1cbiAgLnNlYXJjaC1yZXN1bHRzIC5jLW9mZnNldC1jb250ZW50LXBvZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMXJlbSAycmVtOyB9XG5cbi5jLW9mZnNldC1jb250ZW50LXBvZF9fc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19zZWN0aW9uLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogIzRkOTRjYjsgfVxuXG4uYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYy1vZmZzZXQtY29udGVudC1wb2RfX2FjdGlvbnMge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAuc2VhcmNoLXJlc3VsdHNfX3BhZ2VzIC5jLW9mZnNldC1jb250ZW50LXBvZF9fYWN0aW9ucyB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH0gfVxuXG4uYy1wYWdlLWJhbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jLXBhZ2UtYmFubmVyIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMC41cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1wYWdlLWJhbm5lciB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cbiAgLmMtcHJvZHVjdC0tdmlldyAuYy1wYWdlLWJhbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5jLXByb2R1Y3QtLXZpZXcgLmMtcGFnZS1iYW5uZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYy1wYWdlLWJhbm5lcl9fbWVkaWEsXG4gIC5jLXBhZ2UtYmFubmVyX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jLXBhZ2UtYmFubmVyX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG5cbi5jLXBhZ2UtYmFubmVyX19jdGFzIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLXBhZ2UtYmFubmVyX19jdGFzIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuLmMtcGFnZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYy1tb2RhbCAuYy1wYWdlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5jLXBhZ2UtdGl0bGVfX2ludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICNvbi1zaXRlLW1vZGFsIC5jLXBhZ2UtdGl0bGVfX2ludHJvLFxuICAuYy1tb2RhbC0tY291cnNlIC5jLXBhZ2UtdGl0bGVfX2ludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICNvbi1zaXRlLW1vZGFsIC5jLXBhZ2UtdGl0bGVfX2ludHJvIHtcbiAgICBjb2xvcjogIzRkOTRjYjtcbiAgICBmb250LWZhbWlseTogXCJkcm9pZC1zYW5zXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5jLW1vZGFsLS1jb3Vyc2UgLmMtcGFnZS10aXRsZV9faW50cm8gc3BhbiB7XG4gICAgY29sb3I6ICM0ZDk0Y2I7IH1cblxuLmMtcHJpY2UtYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMnJlbSAxcmVtO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGY1NDdjOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuby1wcmljZS1zdHJpcCAuYy1wcmljZS1ib3gge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tcHJpY2Utc3RyaXAgLmMtcHJpY2UtYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IC01cmVtOyB9IH1cblxuLmMtcHJpY2UtYm94X190aXRsZSxcbi5jLXByaWNlLWJveF9fcHJpY2Uge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uYy1wcmljZS1ib3hfX3ByaWNlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYy1wcm9kdWN0LS1saXN0ZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG4gIC5jLXByb2R1Y3QtLWxpc3RlZC5zYWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmwtcHJvZHVjdC1saXN0aW5nIC5jLXByb2R1Y3QtLWxpc3RlZCxcbiAgLmMtbW9kYWwtLWNvdXJzZSAuYy1wcm9kdWN0LS1saXN0ZWQsXG4gIC5zZWFyY2gtcmVzdWx0cyAuYy1wcm9kdWN0LS1saXN0ZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmMtcHJvZHVjdC0tbGlzdGVkIC5jLXByb2R1Y3RfX2ltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5jLXByb2R1Y3QtLXZpZXcgLmMtcHJvZHVjdF9faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmMtcHJvZHVjdC0tbGlzdGVkIC5jLXByb2R1Y3RfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiZHJvaWQtc2Fuc1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uYy1wcm9kdWN0LS1zdGFuZGFyZCAuYy1wcm9kdWN0X190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jLXByb2R1Y3QtLXN0YW5kYXJkIC5jLXByb2R1Y3RfX3RpdGxlIHtcbiAgICAgIG9yZGVyOiAyOyB9IH1cblxuLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wcm9kdWN0X190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLmMtcHJvZHVjdC0tdmlldyAuYy1wcm9kdWN0X19wcmljZS1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYy1wcm9kdWN0LS12aWV3IC5jLXByb2R1Y3RfX3ByaWNlLWNvbnRhaW5lciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uYy1wcm9kdWN0LS12aWV3IC5jLXByb2R1Y3RfX3ByaWNlLW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYy1wcm9kdWN0LS12aWV3IC5jLXByb2R1Y3RfX3ByaWNlLW1ldGEge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmMtcHJvZHVjdC0tdmlldyAuYy1wcm9kdWN0X19wcmljZS1tZXRhIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH0gfVxuXG4uYy1wcm9kdWN0X19jb3Vyc2UtYm9va2VyIC5jLXByb2R1Y3RfX3ByaWNlLW1ldGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYy1tb2RhbC0tY291cnNlIC5jLXByb2R1Y3RfX3ByaWNlLW1ldGEge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jLXByb2R1Y3QtLXZpZXcgLmMtcHJvZHVjdF9fYWRkLXRvLWNhcnQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmMtcHJvZHVjdC0tdmlldyAuYy1wcm9kdWN0X19hZGQtdG8tY2FydCAucXVhbnRpdHkgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmMtbW9kYWwtLWNvdXJzZSAuYy1wcm9kdWN0LS1saXN0ZWQgLmMtcHJvZHVjdF9fcHJpY2Uge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmMtcHJvZHVjdC0tbGlzdGVkIC5jLXByb2R1Y3RfX3ByaWNlIGRlbCB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBmb250LWZhbWlseTogXCJkcm9pZC1zYW5zXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5jLWJ1bmRsZSAuYy1wcm9kdWN0X19wcmljZSxcbi5jLW1vZGFsLS1jb3Vyc2UgLmMtcHJvZHVjdF9fcHJpY2UsXG4uYy1wcm9kdWN0LS12aWV3IC5jLXByb2R1Y3RfX3ByaWNlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICM0ZDk0Y2I7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmMtYnVuZGxlIC5jLXByb2R1Y3RfX3ByaWNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuXG4uYy1wcm9kdWN0LS1zdGFuZGFyZCAuYy1wcm9kdWN0X19wcmljZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLXByb2R1Y3QtLXN0YW5kYXJkIC5jLXByb2R1Y3RfX3ByaWNlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnJlbTsgfSB9XG5cbi5jLXByb2R1Y3QtLXN0YW5kYXJkIC5jLXByb2R1Y3RfX3ByaWNlLW1ldGEgLmMtcHJvZHVjdF9fcHJpY2UgZGVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYy1wcm9kdWN0LS1zdGFuZGFyZCAuYy1wcm9kdWN0X19wcmljZS1tZXRhIC5jLXByb2R1Y3RfX3ByaWNlIGlucyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYy1wcm9kdWN0X19wcmljZS12YXQge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgY29sb3I6ICMyMDI1Mjk7XG4gIGZvbnQtZmFtaWx5OiBcImRyb2lkLXNhbnNcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5jLXByb2R1Y3QtLWxpc3RlZCAuYy1wcm9kdWN0X19wcmljZS12YXQge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYy1tb2RhbC0tY291cnNlIC5jLXByb2R1Y3RfX3ByaWNlLXZhdCxcbiAgLmMtcHJvZHVjdC0tdmlldyAuYy1wcm9kdWN0X19wcmljZS12YXQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4uYy1wcm9kdWN0X19wcmljZS1zdWZmaXgge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICM0ZDk0Y2I7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmMtcHJvZHVjdC0tdmlldyAuYy1wcm9kdWN0X192aWRlb3Mge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmMtcHJvZHVjdC0tdmlldyAuYy1wcm9kdWN0X19jb250ZW50LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLmMtcHJvZHVjdC0tYm9va2luZyAuYy1wcm9kdWN0X19jb250ZW50LWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYy1wcm9kdWN0LS12aWV3IC5jLXByb2R1Y3RfX2hpcmUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmMtcHJvZHVjdF9fZGVsaXZlcnktaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYy1wcm9kdWN0X19kZWxpdmVyeS1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmMtcHJvZHVjdF9fZGVsaXZlcnktaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuXG4uYy1wcm9kdWN0X19kZWxpdmVyeS1pdGVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5jLXByb2R1Y3RfX2RlbGl2ZXJ5LWl0ZW0tLWluLXN0b2NrOmJlZm9yZSB7XG4gIHdpZHRoOiAwLjg3NXJlbTtcbiAgaGVpZ2h0OiAwLjY4NzVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWNoZWNrLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tY2hlY2suc3ZnXCIpOyB9XG5cbi5jLXByb2R1Y3RfX2RlbGl2ZXJ5LWl0ZW0tLWZyZWUtZGVsaXZlcnk6YmVmb3JlIHtcbiAgd2lkdGg6IDEuMTg3NXJlbTtcbiAgaGVpZ2h0OiAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1kZWxpdmVyeS5wbmdcIik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWRlbGl2ZXJ5LnN2Z1wiKTsgfVxuXG4uYy1wcm9kdWN0X19vbnNpdGUtY291cnNlcyB7XG4gIGNvbG9yOiAjNGQ5NGNiOyB9XG5cbi5sLXByb2R1Y3QtbGlzdGluZyAuYy1wcm9kdWN0X19tZXRhLFxuLmMtbW9kYWwtLWNvdXJzZSAuYy1wcm9kdWN0X19tZXRhLFxuLnNlYXJjaC1yZXN1bHRzIC5jLXByb2R1Y3RfX21ldGEge1xuICBtYXJnaW4tdG9wOiBhdXRvOyB9XG5cbi5jLXByb2R1Y3RfX2ZyZWUtZ2lmdCxcbi5jLXByb2R1Y3RfX2ZyZWUtZ2lmdC1pbWFnZSxcbi5jLXByb2R1Y3RfX2ZyZWUtZ2lmdC12YWx1ZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0IHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgNXB4ICM0ZDk0Y2I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYy1wcm9kdWN0X19mcmVlLWdpZnQtdGl0bGUge1xuICBjb2xvcjogIzRkOTRjYjsgfVxuXG4uYy1wcm9kdWN0X19mcmVlLWdpZnQtdmFsdWUge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5jLXByb2R1Y3RfX21hbnVmYWN0dXJlci1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYy1wcm9kdWN0X19tYW51ZmFjdHVyZXItY29udGFpbmVyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jLXByb2R1Y3RfX21hbnVmYWN0dXJlci1jb250YWluZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuLmMtcHJvZHVjdF9fbWFudWZhY3R1cmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYy1wcm9kdWN0X19tYW51ZmFjdHVyZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIG9yZGVyOiAxOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1wcm9kdWN0X19tYW51ZmFjdHVyZXIge1xuICAgICAgbWF4LXdpZHRoOiAyMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAuYy1wcm9kdWN0X19tYW51ZmFjdHVyZXIgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgLmMtcHJvZHVjdF9fbWFudWZhY3R1cmVyIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmMtcXVhbnRpdHktc2VsZWN0b3Ige1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMC41cmVtIGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYy1xdWFudGl0eS1zZWxlY3RvciB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jLW1vZGFsLS1jb3Vyc2UgLmMtcXVhbnRpdHktc2VsZWN0b3Ige1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYy1xdWFudGl0eV9fZWxlbWVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH0gfVxuXG4uYy1xdWFudGl0eV9fZWxlbWVudDpmaXJzdC1jaGlsZCB7XG4gIG1heC13aWR0aDogNDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYy1xdWFudGl0eV9fZWxlbWVudDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IDAgYXV0byAxcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy1xdWFudGl0eV9fZWxlbWVudDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLXF1YW50aXR5X19lbGVtZW50OmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgLmMtbW9kYWwtLWNvdXJzZSAuYy1xdWFudGl0eV9fZWxlbWVudDpmaXJzdC1jaGlsZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jLW1vZGFsLS1jb3Vyc2UgLmMtcXVhbnRpdHlfX2VsZW1lbnQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyOyB9IH1cblxuLmMtcXVhbnRpdHktc2VsZWN0b3JfX2FjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5jLXF1YW50aXR5LXNlbGVjdG9yX190b2dnbGVyLFxuLmMtcXVhbnRpdHktc2VsZWN0b3JfX2lucHV0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jLXF1YW50aXR5LXNlbGVjdG9yX190b2dnbGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNkM2QzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5jLXF1YW50aXR5LXNlbGVjdG9yX190b2dnbGVyLmlzLWRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjc7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYy1xdWFudGl0eS1zZWxlY3Rvcl9faW5wdXQge1xuICB3aWR0aDogMzMlOyB9XG4gIC5jLXF1YW50aXR5LXNlbGVjdG9yX19pbnB1dCBpbnB1dCB7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzIwMjUyOTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRhYmxlLXNjcm9sbCAuYy10YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uYy10YWJsZSB0aGVhZCB0aCxcbi5jLXRhYmxlIHRib2R5IHRkIHtcbiAgYm9yZGVyLXJpZ2h0OiAxLjVweCBzb2xpZCAjMGY1NDdjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmMtYnVuZGxlIC5jLXRhYmxlIHRoZWFkIHRoLCAuYy1idW5kbGVcbiAgLmMtdGFibGUgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6ICM0ZDk0Y2I7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uYy1idW5kbGUgLmMtdGFibGUgdGJvZHkge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5jLXRhYmxlIHRib2R5IHRyLmlzLXVuYXZhaWxhYmxlIHRkIHtcbiAgY29sb3I6ICNiM2IzYjMgIWltcG9ydGFudDsgfVxuXG4uYy1idW5kbGUgLmMtdGFibGUgdGJvZHkgdHIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5jLXRhYmxlIHRib2R5IHRyOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICM0ZDk0Y2I7IH1cblxuLmMtYnVuZGxlIC5jLXRhYmxlIHRib2R5IHRyOmxhc3QtY2hpbGQgdGQge1xuICBjb2xvcjogI2VlNjUzNCAhaW1wb3J0YW50OyB9XG5cbi5jLXRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuXG4uYy10YWJsZSB0Ym9keSB0ciB0ZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGNvbG9yOiAjMGY1NDdjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmMtYnVuZGxlIC5jLXRhYmxlIHRib2R5IHRyIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBjb2xvcjogIzRkOTRjYjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5jLXRhYmxlLS1hbHQgdGJvZHkgdGQge1xuICBjb2xvcjogIzBmNTQ3YyAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cbiAgLmMtdGFibGUtLWFsdCB0Ym9keSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50OyB9XG5cbnRhYmxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5vLXRlc3RpbW9uaWFsLXNsaWRlciAuYy10ZXN0aW1vbmlhbCB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuby10ZXN0aW1vbmlhbC1zbGlkZXIgLmMtdGVzdGltb25pYWwge1xuICAgICAgcGFkZGluZzogMCAycmVtOyB9IH1cblxuLmMtdGVzdGltb25pYWxfX3F1b3RlIHtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYy10ZXN0aW1vbmlhbF9fcXVvdGUge1xuICAgICAgbWF4LXdpZHRoOiA3NSU7IH0gfVxuXG4uYy10ZXN0aW1vbmlhbF9fYXV0aG9yIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uYy1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmMtc2VhcmNoX19pbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4uYy1zZWFyY2hfX2J1dHRvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAuYy1zZWFyY2hfX2J1dHRvbjpob3ZlciwgLmMtc2VhcmNoX19idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5jLXNpZGViYXIge1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuc2hvcF9fc2lkZWJhciAuYy1zaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9IH1cblxuLmMtc2lkZWJhcl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5jLXN0aWNrZXIge1xuICB3aWR0aDogNi4yNXJlbTtcbiAgaGVpZ2h0OiA2LjI1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNi4yNXJlbTsgfVxuXG4uYy1zdGlja2VyLS1zYWxlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3N0aWNrZXItc2FsZS5wbmdcIik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9zdGlja2VyLXNhbGUuc3ZnXCIpOyB9XG5cbi5jLXN0aWNrZXItLWZyZWUtZ2lmdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9zdGlja2VyLWZyZWUtZ2lmdC5wbmdcIik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9zdGlja2VyLWZyZWUtZ2lmdC5zdmdcIik7IH1cblxuLmMtdmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jLXZpZGVvIGlmcmFtZSxcbiAgLmMtdmlkZW8gb2JqZWN0LFxuICAuYy12aWRlbyBlbWJlZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuICAuYy1wcm9kdWN0LS12aWV3IC5jLXZpZGVvOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLm8tY29udGVudC1ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuby1jb250ZW50LWJveCB7XG4gICAgICBwYWRkaW5nOiAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuby1jb250ZW50LWJveCB7XG4gICAgICBwYWRkaW5nOiAzcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1wcm9kdWN0LS1ib29raW5nIC5vLWNvbnRlbnQtYm94IHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5vLWNvbnRlbnQtYm94LS1jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uby1jb250ZW50LWJveF9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5vLWNvbnRlbnQtYm94X19hY3Rpb25zIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm8tY29udGVudC1ib3hfX2FjdGlvbnMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1jb250ZW50LWJveF9fYWN0aW9ucyB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbi5vLWZsYWcge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmMtbG9jYXRpb25fX2NvbnRhY3QgLm8tZmxhZzpub3QoOmxhc3QtY2hpbGQpLFxuICAuY29udGFjdC11c19fZGV0YWlscyAuby1mbGFnOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmNvbnRhY3QtdXNfX2RldGFpbHMgLm8tZmxhZyB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWl5OiBcImRyb2lkLXNhbnNcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG5cbi5vLWZsYWdfX21lZGlhLFxuLm8tZmxhZ19fY29udGVudCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm8tZmxhZy0tdG9wIC5vLWZsYWdfX21lZGlhLCAuby1mbGFnLS10b3BcbiAgLm8tZmxhZ19fY29udGVudCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAuby1mbGFnLS1ib3R0b20gLm8tZmxhZ19fbWVkaWEsIC5vLWZsYWctLWJvdHRvbVxuICAuby1mbGFnX19jb250ZW50IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbi5vLWZsYWdfX21lZGlhIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAuby1mbGFnX19tZWRpYSA+IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5vLWZsYWctLXJldiAuby1mbGFnX19tZWRpYSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jb250YWN0LXVzX19kZXRhaWxzIC5vLWZsYWdfX21lZGlhLFxuICAgIC5jLWxvY2F0aW9uX19jb250YWN0IC5vLWZsYWdfX21lZGlhLFxuICAgIC5vLWZvb3Rlcl9fY29udGFjdC1kZXRhaWxzIC5vLWZsYWdfX21lZGlhLFxuICAgIC5vLWZvb3Rlcl9fYWRkcmVzcyAuby1mbGFnX19tZWRpYSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8tZmxhZ19fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm8tZmxleGlibGUtbW9kdWxlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuby1mbGV4aWJsZS1tb2R1bGU6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG5cbi5vLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuLm8tZm9vdGVyX19tYWluIHtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmNTQ3YzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm8tZm9vdGVyX19tYWluIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuby1mb290ZXJfX21haW4gLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLm8tZm9vdGVyX19jb250YWN0LWRldGFpbHMge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5vLWZvb3Rlcl9fcGF5bWVudC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uby1mb290ZXJfX3BheW1lbnQtcG8ge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuLm8tZm9vdGVyX19uYXYge1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIC5vLWZvb3Rlcl9fbmF2IGhyIHtcbiAgICB3aWR0aDogMjcuODEyNXJlbTtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IDAgYXV0byAycmVtOyB9XG5cbi5vLWZvb3Rlcl9fY29weXJpZ2h0IHtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm8taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBib2R5OmhhcyguYy1tZXNzYWdlLWJhbm5lcikgLm8taGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5vLWhlYWRlcl9fbWFpbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm8taGVhZGVyX19kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8taGVhZGVyX19tb2JpbGUge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuby1oZWFkZXJfX21vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmNTQ3YzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAuY2VsbDpudGgtY2hpbGQoMm4pLCAuby1oZWFkZXJfX21vYmlsZS1uYXYtY29udGFpbmVyIC5jZWxsOmxhc3QtY2hpbGQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLm8taGVhZGVyX19tb2JpbGUtY29udGFjdCB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLm8taGVhZGVyX19tb2JpbGUtY29udGFjdCBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5vLWhlYWRlcl9fbW9iaWxlLWNvbnRhY3QgYTpmb2N1cywgLm8taGVhZGVyX19tb2JpbGUtY29udGFjdCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5vLWhlYWRlcl9fY29udGFjdCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuLm8taGVhZGVyX19jb250YWN0LXRpdGxlIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5vLWhlYWRlcl9fbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmNTQ3YzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLWhlYWRlcl9fbmF2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbi5vLWhlYWRlcl9fbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vLWljb24tc3RyaXAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jYWxpYnJhdGlvbl9fY29udGVudC1jb250YWluZXIgLm8taWNvbi1zdHJpcCB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2FsaWJyYXRpb25fX2NvbnRlbnQtY29udGFpbmVyIC5vLWljb24tc3RyaXAge1xuICAgICAgbWFyZ2luLXRvcDogNHJlbTsgfSB9XG5cbi5vLWljb24tc3RyaXBfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5vLWljb24tc3RyaXBfX2ljb25zIC5jZWxsOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG4uby1wcmljZS1zdHJpcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm8tcHJpY2Utc3RyaXAge1xuICAgICAgcGFkZGluZzogMnJlbSAxcmVtIDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vLXByaWNlLXN0cmlwIHtcbiAgICAgIHBhZGRpbmc6IDJyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sLWZsZXhpYmxlLW1vZHVsZXMgLm8tcHJpY2Utc3RyaXAsXG4gICAgLmNhbGlicmF0aW9uIC5vLXByaWNlLXN0cmlwIHtcbiAgICAgIG1hcmdpbi10b3A6IDZyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zdHlsZS1ndWlkZSAuby1wcmljZS1zdHJpcCB7XG4gICAgICBtYXJnaW4tdG9wOiA0cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuby1wcmljZS1zdHJpcF9fcHJpY2UtYm94ZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuby1wcmljZS1zdHJpcF9fcHJpY2UtYm94ZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG4uby1yZWxhdGVkLXByb2R1Y3RzIHtcbiAgcGFkZGluZzogMnJlbSAwOyB9XG5cbi5vLXJlbGF0ZWQtcHJvZHVjdHNfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jLW1vZGFsLS1jb3Vyc2UgLm8tcmVsYXRlZC1wcm9kdWN0c19fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLm8tc2VhcmNoX19zZWN0aW9ucyB7XG4gIHBhZGRpbmctdG9wOiA0cmVtOyB9XG5cbi5vLXNlYXJjaF9fc2VjdGlvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfVxuXG4uby1zZWFyY2hfX3NlY3Rpb24uaXMtc2VhcmNoLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm8tc2VhcmNoX19zZWN0aW9ucy5pcy1zZWFyY2hlZCAuby1zZWFyY2hfX3NlY3Rpb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5vLXNlYXJjaF9fc2VjdGlvbnMuaXMtc2VhcmNoZWQgLm8tc2VhcmNoX19zZWN0aW9uLmlzLXNlYXJjaC1yZXN1bHQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm8tc2VhcmNoX19zZWN0aW9uLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5vLXNlYXJjaF9fc2VlLW1vcmUge1xuICBjb2xvcjogIzRkOTRjYjsgfVxuICAuby1zZWFyY2hfX3NlY3Rpb25zLmlzLXNlYXJjaGVkIC5vLXNlYXJjaF9fc2VlLW1vcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLm8tc2VhcmNoX19uby1pdGVtcyB7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5vLXNlYXJjaF9fZXJyb3Ige1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vLXRlc3RpbW9uaWFsLXNsaWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmNTQ3YzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm8tdGVzdGltb25pYWwtc2xpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm8tdGVzdGltb25pYWwtc2xpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDsgfSB9XG5cbi5vLXRlc3RpbW9uaWFsLXNsaWRlcl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBjb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sLWJ1bmRsZS1saXN0aW5nIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmwtYnVuZGxlLWxpc3Rpbmcge1xuICAgIG1hcmdpbi10b3A6IDRyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sLWJ1bmRsZS1saXN0aW5nIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmwtYnVuZGxlLWxpc3RpbmcgLmNlbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sLWxvY2F0aW9uLWRpcmVjdGlvbnMgLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5sLWxvY2F0aW9uLWRpcmVjdGlvbnMgLmNlbGw6bm90KDpudGgtbGFzdC1jaGlsZCgtbisyKSkge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sLWxvY2F0aW9uLWxpc3Rpbmcge1xuICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubC1sb2NhdGlvbi1saXN0aW5nIHtcbiAgICBtYXJnaW4tdG9wOiA0cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubC1sb2NhdGlvbi1saXN0aW5nIC5jZWxsOm5vdCg6bnRoLWxhc3QtY2hpbGQoLW4rMikpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmwtbG9jYXRpb24tbGlzdGluZyAuY2VsbDpub3QoOm50aC1sYXN0LWNoaWxkKC1uKzMpKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmwtcHJvZHVjdC1jYXRlZ29yeS1saXN0aW5nIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubC1wcm9kdWN0LWNhdGVnb3J5LWxpc3RpbmcgLmNlbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmwtcHJvZHVjdC1saXN0aW5nIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmwtcHJvZHVjdC1saXN0aW5nIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLmwtcHJvZHVjdC1zZWFyY2gtcmVzdWx0cyAuY2VsbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmJ1bmRsZXNfX2J1bmRsZS1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiA0cmVtOyB9XG5cbi5jYWxpYnJhdGlvbl9fY29udGVudC1jb250YWluZXIge1xuICBwYWRkaW5nOiAycmVtIDA7IH1cbiAgLmNhbGlicmF0aW9uX19jb250ZW50LWNvbnRhaW5lci5pcy1sYXN0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY2FsaWJyYXRpb25fX21vZGFsLWludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG4uY291cnNlLWNhbGVuZGFyX190YWJsZSB7XG4gIG1hcmdpbi10b3A6IDRyZW07IH1cblxuLmNoZWNrb3V0X19yZXZpZXcge1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG5cbi5jb250YWN0LXVzX19jb250ZW50LWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuLmNvbnRhY3QtdXNfX2Zvcm0ge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5lcXVpcG1lbnQtaGlyZV9fY3RhcyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmVxdWlwbWVudC1oaXJlX19jdGFzIHtcbiAgICAgIG1hcmdpbjogMnJlbSBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZXF1aXBtZW50LWhpcmVfX2N0YXMge1xuICAgICAgbWFyZ2luOiA0cmVtIGF1dG87IH0gfVxuXG4uZXF1aXBtZW50LWhpcmVfX21vZGFsLWludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuXG4uZmFxc19fbmF2IHtcbiAgbWFyZ2luOiAycmVtIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZmFxc19fY29udGFjdCB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uaG9tZV9fYmFubmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2hvbWUtYmFubmVyLWJhY2tncm91bmQucG5nXCIpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaG9tZS1iYW5uZXItYmFja2dyb3VuZC5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDsgfVxuXG4ubG9jYXRpb25zX19jb3Vyc2UtY3RhIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5vbi1zaXRlLXRyYWluaW5nX19tb2R1bGVzIHtcbiAgbWFyZ2luLXRvcDogNHJlbTsgfVxuXG4uc2VhcmNoLXJlc3VsdHNfX3BhZ2VzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvcF9fY2F0ZWdvcmllcyB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG9wX19maWx0ZXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNob3BfX3NpZGViYXIge1xuICAgIG1hcmdpbjogMXJlbSBhdXRvOyB9IH1cblxuLnMtYWNmLW1hcCB7XG4gIHdpZHRoOiAxMDAlO1xuICAvKiBmaXhlcyBwb3RlbnRpYWwgdGhlbWUgY3NzIGNvbmZsaWN0ICovIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5zLWFjZi1tYXAge1xuICAgICAgaGVpZ2h0OiAyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnMtYWNmLW1hcCB7XG4gICAgICBoZWlnaHQ6IDMxLjI1cmVtOyB9XG4gICAgICAuY29udGFjdC11cyAucy1hY2YtbWFwIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgLnMtYWNmLW1hcCBpbWcge1xuICAgIG1heC13aWR0aDogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG5cbi5saWdodGJveCAubGItY2FuY2VsIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xpZ2h0Ym94Mi9sb2FkaW5nLmdpZlwiKSBuby1yZXBlYXQ7IH1cblxuLmxpZ2h0Ym94IC5sYi1uYXYgYS5sYi1wcmV2IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xpZ2h0Ym94Mi9wcmV2LnBuZ1wiKSBsZWZ0IDQ4JSBuby1yZXBlYXQ7IH1cblxuLmxpZ2h0Ym94IC5sYi1uYXYgYS5sYi1uZXh0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xpZ2h0Ym94Mi9uZXh0LnBuZ1wiKSByaWdodCA0OCUgbm8tcmVwZWF0OyB9XG5cbi5saWdodGJveCAubGItZGF0YSAubGItY2xvc2Uge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbGlnaHRib3gyL2Nsb3NlLnBuZ1wiKSB0b3AgcmlnaHQgbm8tcmVwZWF0OyB9XG5cbi5zLW93bC1jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYy1nYWxsZXJ5X19tYWluIC5zLW93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucy1vd2wtY2Fyb3VzZWwuaXMtaGlnaGxpZ2h0ZWQgLm93bC1pdGVtIHtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAucy1vd2wtY2Fyb3VzZWwuaXMtaGlnaGxpZ2h0ZWQgLm93bC1pdGVtLmlzLWhpZ2hsaWdodGVkIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnMtb3dsLWNhcm91c2VsIC5vd2wtbmF2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5zLW93bC1jYXJvdXNlbCAub3dsLW5hdiB7XG4gICAgICAgIHRvcDogNTAlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnMtb3dsLWNhcm91c2VsIC5vd2wtbmF2IHtcbiAgICAgICAgdG9wOiAyNSU7IH0gfVxuICAucy1vd2wtY2Fyb3VzZWwgLm93bC1wcmV2LFxuICAucy1vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IHtcbiAgICB3aWR0aDogMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgIC5jLWdhbGxlcnlfX3RodW1icyAucy1vd2wtY2Fyb3VzZWwgLm93bC1wcmV2LCAuYy1nYWxsZXJ5X190aHVtYnNcbiAgICAucy1vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IHtcbiAgICAgIGNvbG9yOiAjMjAyNTI5ICFpbXBvcnRhbnQ7IH1cbiAgICAucy1vd2wtY2Fyb3VzZWwgLm93bC1wcmV2OmFmdGVyLFxuICAgIC5zLW93bC1jYXJvdXNlbCAub3dsLW5leHQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogJycgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgIC5zLW93bC1jYXJvdXNlbCAub3dsLXByZXYge1xuICAgICAgbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucy1vd2wtY2Fyb3VzZWwgLm93bC1wcmV2IHtcbiAgICAgIGxlZnQ6IC0zcmVtOyB9IH1cbiAgLmMtZ2FsbGVyeV9fdGh1bWJzIC5zLW93bC1jYXJvdXNlbCAub3dsLXByZXYge1xuICAgIGxlZnQ6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmMtZ2FsbGVyeV9fdGh1bWJzIC5zLW93bC1jYXJvdXNlbCAub3dsLXByZXYge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9IH1cbiAgLnMtb3dsLWNhcm91c2VsIC5vd2wtcHJldjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tY2hldnJvbi1sZWZ0LnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1jaGV2cm9uLWxlZnQuc3ZnXCIpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgICAucy1vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IHtcbiAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zLW93bC1jYXJvdXNlbCAub3dsLW5leHQge1xuICAgICAgcmlnaHQ6IC0zcmVtOyB9IH1cbiAgLmMtZ2FsbGVyeV9fdGh1bWJzIC5zLW93bC1jYXJvdXNlbCAub3dsLW5leHQge1xuICAgIHJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jLWdhbGxlcnlfX3RodW1icyAucy1vd2wtY2Fyb3VzZWwgLm93bC1uZXh0IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9IH1cbiAgLnMtb3dsLWNhcm91c2VsIC5vd2wtbmV4dDphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tY2hldnJvbi1yaWdodC5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tY2hldnJvbi1yaWdodC5zdmdcIik7IH1cblxuLnMtbmluamEtZm9ybXMgLm5mLWZvcm0tZmllbGRzLXJlcXVpcmVkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5zLW5pbmphLWZvcm1zIC5sYWJlbC1sZWZ0IC5uZi1maWVsZC1sYWJlbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnMtbmluamEtZm9ybXMgLm5mLWZpZWxkLWxhYmVsIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4ucy1uaW5qYS1mb3JtcyAubmYtZmllbGQtZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cblxuLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnMtbmluamEtZm9ybXMgLnN1Ym1pdC1jb250YWluZXIgaW5wdXQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAycmVtO1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ucy13b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcsXG4ucy13b29jb21tZXJjZSAud29vY29tbWVyY2UtcGFnZSAud29vY29tbWVyY2Utb3JkZXJpbmcge1xuICBmbG9hdDogbm9uZTsgfVxuXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmRpc2FibGVkOmFmdGVyLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpkaXNhYmxlZDphZnRlcixcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6ZGlzYWJsZWRbZGlzYWJsZWRdOmFmdGVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmRpc2FibGVkOmFmdGVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uOmRpc2FibGVkOmFmdGVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXTphZnRlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmRpc2FibGVkOmFmdGVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246ZGlzYWJsZWQ6YWZ0ZXIsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF06YWZ0ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmRpc2FibGVkOmFmdGVyLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpkaXNhYmxlZDphZnRlcixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdOmFmdGVyLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDphZnRlcixcbi53b29jb21tZXJjZSBhLmJ1dHRvbjphZnRlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmFmdGVyLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLndvb2NvbW1lcmNlIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0tYnV0dG9uOmFmdGVyIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgdGJvZHksXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHRib2R5IHRyIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ud29vY29tbWVyY2UtZXJyb3IsXG4ud29vY29tbWVyY2UtaW5mbyxcbi53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgYm9yZGVyLXdpZHRoOiA1cHg7IH1cblxuLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICBib3JkZXItY29sb3I6ICNlZTY1MzQ7IH1cbiAgLndvb2NvbW1lcmNlLW1lc3NhZ2U6YmVmb3JlIHtcbiAgICBjb2xvcjogI2VlNjUzNDsgfVxuXG4ud2MtcGFvLWFkZG9uIHtcbiAgbWFyZ2luOiAxcmVtIGF1dG87IH1cbiAgLmMtcHJvZHVjdC0tc3RhbmRhcmQgLndjLXBhby1hZGRvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2QzZDNkMzsgfVxuICAgIC5jLXByb2R1Y3QtLXN0YW5kYXJkIC53Yy1wYW8tYWRkb24ucHJvZHVjdC1hZGRvbi1mcmVlLWdpZnQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuYy1wcm9kdWN0LS1zdGFuZGFyZCAud2MtcGFvLWFkZG9uIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jLXByb2R1Y3QtLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSAud2MtcGFvLWFkZG9uIGxhYmVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmMtcHJvZHVjdC0tc3RhbmRhcmQgLndjLXBhby1hZGRvbiAud29vY29tbWVyY2UtUHJpY2UtYW1vdW50IHtcbiAgICBjb2xvcjogIzRkOTRjYjtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5jLXByb2R1Y3QtLXN0YW5kYXJkICNwcm9kdWN0LWFkZG9ucy10b3RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuI3Byb2R1Y3QtYWRkb25zLXRvdGFsIHVsIGxpIHtcbiAgZ2FwOiAwIDJyZW07IH1cblxuI3Byb2R1Y3QtYWRkb25zLXRvdGFsIC53Yy1wYW8tc3VidG90YWwtbGluZSAucHJpY2Uge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICNwcm9kdWN0LWFkZG9ucy10b3RhbCAud2MtcGFvLXN1YnRvdGFsLWxpbmUgLnByaWNlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnKyBWQVQnO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICNwcm9kdWN0LWFkZG9ucy10b3RhbCAud2MtcGFvLXN1YnRvdGFsLWxpbmUgLnByaWNlIC5hbW91bnQge1xuICAgIGNvbG9yOiAjNGQ5NGNiOyB9XG5cbi5zLXdvb2NvbW1lcmNlLWJhc2tldCB1bC52YXJpYXRpb24ge1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLnMtd29vY29tbWVyY2UtYmFza2V0IHVsLnZhcmlhdGlvbiBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zLXdvb2NvbW1lcmNlLWJhc2tldCAuY291cG9uIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9IH1cblxuLnMtd29vY29tbWVyY2UtYmFza2V0IC5jb3Vwb24gaW5wdXRbdHlwZT0nc3VibWl0J10ge1xuICB3aWR0aDogYXV0bzsgfVxuXG4ucy13b29jb21tZXJjZS1iYXNrZXQgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zLXdvb2NvbW1lcmNlLWJhc2tldCAud2MtcHJvY2VlZC10by1jaGVja291dCB7XG4gICAgICBtYXJnaW46IDAgMCAwIGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5zLXdvb2NvbW1lcmNlLWJhc2tldCAud2MtcHJvY2VlZC10by1jaGVja291dCB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnMtd29vY29tbWVyY2UtYmFza2V0IC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IHtcbiAgICAgIG1heC13aWR0aDogMzAlOyB9IH1cblxuLnMtd29vY29tbWVyY2UtYmFza2V0ICNzaGlwcGluZ19tZXRob2QgbGkgaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAuMTg3NXJlbSAwLjMxMjVyZW0gMC4xODc1cmVtIDA7IH1cblxuLnMtd29vY29tbWVyY2UtYmFza2V0ICNzaGlwcGluZ19tZXRob2QgbGkgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnMtd29vY29tbWVyY2UtYmFza2V0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBmbG9hdDogbm9uZTsgfVxuXG4ucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1ib29raW5ncy1kYXRlLXBpY2tlciAudWktZGF0ZXBpY2tlciB0ZC5wYXJ0aWFsX2Jvb2tlZCBhOmJlZm9yZSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIC8qIFRoaXMgc3R5bGUgcmVtb3ZlcyB0aGUgcmVkIHRyaWFuZ2xlICovIH1cblxuLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSBmaWVsZHNldCxcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIGZpZWxkc2V0IC5waWNrZXIuaGFzRGF0ZXBpY2tlciB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLndjLWJvb2tpbmdzLWRhdGUtcGlja2VyIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLndjLWJvb2tpbmdzLWRhdGUtcGlja2VyIHtcbiAgICAgIG1heC13aWR0aDogNzUlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLndjLWJvb2tpbmdzLWRhdGUtcGlja2VyIHtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9IH1cbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIC53Yy1ib29raW5ncy1kYXRlLXBpY2tlciAubGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIC53Yy1ib29raW5ncy1kYXRlLXBpY2tlciAudWktZGF0ZXBpY2tlci13ZWVrLWVuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gLndjLWJvb2tpbmdzLWJvb2tpbmctY29zdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSAuZm9ybS1maWVsZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSAuZm9ybS1maWVsZCBpbnB1dFt0eXBlPSdudW1iZXInXSxcbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIHNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAwIDFyZW0gMCAwO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0gaW5wdXQsXG4gIC5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSBzZWxlY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5zLXdvb2NvbW1lcmNlLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybS1idXR0b24ge1xuICBwYWRkaW5nOiAwLjVyZW0gMy43NXJlbSAwLjVyZW0gMXJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjc1ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZTY1MzQgIWltcG9ydGFudDsgfVxuICAucy13b29jb21tZXJjZS1ib29raW5nIC53Yy1ib29raW5ncy1ib29raW5nLWZvcm0tYnV0dG9uOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzY0NjE4ICFpbXBvcnRhbnQ7IH1cblxuLnMtd29vY29tbWVyY2UtY2hlY2tvdXQgLnZhcmlhdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAucy13b29jb21tZXJjZS1jaGVja291dCAudmFyaWF0aW9uIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnMtd29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXBheW1lbnQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjIgIWltcG9ydGFudDsgfVxuXG4ucy13b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlIHRoZWFkLFxuLnMtd29vY29tbWVyY2UtY2hlY2tvdXQgLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlci10YWJsZSB0Zm9vdCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucy13b29jb21tZXJjZS1jaGVja291dCB1bC5vcmRlcl9kZXRhaWxzIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5zLXdvb2NvbW1lcmNlLWNoZWNrb3V0IHVsLm9yZGVyX2RldGFpbHMgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zLXdvb2NvbW1lcmNlLWNoZWNrb3V0IHVsLm9yZGVyX2RldGFpbHMgbGkgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG5cbi5zLXdvb2NvbW1lcmNlLWNoZWNrb3V0ICNzaGlwcGluZ19tZXRob2QgbGkgaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAuMTg3NXJlbSAwLjMxMjVyZW0gMC4xODc1cmVtIDA7IH1cblxuLnMtd29vY29tbWVyY2UtY2hlY2tvdXQgI3NoaXBwaW5nX21ldGhvZCBsaSBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucy13b29jb21tZXJjZS1wYWdpbmF0aW9uIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLnMtd29vY29tbWVyY2UtcGFnaW5hdGlvbiBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gICAgLnMtd29vY29tbWVyY2UtcGFnaW5hdGlvbiBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhIHtcbiAgICAgIGNvbG9yOiAjMjAyNTI5OyB9XG4gICAgLnMtd29vY29tbWVyY2UtcGFnaW5hdGlvbiBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhOmZvY3VzLFxuICAgIC5zLXdvb2NvbW1lcmNlLXBhZ2luYXRpb24gbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgYTpob3ZlcixcbiAgICAucy13b29jb21tZXJjZS1wYWdpbmF0aW9uIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHNwYW4uY3VycmVudCB7XG4gICAgICBjb2xvcjogIzRkOTRjYjtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgLnMtd29vY29tbWVyY2UtcGFnaW5hdGlvbiBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBzcGFuLmN1cnJlbnQge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4ucy13cC13aWRnZXRzIC53aWRnZXQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLnV0bC1jbGVhcmZpeDo6YmVmb3JlLCAudXRsLWNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi51dGwtY2xlYXJmaXg6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLnV0bC1zbWFsbC1hbGlnbi1jb2x1bW5zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudXRsLW1lZGl1bS1hbGlnbi1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG4udXRsLWludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBPdmVycmlkZXNcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlKTtcbiRnbG9iYWwtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kYm9keS1mb250LWZhbWlseTogJ2Ryb2lkLXNhbnMnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAncHQtc2FucycsICRib2R5LWZvbnQtZmFtaWx5O1xuXG4vLyBDb2xvdXJzXG5AZnVuY3Rpb24gY29sb3IoJGNvbG9yLCAkdG9uZTogJ2Jhc2UnKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJGNvbG9yKSwgJHRvbmUpO1xufVxuXG4kY29sb3JzOiAoXG4gICAgLy8gQmx1ZVxuICAgIGFscGhhOiAoXG4gICAgICAgIGxpZ2h0OiAjNGQ5NGNiLFxuICAgICAgICBiYXNlOiAjMGY1NDdjXG4gICAgKSxcbiAgICAvLyBPcmFuZ2VcbiAgICBiZXRhOiAoXG4gICAgICAgIGJhc2U6ICNlZTY1MzQsXG4gICAgICAgIGRhcms6ICNjNjQ2MThcbiAgICApLFxuICAgIC8vIEdyZXlcbiAgICBnYW1tYTogKFxuICAgICAgICBsaWdodDogI2YyZjJmMixcbiAgICAgICAgYmFzZTogI2QzZDNkMyxcbiAgICAgICAgZGFyazogI2IyYjJiMlxuICAgICksXG4gICAgLy8gQnJhbmRzXG4gICAgYnJhbmQ6IChcbiAgICAgICAgZmFjZWJvb2s6ICMzYjU5OTgsXG4gICAgICAgIHR3aXR0ZXI6ICMxZGExZjIsXG4gICAgICAgIGluc3RhZ3JhbTogI2UxMzA2Y1xuICAgIClcbik7XG5cbiRibGFjazogIzIwMjUyOTtcbiR3aGl0ZTogI2ZmZjtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS43NTtcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcblxuLy8gU3BhY2luZ1xuJHNtYWxsLXNwYWNpbmc6ICRnbG9iYWwtZm9udC1zaXplIC8gMjtcbiRzcGFjZTogJGdsb2JhbC1mb250LXNpemU7XG4kc3BhY2UtZG91YmxlOiAkc3BhY2UgKiAyO1xuJHNwYWNlLXRyaXBsZTogJHNwYWNlICogMztcbiRzcGFjZS1xdWFkOiAkc3BhY2UgKiA0O1xuXG4kc3BhY2UtaGFsZjogJHNtYWxsLXNwYWNpbmc7XG4kc3BhY2UtdGhpcmQ6ICRzcGFjZSAvIDM7XG4kc3BhY2UtcXVhcnRlcjogJHNwYWNlIC8gNDtcblxuJGNvbXAtc3BhY2luZzogcmVtLWNhbGMoMjUpO1xuJGNvbXAtc3BhY2luZy1kb3VibGU6ICRjb21wLXNwYWNpbmcgKiAyO1xuXG4vLyBUcmFuc2l0aW9uc1xuJGJhc2UtdGltaW5nOiAwLjJzO1xuJGJhc2UtdHJhbnNpdGlvbjogZWFzZS1pbi1vdXQ7XG5cbi8vIEFjY29yZGlvblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6IHRyYW5zcGFyZW50O1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogbm9uZTtcblxuLy8gVGFibGVcbiR0YWJsZS1ib3JkZXI6IDEuNXB4IHNvbGlkIGNvbG9yKGFscGhhKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiBmYWxzZTtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IGNvbG9yKGdhbW1hLCBsaWdodCk7XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBPdXRwdXRzIENTUyBjbGFzc2VzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBmb3VuZGF0aW9uLWdyaWQoXG4gICRyb3c6ICdyb3cnLFxuICAkY29sdW1uOiAnY29sdW1uJyxcbiAgJGNvbHVtbi1yb3c6ICdjb2x1bW4tcm93JyxcbiAgJGd1dHRlcjogJ2d1dHRlcicsXG4gICRwdXNoOiAncHVzaCcsXG4gICRwdWxsOiAncHVsbCcsXG4gICRjZW50ZXI6ICdjZW50ZXJlZCcsXG4gICR1bmNlbnRlcjogJ3VuY2VudGVyZWQnLFxuICAkY29sbGFwc2U6ICdjb2xsYXBzZScsXG4gICR1bmNvbGxhcHNlOiAndW5jb2xsYXBzZScsXG4gICRvZmZzZXQ6ICdvZmZzZXQnLFxuICAkZW5kOiAnZW5kJyxcbiAgJGV4cGFuZGVkOiAnZXhwYW5kZWQnLFxuICAkYmxvY2s6ICdibG9jaydcbikge1xuICAvLyBSb3dcbiAgLiN7JHJvd30ge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuXG4gICAgLy8gQ29sbGFwc2luZ1xuICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJiAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuXG4gICAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgKGZ1bGwtd2lkdGgpIHJvd1xuICAgICYuI3skZXhwYW5kZWR9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC4jeyRleHBhbmRlZH0pIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkZ3JpZC1jb2x1bW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAvLyBTdGF0aWMgKHVucmVzcG9uc2l2ZSkgcm93IGd1dHRlcnNcbiAgICAgIC8vXG4gICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRncmlkLWNvbHVtbi1ndXR0ZXIge1xuICAgICAgICAmLiN7JGd1dHRlcn0tI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCR2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uXG4gIC4jeyRjb2x1bW59IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbDtcblxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmLiN7JGVuZH0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLiN7JHJvd30gLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBDb2x1bW4gd2lkdGhcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU291cmNlIG9yZGVyaW5nXG4gICAgICBAaWYgJGkgPCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoJGkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC0kaSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRvZmZzZXR9LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtb2ZmKCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KCRpLCAnLiN7JGNvbHVtbn0nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7IH1cblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRleHBhbmRlZH0uI3skcm93fSAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfS4jeyRyb3d9IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkLXpmLXNpemUpOyB9XG4gICAgfVxuXG4gICAgLy8gUG9zaXRpb25pbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNlbnRlcn0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLy8gR3V0dGVyIGFkanVzdG1lbnRcbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY2VudGVyfSxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LTAsXG4gICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0wIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXVucG9zO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWQgY29sdW1uc1xuICAuI3skY29sdW1ufS0jeyRibG9ja30ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIEBpZiAkY29sdW1uID09ICdjb2x1bW4nIGFuZCBoYXMtdmFsdWUoJGdyaWQtY29sdW1uLWFsaWFzKSB7XG4gICAgLiN7JGdyaWQtY29sdW1uLWFsaWFzfSB7XG4gICAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBwbGFjZWhvbGRlci1pbi1leHRlbmRcbiAgICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIHdpZHRoIG9mIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkd2lkdGggWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCB0byBtYWtlIHRoZSBjb2x1bW4uIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXNpemUoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXNpemVcbkBtaXhpbiBncmlkLWNvbC1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiBhIGNvbHVtbiBiYXNlZCBvbiBhIG51bWJlciBvZiBmYWN0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGNvbHVtbnNcbi8vLyAgIFdpZHRoIG9mIHRoZSBjb2x1bW4uIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHBlcmNlbnRhZ2UgdmFsdWUgd2lsbCBtYWtlIHRoZSBjb2x1bW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIHNpbmdsZSBkaWdpdCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBzcGFuIHRoYXQgbnVtYmVyIG9mIGNvbHVtbnMgd2lkZSwgdGFraW5nIGludG8gYWNjb3VudCB0aGUgY29sdW1uIGNvdW50IG9mIHRoZSBwYXJlbnQgcm93LlxuLy8vICAgLSBBIGxpc3Qgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiICh3aXRob3V0IHF1b3Rlcykgd2lsbCBtYWtlIGEgY29sdW1uIHRoYXQgaXMgKngqIGNvbHVtbnMgd2lkZSwgYXNzdW1pbmcgKnkqIHRvdGFsIGNvbHVtbnMgZm9yIHRoZSBwYXJlbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIGNhbGN1bGF0ZWQgcGVyY2VudGFnZSB2YWx1ZS5cbkBmdW5jdGlvbiBncmlkLWNvbHVtbigkY29sdW1ucykge1xuICAkd2lkdGg6IDAlO1xuXG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBhbmQgY29sdW1uIGNvdW50c1xuICBAaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRjb2x1bW5zKSA9PSAnJScge1xuICAgICAgJHdpZHRoOiAkY29sdW1ucztcbiAgICB9XG4gICAgQGVsc2UgaWYgJGNvbHVtbnMgPCAxIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyAvICRncmlkLWNvbHVtbi1jb3VudCk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlIGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdsaXN0JyB7XG4gICAgQGlmIGxlbmd0aCgkY29sdW1ucykgIT0gMyB7XG4gICAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIi4nO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UobnRoKCRjb2x1bW5zLCAxKSAvIG50aCgkY29sdW1ucywgMykpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFueXRoaW5nIGVsc2UgaXMgaW5jb3JyZWN0XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiLic7XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgLy8gUG9zaXRpb25cbiAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGF1dG8pO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHJvdy4gVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBhZGRpbmcgYC5yb3dgIGFuZCBgLmNvbHVtbmAgdG8gdGhlIHNhbWUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFdpZHRoIG9mIHRoZSBndXR0ZXJzIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBjb2x1bW4gcm93LiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAmLFxuICAmOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBmdW5jdGlvbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEByZXR1cm4gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AbWl4aW4gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygkZ3V0dGVycyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gSXQgY2FuIGJlOlxuLy8vICAgKiBBIG51bWJlcjogVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnRcbi8vLyAgICAgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlXG4vLy8gICAgIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC5cbi8vLyAgICogYGNlbnRlcmA6IENvbHVtbiB3aWxsIGJlIGNlbnRlcmVkXG4vLy8gICAqIGBhdXRvYDogQ29sdW1uIHdpbGwgYmUgcHVzaGVkIHRvIHRoZSBsZWZ0IChvciB0byB0aGUgcmlnaHQgZm9yIHRoZSBsYXN0IGNvbHVtbikuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIC8vIEF1dG8gcG9zaXRpb25pbmdcbiAgQGlmICRwb3NpdGlvbiA9PSBhdXRvIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoL3B1bGxcbiAgQGVsc2UgaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG5cbiAgLy8gQ2VudGVyIHBvc2l0aW9uaW5nXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIFwiY2VudGVyXCIgb3IgXCJhdXRvXCIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihhdXRvKTtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0IGJ5IGAkbmAgY29sdW1ucy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFdpZHRoIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbi8vLyBEaXNhYmxlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBsYXN0IGNvbHVtbiBpbiBhIHJvdyBhbGlnbmluZyB0byB0aGUgb3Bwb3NpdGUgZWRnZS5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAvLyBUaGlzIGV4dHJhIHNwZWNpZmljaXR5IGlzIHJlcXVpcmVkIGZvciB0aGUgcHJvcGVydHkgdG8gYmUgYXBwbGllZFxuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXVucG9zIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbjtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLW9mZnNldCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tb2Zmc2V0XG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1lbmQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWVuZFxuQG1peGluIGdyaWQtY29sLWVuZCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNvbHVtbiddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZ3V0dGVyXG4vLy8gICBUaGUgZ3V0dGVyIHRvIGFwcGx5IHRvIGNoaWxkIGVsZW1lbnRzLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gJGdyaWQtY29sdW1uLWd1dHRlciB3aWxsIHVzZSB0aGUgdmFsdWVzIGluIHRoZSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIG1hcCwgaW5jbHVkaW5nIGJyZWFrcG9pbnQgc2l6ZXMuXG4vLy8gICAtIEEgZml4ZWQgbnVtZXJpYyB2YWx1ZSB3aWxsIGFwcGx5IHRoaXMgZ3V0dGVyIHRvIGFsbCBicmVha3BvaW50cy5cbkBtaXhpbiBncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jb2x1bW4nLFxuICAkZ3V0dGVyOiBudWxsXG4pIHtcbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgxLyRuKTtcblxuICAgIC8vIElmIGEgJGd1dHRlciB2YWx1ZSBpcyBwYXNzZWRcbiAgICBAaWYoJGd1dHRlcikge1xuICAgICAgLy8gR3V0dGVyc1xuICAgICAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRndXR0ZXIge1xuICAgICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkdmFsdWUpIC8gMjtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgjeyRufW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGV4dHJhIENTUyB0byBibG9jayBncmlkIGNoaWxkcmVuIHNvIHRoZSBsYXN0IGl0ZW1zIGluIHRoZSByb3cgY2VudGVyIGF1dG9tYXRpY2FsbHkuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbHVtbnMsIG5vdCB0aGUgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXBwZWFyIGluIGVhY2ggcm93LlxuQG1peGluIGdyaWQtbGF5b3V0LWNlbnRlci1sYXN0KCRuKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRvICRuIHtcbiAgICBAaWYgJGkgPT0gMSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRufW4rMSk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gMTAwLyRuICogJGkpIC8gMiAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRufW4rMSk6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoKTtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkZ3JpZC1jb2x1bW5zLCBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICAgICYuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgfVxuXG4gICAgJi5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gIH1cbiAgLmdyaWQteCB7XG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgYWxsIHByaW9yIGJyZWFrcG9pbnRzLlxuICAgICAgLy8gQXMgdGhlaXIgZ3V0dGVyIGlzIGRlZmluZWQgd2l0aCB0aGVpciB3aWR0aC9oZWlnaHQsIGV2ZW4gYnJlYWtwb2ludCB3aXRob3V0IGEgbmV3IG1hcmdpbiBtdXN0IGJlXG4gICAgICAvLyBnZW5lcmF0ZWQgdG8gbm90IGhhdmluZyB0aGVpciB3aWR0aC9oZWlnaHQgb3ZlcnJpZGVkIGJ5IHJlLWFkanVzdGVkIHNtYWxsZXIgYnJlYWtwb2ludHMuXG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJC16Zi1zaXplLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFBhZGRpbmcgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktcGFkZGluZy1ncmlkLWNsYXNzZXMge1xuICAuZ3JpZC1wYWRkaW5nLXgge1xuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgZ3JpZHMgd2l0aGluIGBncmlkLWNvbnRhaW5lci9ncmlkLWNvbnRhaW5lci5mbHVpZGBcbiAgICAvLyBUaGlzIGFsbG93cyBtYXJnaW4gYW5kIHBhZGRpbmcgZ3JpZHMgdG8gbGluZSB1cCB3aXRoIGVhY2hvdGhlclxuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gJiB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCbG9jayBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkYnJlYWtwb2ludDogJC16Zi1zaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sbGFwc2UgY2xhc3Nlc1xuQG1peGluIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgICAgLiN7JGJwfS1tYXJnaW4tY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogbWFyZ2luLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgICAgLiN7JGJwfS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT2Zmc2V0IGNsYXNzZXNcbkBtaXhpbiB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLW1hcmdpbi14ID4gLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZlcnRpY2FsIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcyhcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlXG4pIHtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgZmFsc2UpO1xuXG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtcmVzZXQoKTtcbiAgICB9XG5cbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgYW5kIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlLCAkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICR2ZXJ0aWNhbDogdHJ1ZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuXG4gICAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgICA+IC5jZWxsIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gIH1cblxufVxuXG5AbWl4aW4geHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkOiB0cnVlLCAkbWFyZ2luLWdyaWQ6IHRydWUpIHtcbiAgLy8gRnJhbWVkIGdyaWQgc3R5bGVzXG4gIC5ncmlkLWZyYW1lIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICB9XG5cbiAgLmNlbGwgLmdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICB9XG5cbiAgLmNlbGwtYmxvY2sge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgfVxuXG4gIC5jZWxsLWJsb2NrLXkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gIH1cblxuXG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuXG4gICAgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gICAgfVxuXG4gICAgLmNlbGwgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICR2ZXJ0aWNhbC1ncmlkIHtcbiAgICAuZ3JpZC15IHtcbiAgICAgICYuZ3JpZC1mcmFtZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgICYuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgICAuY2VsbCB7XG4gICAgICAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICB9XG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgIC5ncmlkLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRpbmNsdWRlLWJhc2U6IGZhbHNlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgLmdyaWQtbWFyZ2luLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpbmFsIGNsYXNzZXNcbkBtaXhpbiBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcyhcbiAgJGJhc2UtZ3JpZDogdHJ1ZSxcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlLFxuICAkYmxvY2stZ3JpZDogdHJ1ZSxcbiAgJGNvbGxhcHNlOiB0cnVlLFxuICAkb2Zmc2V0OiB0cnVlLFxuICAkdmVydGljYWwtZ3JpZDogdHJ1ZSxcbiAgJGZyYW1lLWdyaWQ6IHRydWVcbikge1xuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgQGlmKCRiYXNlLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1iYXNlLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gTWFyZ2luIGdyaWRcbiAgQGlmKCRtYXJnaW4tZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFBhZGRpbmcgZ3JpZFxuICBAaWYoJHBhZGRpbmctZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBCbG9jayBncmlkXG4gIEBpZigkYmxvY2stZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gQ29sbGFwc2UgZ3V0dGVyc1xuICBAaWYoJGNvbGxhcHNlKSB7XG4gICAgQGluY2x1ZGUgeHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBPZmZzZXQgZ3V0dGVyc1xuICBAaWYoJG9mZnNldCkge1xuICAgIEBpbmNsdWRlIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyaWRcbiAgQGlmKCR2ZXJ0aWNhbC1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICBAaWYgKCRmcmFtZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkLCAkbWFyZ2luLWdyaWQpXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpIC8gMjtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLy8vIENyZWF0ZXMgYSBjb250YWluZXIgZm9yIHlvdXIgZmxleCBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbaG9yaXpvbnRhbF0gLSBFaXRoZXIgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbCBkaXJlY3Rpb24gb2YgY2VsbHMgd2l0aGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHdyYXAgW3RydWVdIC0gSWYgdGhlIGNlbGxzIHdpdGhpbiBzaG91bGQgd3JhcCBvciBub3QuXG5AbWl4aW4geHktZ3JpZChcbiAgJGRpcmVjdGlvbjogaG9yaXpvbnRhbCxcbiAgJHdyYXA6IHRydWVcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uID09ICdob3Jpem9udGFsJywgcm93LCBjb2x1bW4pO1xuICAkd3JhcDogaWYoJHdyYXAsIHdyYXAsIG5vd3JhcCk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiAkZGlyZWN0aW9uICR3cmFwO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzNgLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgbiBvZiBuIGFuZCBudW1iZXIgY291bnRzXG4gIEBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJHNpemUpID09ICclJyB7XG4gICAgICAkc2l6ZTogJHNpemU7XG4gICAgfVxuICAgIEBlbHNlIGlmICRzaXplIDwgMSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplIC8gJGdyaWQtY29sdW1ucyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIG9yIFwibi9uXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRzaXplKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIiBvciBcIm4vblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKG50aCgkc2l6ZSwgMSkgLyBudGgoJHNpemUsIDMpKTtcbiAgICB9XG4gIH1cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciB4eS1jZWxsLXNpemUoKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiIC8gXCJuL25cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkc2l6ZTtcbn1cblxuLy8vIFNldHMgYmFzZSBmbGV4IHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIEFjY2VwdHMgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgIG9yIGBncm93YC5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIC8vIFRoaXMgaXMgdGhlIGJhc2Ugc3R5bGUsIGFsbCBvdGhlcnMgaW5oZXJpdCBmcm9tIGl0XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWluLWhlaWdodDogMHB4O1xuICAgIG1pbi13aWR0aDogMHB4O1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnZ3JvdycpIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgd2lkdGgsIGhlaWdodCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIG1heC0jeyRkaXJlY3Rpb259OiBub25lO1xufVxuXG4vLyBTZXRzIG91ciBjZWxsIHdpZHRocyBvciBoZWlnaHRzIGRlcGVuZGluZyBvbiBndXR0ZXIgdHlwZS5cbkBtaXhpbiAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkbWFyZ2luLWd1dHRlciwgJHZlcnRpY2FsKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgI3t4eS1jZWxsLXNpemUoJHNpemUpfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9IC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnAtaXMtZmFsbGJhY2s6IGZhbHNlO1xuXG4gIEBpZigkYnJlYWtwb2ludCA9PSBudWxsKSB7XG4gICAgLy8gSWYgYCRicC1zaXplYCBpcyBhdmFpbGFibGUgdGhlbiB1c2UgdGhpcywgb3RoZXJ3aXNlIHJldmVydCB0byB0aGUgc21hbGxlc3QgYnAuXG4gICAgQGlmKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICAgICRicmVha3BvaW50OiAkLXpmLXNpemU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgICAgICRicC1pcy1mYWxsYmFjazogdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvLyBHZXQgdGhlIGd1dHRlciBmb3IgdGhlIGdpdmVuIGJyZWFrcG9pbnQvdmFsdWUuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgZmFsbGJhY2ssIHVzZSBhIGZhbGxiYWNrIGd1dHRlciBhcyB3ZWxsXG4gIEBpZiAoJGJwLWlzLWZhbGxiYWNrID09IHRydWUgYW5kICRndXR0ZXIgPT0gbnVsbCkge1xuICAgICRndXR0ZXI6IDA7XG4gIH1cblxuICBAaWYoJGd1dHRlciAhPSBudWxsKSB7XG4gICAgLy8gQmFzZSBmbGV4IHByb3BlcnRpZXNcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoJHNpemUpO1xuXG4gICAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAaWYgJGd1dHRlci1vdXRwdXQge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ3h5LWNlbGw6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiLCBjZWxsIHdhcyBub3QgZ2VuZXJhdGVkYCdcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoZGVmYXVsdCkgZm9yIDEwMCUgd2lkdGgsIGBhdXRvYCB0byB1c2UgdXAgYXZhaWxhYmxlIHNwYWNlIGFuZCBgc2hyaW5rYCB0byB1c2UgdXAgb25seSByZXF1aXJlZCBzcGFjZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJGd1dHRlciwgJHZlcnRpY2FsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgMCwgJHZlcnRpY2FsKTtcbiAgfVxuXG4gIC8vIElmIHdlIHdhbnQgdG8gb3V0cHV0IHRoZSBndXR0ZXJzXG4gIEBpZigkZ3V0dGVyLW91dHB1dCkge1xuICAgIC8vIFRPRE86IEZpZ3VyZSBvdXQgaWYgd2UgbmVlZCB0byBwYXNzIGJyZWFrcG9pbnQgaW4gaGVyZSB0b28uXG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gIG9yIGBwYWRkaW5nYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkc2l6ZTogcGVyY2VudGFnZSgxLyRuKTtcblxuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCRzaXplLCAkZ3V0dGVyLW91dHB1dCwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENvbGxhcHNlcyB0aGUgZ3JpZCBhIGNlbGxzIHdpdGhpbiBpdC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWy5jZWxsXSAtIFRoZSBjaGlsZCBlbGVtZW50IHRvIHJlbW92ZSB0aGUgZ3V0dGVyIGZyb20uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gcmVtb3ZlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb25zIHRvIHJlbW92ZSBndXR0ZXJzIGZyb20uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG1pbi1icmVha3BvaW50IFskLXpmLXplcm8tYnJlYWtwb2ludF0gLSBNaW5pbXVtIGJyZWFrcG9pbnQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGZvciB3aGljaCB0byBjb2xsYXBzZSB0aGUgZ3V0dGVyLlxuQG1peGluIHh5LWdyaWQtY29sbGFwc2UoXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRtaW4tYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnRcbikge1xuICAvLyBGaXJzdCwgbGV0cyBuZWdhdGUgYW55IG1hcmdpbnMgb24gdGhlIHRvcCBsZXZlbFxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICRleGNsdWRlZC1icHM6IC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJG1pbi1icmVha3BvaW50KTtcblxuICAgIC8vIE91dHB1dCBuZXcgd2lkdGhzIHRvIG5vdCBpbmNsdWRlIGd1dHRlcnNcbiAgICBAZWFjaCAkYnAgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYoc2wtY29udGFpbigkZXhjbHVkZWQtYnBzLCAkYnApKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0L2JvdHRvbSBieSBgJG5gIGNvbHVtbnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFNpemUgdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgemYtY2VsbCgpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gTWFwIG9mIGd1dHRlcnMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIFRoZSB0eXBlIG9mIGd1dHRlciB0byB1c2UuIENhbiBiZSBgbWFyZ2luYCBvciBgcGFkZGluZ2Bcbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UgZm9yIGAkZ3V0dGVyc2AuIFNlZSBgLXpmLWJyZWFrcG9pbnQtdmFsdWUoKWAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgdGhlIG9mZnNldC4gSWYgc2V0IHRvIHRydWUgd2lsbCBhcHBseSBtYXJnaW4tdG9wIGluc3RlYWQuXG5AbWl4aW4geHktY2VsbC1vZmZzZXQoXG4gJG4sXG4gJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkYnJlYWtwb2ludCwgJGd1dHRlcnMpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG4gICAgJGd1dHRlci1tYXJnaW46IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgJGd1dHRlciwgMCk7XG4gICAgJHNpemU6IGlmKCRndXR0ZXItbWFyZ2luID09IDAsICN7eHktY2VsbC1zaXplKCRuKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJG4pfSArICN7JGd1dHRlci1tYXJnaW59KSk7XG5cbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skc2l6ZX07XG4gIH1cbn1cbiIsIi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgaGVpZ2h0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICB3aWR0aDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBNb2RpZmllcyBhIGNlbGwgdG8gZ2l2ZSBpdCBcImJsb2NrXCIgYmVoYXZpb3IgKG92ZXJmbG93IGF1dG8sIGluZXJ0aWFsIHNjcm9sbGluZylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuQG1peGluIHh5LWNlbGwtYmxvY2soXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkcHJvcGVydHk6IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCAnb3ZlcmZsb3cteScsICdvdmVyZmxvdy14Jyk7XG5cbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfSBAZWxzZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4vLy8gQ29udGFpbmVyIGZvciBpbnNpZGUgYSBncmlkIGZyYW1lIGNvbnRhaW5pbmcgbXVsdGlwbGUgYmxvY2tzLiBUeXBpY2FsbHkgdXNlZFxuLy8vIGFzIGEgbW9kaWZpZXIgZm9yIGEgYC5jZWxsYCB0byBhbGxvdyB0aGUgY2VsbCB0byBwYXNzIGFsb25nIGZsZXggc2l6aW5nXG4vLy8gY29uc3RyYWludHMgLyBmcm9tIHBhcmVudHMgdG8gY2hpbGRyZW4uXG5AbWl4aW4geHktY2VsbC1ibG9jay1jb250YWluZXIoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG5cbiAgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJysnO1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxMyc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbil7XG4gICQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICAgJ2xlZnQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LWVuZCwgZmxleC1zdGFydCksXG4gICAgJ3JpZ2h0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1zdGFydCwgZmxleC1lbmQpLFxuICAgICdjZW50ZXInOiBjZW50ZXIsXG4gICAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAgICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4gICk7XG5cbiAgQHJldHVybiAkLXpmLWZsZXgtanVzdGlmeTtcbn1cblxuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgYWN0aXZhdGUtcXVldWUtY2xhc3M6ICdpcy1hbmltYXRpbmcnLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEludGVybmFsIGNvdW50ZXIgZm9yIGNyZWF0aW5nIHVuaXF1ZSBrZXlmcmFtZSBuYW1lc1xuJC1tdWktY3VzdG9tOiAwO1xuXG4vLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucy4gVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBgbXVpLWFuaW1hdGlvbmAgaWYgeW91IHdhbnQgdG8gY3JlYXRlIGEga2V5ZnJhbWUgYW5pbWF0aW9uICp3aXRob3V0KiBhdXRvbWF0aWNhbGx5IGFzc2lnbmluZyBpdCB0byB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBrZXlmcmFtZS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cblxuLy8vIFByaW50cyB0aGUgQ1NTIHByb3BlcnRpZXMgZnJvbSBhIHNwZWNpZmljIGtleSBpbiBhIGtleWZyYW1lcyBtYXAuIFVzZWQgdG8gYm9ycm93IENTUyBmcm9tIGtleWZyYW1lIGZ1bmN0aW9ucyBmb3IgdXNlIGluIHRyYW5zaXRpb25zLlxuLy8vIEBwYXJhbSB7TWFwfSAka2YgLSBLZXlmcmFtZSBtYXAgdG8gZXh0cmFjdCBmcm9tLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAka2V5IC0gS2V5IGluIHRoZSBtYXAgdG8gcHJpbnQgdGhlIENTUyBvZi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtbXVpLWtleWZyYW1lLWdldCgka2YsICRrZXkpIHtcbiAgJG1hcDogbWFwLWdldCgka2YsICRrZXkpO1xuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCBvciAoKSB7XG4gICAgLy8gU29tZSBrZXlmcmFtZSBtYXBzIHN0b3JlIHRyYW5zZm9ybXMgYXMgcXVvdGVkIHN0cmluZ3NcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdzdHJpbmcnIHtcbiAgICAgICR2YWx1ZTogdW5xdW90ZSgkdmFsdWUpO1xuICAgIH1cbiAgICAjeyRwcm9wfTogJHZhbHVlO1xuICB9XG59XG5cbi8vLyBSZWZvcm1hdHMgYSBtYXAgY29udGFpbmluZyBrZXlzIHdpdGggYSBsaXN0IG9mIHZhbHVlcywgc28gdGhhdCBlYWNoIGtleSBpcyBhIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzcGxpdCB1cC5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgcmVmb3JtYXR0ZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCkge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gU3BsaXQga2V5cyB3aXRoIG11bHRpcGxlIHZhbHVlcyBpbnRvIGluZGl2aWR1YWwga2V5c1xuICBAZWFjaCAka2V5LCAkaXRlbSBpbiAkbWFwIHtcbiAgICAka2V5LXR5cGU6IHR5cGUtb2YoJGtleSk7XG5cbiAgICBAaWYgJGtleS10eXBlID09ICdudW1iZXInIHtcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkaXRlbSkpO1xuICAgIH0gQGVsc2UgaWYgJGtleS10eXBlID09ICdsaXN0JyB7XG4gICAgICBAZWFjaCAkayBpbiAka2V5IHtcbiAgICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrOiAkaXRlbSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyBhIHNlcmllcyBvZiBrZXlmcmFtZSBvYmplY3RzIGludG8gb25lLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbWFwOiBjYWxsKCRtYXApO1xuICAgIH1cblxuICAgICRtYXA6IC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCk7XG5cbiAgICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBpbiB0aGUgbWFwXG4gICAgLy8gJGtleSBpcyB0aGUga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIC8vICR2YWx1ZSBpcyBhIG1hcCBvZiBDU1MgcHJvcGVydGllc1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICRuZXctdmFsdWU6ICgpO1xuXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJG5ldy1tYXAsICRrZXkpIHtcbiAgICAgICAgLy8gSWYgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUga2V5ZnJhbWUgJSwgYXBwZW5kIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogLW11aS1tZXJnZS1wcm9wZXJ0aWVzKG1hcC1nZXQoJG5ldy1tYXAsICRrZXkpLCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIE90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IG1hcCB3aXRoIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5hbGx5LCBtZXJnZSB0aGUgbW9kaWZpZWQga2V5ZnJhbWUgdmFsdWUgaW50byB0aGUgb3V0cHV0IG1hcFxuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRuZXctdmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWtlIGEgbmFtZSBmb3IgdGhlIGtleWZyYW1lc1xuICAkLW11aS1jdXN0b206ICQtbXVpLWN1c3RvbSArIDEgIWdsb2JhbDtcbiAgJG1hcC1uYW1lOiAobmFtZTogJ2N1c3RvbS0jeyQtbXVpLWN1c3RvbX0nKTtcbiAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgJG1hcC1uYW1lKTtcblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgdHdvIG1hcHMgb2YgQ1NTIHByb3BlcnRpZXMgaW50byBvbmUgbWFwLiBJZiBib3RoIG1hcHMgaGF2ZSBhIHRyYW5zZm9ybSBwcm9wZXJ0eSwgdGhlIHZhbHVlcyBmcm9tIGVhY2ggd2lsbCBiZSBjb21iaW5lZCBpbnRvIG9uZSBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge01hcH0gJG9uZSAtIEZpcnN0IG1hcCB0byBtZXJnZS5cbi8vLyBAcGFyYW0ge01hcH0gJHR3byAtIFNlY29uZCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLW1lcmdlLXByb3BlcnRpZXMoJG9uZSwgJHR3bykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG9uZSwgdHJhbnNmb3JtKSBhbmQgbWFwLWhhcy1rZXkoJHR3bywgdHJhbnNmb3JtKSB7XG4gICAgJHRyYW5zZm9ybTogam9pbihtYXAtZ2V0KCRvbmUsIHRyYW5zZm9ybSksIG1hcC1nZXQoJHR3bywgdHJhbnNmb3JtKSk7XG4gICAgJG9uZTogbWFwLW1lcmdlKCRvbmUsICh0cmFuc2Zvcm06ICR0cmFuc2Zvcm0pKTtcbiAgICAkdHdvOiBtYXAtcmVtb3ZlKCR0d28sIHRyYW5zZm9ybSk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkb25lLCAkdHdvKTtcbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2xpZGluZyB0cmFuc2l0aW9uIGJ5IHRyYW5zbGF0aW5nIHRoZSBlbGVtZW50IGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbGVmdF0gLSBEaXJlY3Rpb24gdG8gc2xpZGUgdG8uIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGFtb3VudCBbMTAwJV0gLSBMZW5ndGggb2YgdGhlIHNsaWRlIGFzIGEgcGVyY2VudGFnZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zbGlkZSAoXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGxlZnQsXG4gICRhbW91bnQ6IDEwMCUsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNsaWRlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc2xpZGU6IHNsaWRlKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgLy8gQ1NTIE91dHB1dFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFswXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gWzFdIC0gT3BhY2l0eSB0byBlbmQgb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDAsXG4gICR0bzogMSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgZWZmZWN0IGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbkBmdW5jdGlvbiBoaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrXG4pIHtcbiAgLy8gUm90YXRpb24gZGlyZWN0aW9ucyB3aGVuIGhpbmdpbmcgZnJvbSBiYWNrIHZzLiBmcm9udFxuICAkcm90YXRpb24tYW1vdW50OiA5MGRlZztcbiAgJHJvdGF0aW9ucy1iYWNrOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgKTtcbiAgJHJvdGF0aW9ucy1mcm9tOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgKTtcblxuICAvLyBSb3RhdGlvbiBvcmlnaW5cbiAgJHJvdGF0aW9uOiAnJztcbiAgQGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWZyb250IHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1mcm9tLCAkZnJvbSk7XG4gIH0gQGVsc2UgaWYgJHR1cm4tb3JpZ2luID09IGZyb20tYmFjayB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtYmFjaywgJGZyb20pO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnJHR1cm4tb3JpZ2luIG11c3QgYmUgZWl0aGVyIFwiZnJvbS1iYWNrXCIgb3IgXCJmcm9tLWZyb250XCInO1xuICB9XG5cbiAgLy8gU3RhcnQgYW5kIGVuZCBzdGF0ZVxuICAkc3RhcnQ6ICcnO1xuICAkZW5kOiAnJztcbiAgQGlmICRzdGF0ZSA9PSBpbiB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgfSBAZWxzZSB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgfVxuXG4gIC8vIFR1cm4gYXhpc1xuICAkb3JpZ2luOiAnJztcbiAgQGlmICRheGlzID09IGVkZ2Uge1xuICAgICRvcmlnaW46ICRmcm9tO1xuICB9IEBlbHNlIHtcbiAgICAkb3JpZ2luOiBjZW50ZXI7XG4gIH1cblxuICAka2V5ZnJhbWVzOiAoXG4gICAgbmFtZTogJ2hpbmdlLSN7JHN0YXRlfS0jeyRmcm9tfS0jeyRheGlzfS0jeyR0dXJuLW9yaWdpbn0nLFxuICAgIDA6ICh0cmFuc2Zvcm06ICRzdGFydCwgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbiksXG4gICAgMTAwOiAodHJhbnNmb3JtOiAkZW5kKSxcbiAgKTtcblxuICBAcmV0dXJuICRrZXlmcmFtZXM7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW2Zyb20tYmFja10gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFjayxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMS41XSAtIFNpemUgdG8gc3RhcnQgYXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFsxXSAtIFNpemUgdG8gZW5kIGF0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktem9vbShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDEuNSxcbiAgJHRvOiAxLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRkaXJlY3Rpb24gW2N3XSAtIERpcmVjdGlvbiB0byBzcGluLiBTaG91bGQgYmUgYGN3YCAoY2xvY2t3aXNlKSBvciBgY2N3YCAoY291bnRlcmNsb2Nrd2lzZSkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhbW91bnQgWzAuNzV0dXJuXSAtIEFtb3VudCB0byBlbGVtZW50IHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNwaW4oXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGN3LFxuICAkYW1vdW50OiAwLjc1dHVybixcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc3Bpbi1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNwaW46IHNwaW4oJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiaHRtbC5sYi1kaXNhYmxlLXNjcm9sbGluZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIFBvc2l0aW9uIGZpeGVkIHJlcXVpcmVkIGZvciBpT1MuIEp1c3QgcHV0dGluZyBvdmVyZmxvdzogaGlkZGVuOyBvbiB0aGUgYm9keSBpcyBub3QgZW5vdWdoLiAqL1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDB2dztcbn1cblxuLmxpZ2h0Ym94T3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT04MCk7XG4gIG9wYWNpdHk6IDAuODtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxpZ2h0Ym94IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwMDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5saWdodGJveCAubGItaW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcblxuICAvKiBJbWFnZSBib3JkZXIgKi9cbiAgYm9yZGVyOiA0cHggc29saWQgd2hpdGU7XG59XG5cbi5saWdodGJveCBhIGltZyB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmxiLW91dGVyQ29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAqem9vbTogMTtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gIC8qIEJhY2tncm91bmQgY29sb3IgYmVoaW5kIGltYWdlLlxuICAgICBUaGlzIGlzIHZpc2libGUgZHVyaW5nIHRyYW5zaXRpb25zLiAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxuLmxiLW91dGVyQ29udGFpbmVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ubGItbG9hZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDQzJTtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAyNSU7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4ubGItY2FuY2VsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2xvYWRpbmcuZ2lmKSBuby1yZXBlYXQ7XG59XG5cbi5sYi1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5sYi1jb250YWluZXIgPiAubmF2IHtcbiAgbGVmdDogMDtcbn1cblxuLmxiLW5hdiBhIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhBUUFCQVBBQUFQLy8vd0FBQUNINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQ1JBRUFPdz09Jyk7XG59XG5cbi5sYi1wcmV2LCAubGItbmV4dCB7XG4gIGhlaWdodDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmxiLW5hdiBhLmxiLXByZXYge1xuICB3aWR0aDogMzQlO1xuICBsZWZ0OiAwO1xuICBmbG9hdDogbGVmdDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9wcmV2LnBuZykgbGVmdCA0OCUgbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTApO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC42cztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC42cztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzO1xufVxuXG4ubGItbmF2IGEubGItcHJldjpob3ZlciB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxiLW5hdiBhLmxiLW5leHQge1xuICB3aWR0aDogNjQlO1xuICByaWdodDogMDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25leHQucG5nKSByaWdodCA0OCUgbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTApO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC42cztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC42cztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzO1xufVxuXG4ubGItbmF2IGEubGItbmV4dDpob3ZlciB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmxiLWRhdGFDb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgKnpvb206IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG59XG5cbi5sYi1kYXRhQ29udGFpbmVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ubGItZGF0YSB7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICBjb2xvcjogI2NjYztcbn1cblxuLmxiLWRhdGEgLmxiLWRldGFpbHMge1xuICB3aWR0aDogODUlO1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xufVxuXG4ubGItZGF0YSAubGItY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbi5sYi1kYXRhIC5sYi1jYXB0aW9uIGEge1xuICBjb2xvcjogIzRhZTtcbn1cblxuLmxiLWRhdGEgLmxiLW51bWJlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogbGVmdDtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLmxiLWRhdGEgLmxiLWNsb3NlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jbG9zZS5wbmcpIHRvcCByaWdodCBuby1yZXBlYXQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBvdXRsaW5lOiBub25lO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTcwKTtcbiAgb3BhY2l0eTogMC43O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xufVxuXG4ubGItZGF0YSAubGItY2xvc2U6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKTtcbiAgb3BhY2l0eTogMTtcbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4ub3dsLWNhcm91c2VsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblxuXHQub3dsLXN0YWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG5cdFx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cdFx0LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi9cblx0fVxuXG5cdC5vd2wtc3RhZ2U6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiLlwiO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRoZWlnaHQ6IDA7XG5cdH1cblxuXHQub3dsLXN0YWdlLW91dGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG5cdH1cblxuXHQub3dsLXdyYXBwZXIsXG5cdC5vd2wtaXRlbXtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdH1cblxuXHQub3dsLWl0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtaW4taGVpZ2h0OiAxcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdH1cblx0Lm93bC1pdGVtIGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQub3dsLW5hdi5kaXNhYmxlZCxcblx0Lm93bC1kb3RzLmRpc2FibGVkIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Lm93bC1uYXYgLm93bC1wcmV2LFxuXHQub3dsLW5hdiAub3dsLW5leHQsXG5cdC5vd2wtZG90IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiBidXR0b24ub3dsLXByZXYsXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcblx0YnV0dG9uLm93bC1kb3Qge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG5cdFx0Zm9udDogaW5oZXJpdDtcblx0fVxuXG5cdCYub3dsLWxvYWRlZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1sb2FkaW5nIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ji5vd2wtaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0Ji5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdCYub3dsLWRyYWcgLm93bC1pdGVtIHtcblx0XHR0b3VjaC1hY3Rpb246IHBhbi15O1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQmLm93bC1ncmFiIHtcblx0XHRjdXJzb3I6IG1vdmU7XG5cdFx0Y3Vyc29yOiBncmFiO1xuXHR9XG5cblx0Ji5vd2wtcnRsIHtcblx0XHRkaXJlY3Rpb246IHJ0bDtcblx0fVxuXG5cdCYub3dsLXJ0bCAub3dsLWl0ZW0ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbHtcblx0LmFuaW1hdGVkIHtcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcblx0XHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuXHR9XG5cdC5vd2wtYW5pbWF0ZWQtaW4ge1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1vdXQge1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblx0LmZhZGVPdXQge1xuXHRcdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuIiwiLypcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cblxuLm93bC1oZWlnaHQge1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luXG4gKi9cblxuLm93bC1jYXJvdXNlbCB7XG5cdC5vd2wtaXRlbSB7XG5cdFx0Lm93bC1sYXp5IHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHRcdH1cblxuXHRcdC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi9cblx0XHQub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1sYXp5Om5vdChbc3JjXSkge1xuXHRcdFx0bWF4LWhlaWdodDogMDtcblx0XHR9XG5cblx0XHRpbWcub3dsLWxhenkge1xuXHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0XHR9XG5cdH1cbn1cblxuIiwiJG93bC1pbWFnZS1wYXRoOiBcIlwiICFkZWZhdWx0O1xuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2Vse1xuXHQub3dsLXZpZGVvLXdyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogIzAwMDtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdHdpZHRoOiA4MHB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDUwJTtcblx0XHRtYXJnaW4tbGVmdDogLTQwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0YmFja2dyb3VuZDogdXJsKFwiI3skb3dsLWltYWdlLXBhdGh9b3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuXHQub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLXZpZGVvLXRuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tZnJhbWUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuIiwiXG4ub3dsLXRoZW1lIHtcblx0Ly8gU3R5bGluZyBOZXh0IGFuZCBQcmV2IGJ1dHRvbnNcblx0Lm93bC1uYXYge1xuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cblx0XHRbY2xhc3MqPSdvd2wtJ10ge1xuXHRcdFx0Y29sb3I6ICRuYXYtY29sb3I7XG5cdFx0XHRmb250LXNpemU6ICRuYXYtZm9udC1zaXplO1xuXHRcdFx0bWFyZ2luOiAkbmF2LW1hcmdpbjtcblx0XHRcdHBhZGRpbmc6ICRuYXYtcGFkZGluZztcblx0XHRcdGJhY2tncm91bmQ6ICRuYXYtYmFja2dyb3VuZDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRuYXYtYmFja2dyb3VuZC1ob3Zlcjtcblx0XHRcdFx0Y29sb3I6JG5hdi1jb2xvci1ob3Zlcjtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZGlzYWJsZWQge1xuXHRcdFx0b3BhY2l0eTogJG5hdi1kaXNhYmxlZC1vcGFjaXR5O1xuXHRcdFx0Y3Vyc29yOiBkZWZhdWx0O1xuXHRcdH1cblx0fVxuXG5cdC8vIFN0eWxpbmcgZG90c1xuXHQub3dsLW5hdi5kaXNhYmxlZCArIC5vd2wtZG90cyB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0fVxuXG5cdC5vd2wtZG90cyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cblx0XHQub3dsLWRvdCB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR6b29tOiAxO1xuXHRcdFx0KmRpc3BsYXk6IGlubGluZTtcblxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdHdpZHRoOiAkZG90LXdpZHRoO1xuXHRcdFx0XHRoZWlnaHQ6ICRkb3QtaGVpZ2h0O1xuXHRcdFx0XHRtYXJnaW46ICRkb3QtbWFyZ2luO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkZG90LWJhY2tncm91bmQ7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogJGRvdC1yb3VuZGVkO1xuXHRcdFx0fVxuXG5cdFx0XHQmLmFjdGl2ZSxcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkZG90LWJhY2tncm91bmQtYWN0aXZlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvKlxuICogXHREZWZhdWx0IHRoZW1lIC0gT3dsIENhcm91c2VsIENTUyBGaWxlXG4gKi9cblxuJGNvbG9yLWJhc2U6XHRcdFx0Izg2OTc5MSAhZGVmYXVsdDtcbiRjb2xvci13aGl0ZTpcdFx0XHQjRkZGICFkZWZhdWx0O1xuJGNvbG9yLWdyYXk6XHRcdFx0I0Q2RDZENiAhZGVmYXVsdDtcblxuLy9uYXZcblxuJG5hdi1jb2xvcjogXHRcdFx0JGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJG5hdi1jb2xvci1ob3ZlcjpcdFx0JGNvbG9yLXdoaXRlICFkZWZhdWx0O1xuJG5hdi1mb250LXNpemU6IFx0XHQxNHB4ICFkZWZhdWx0O1xuJG5hdi1yb3VuZGVkOiBcdFx0XHQzcHggIWRlZmF1bHQ7XG4kbmF2LW1hcmdpbjogXHRcdFx0NXB4ICFkZWZhdWx0O1xuJG5hdi1wYWRkaW5nOiBcdFx0XHQ0cHggN3B4ICFkZWZhdWx0O1xuJG5hdi1iYWNrZ3JvdW5kOiBcdFx0JGNvbG9yLWdyYXkgIWRlZmF1bHQ7XG4kbmF2LWJhY2tncm91bmQtaG92ZXI6XHQkY29sb3ItYmFzZSAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtb3BhY2l0eTogXHQwLjUgIWRlZmF1bHQ7XG5cbi8vZG90c1xuXG4kZG90LXdpZHRoOlx0XHRcdFx0MTBweCAhZGVmYXVsdDtcbiRkb3QtaGVpZ2h0Olx0XHRcdDEwcHggIWRlZmF1bHQ7XG4kZG90LXJvdW5kZWQ6XHRcdFx0MzBweCAhZGVmYXVsdDtcbiRkb3QtbWFyZ2luOiBcdFx0XHQ1cHggN3B4ICFkZWZhdWx0O1xuJGRvdC1iYWNrZ3JvdW5kOlx0XHQkY29sb3ItZ3JheSAhZGVmYXVsdDtcbiRkb3QtYmFja2dyb3VuZC1hY3RpdmU6XHQkY29sb3ItYmFzZSAhZGVmYXVsdDtcblxuQGltcG9ydCAndGhlbWUnO1xuIiwiQGNoYXJzZXQgJ1VURi04JztcblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdwYXQtdHJhaW5pbmctc2VydmljZXMnO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL3BhdC10cmFpbmluZy1zZXJ2aWNlcy5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvcGF0LXRyYWluaW5nLXNlcnZpY2VzLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcuLi9mb250cy9wYXQtdHJhaW5pbmctc2VydmljZXMud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnLi4vZm9udHMvcGF0LXRyYWluaW5nLXNlcnZpY2VzLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL3BhdC10cmFpbmluZy1zZXJ2aWNlcy5zdmcjcGF0LXRyYWluaW5nLXNlcnZpY2VzJykgZm9ybWF0KCdzdmcnKTtcbn1cblxuW2RhdGEtaWNvbl06YmVmb3JlIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtaWNvbik7XG5cbiAgICBmb250LWZhbWlseTogJ3BhdC10cmFpbmluZy1zZXJ2aWNlcycgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXG4gICAgc3BlYWs6IG5vbmU7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuW2NsYXNzXj0naWNvbi0nXTpiZWZvcmUsXG5bY2xhc3MqPScgaWNvbi0nXTpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAncGF0LXRyYWluaW5nLXNlcnZpY2VzJyAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cbiAgICBzcGVhazogbm9uZTtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1hbmRyb2lkLWFycm93LWRyb3ByaWdodDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDYxJztcbn1cbi5pY29uLWFuZHJvaWQtYXJyb3ctZHJvcGxlZnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFw2Mic7XG59XG4uaWNvbi1hbmRyb2lkLWFycm93LWRyb3B1cDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDYzJztcbn1cbi5pY29uLWFuZHJvaWQtYXJyb3ctZHJvcGRvd246YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFw2NCc7XG59XG4uaWNvbi1tZW51OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcNjUnO1xufVxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcNjYnO1xufVxuLmljb24tcGhvbmU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFw2Nyc7XG59XG4uaWNvbi1ob21lOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcNjgnO1xufVxuLmljb24tYXQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFw2OSc7XG59XG4uaWNvbi1wcmludGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcNmEnO1xufVxuLmljb24tY3Jvc3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFw2Yic7XG59XG4iLCJoMSxcbi51dGwtaGVhZGluZy1hbHBoYSxcbiV1dGwtaGVhZGluZy1hbHBoYSxcbmgyLFxuLnV0bC1oZWFkaW5nLWJldGEsXG4ldXRsLWhlYWRpbmctYmV0YSxcbmgzLFxuLnV0bC1oZWFkaW5nLWdhbW1hLFxuJXV0bC1oZWFkaW5nLWdhbW1hLFxuc21hbGwsXG4udXRsLXNtYWxsLFxuJXV0bC1zbWFsbCB7XG4gICAgbWFyZ2luOiAwIDAgJHNtYWxsLXNwYWNpbmc7XG5cbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xufVxuXG5oMSxcbi51dGwtaGVhZGluZy1hbHBoYSxcbiV1dGwtaGVhZGluZy1hbHBoYSB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS10eXBlKDMyLCA0NSwgcmVtLWNhbGMoMzIwKSwgJGdsb2JhbC13aWR0aCk7XG59XG5cbmgyLFxuLnV0bC1oZWFkaW5nLWJldGEsXG4ldXRsLWhlYWRpbmctYmV0YSB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS10eXBlKDM0LCAzMiwgcmVtLWNhbGMoMzIwKSwgJGdsb2JhbC13aWR0aCk7XG59XG5cbmgzLFxuLnV0bC1oZWFkaW5nLWdhbW1hLFxuJXV0bC1oZWFkaW5nLWdhbW1hIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLXR5cGUoMTgsIDIyLCByZW0tY2FsYygzMjApLCAkZ2xvYmFsLXdpZHRoKTtcblxuICAgIC5jLW5hdl9fZHJvcGRvd24gJiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG5zbWFsbCxcbi51dGwtc21hbGwsXG4ldXRsLXNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIC5jLW5hdl9fZHJvcGRvd24gJiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5hIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBjb2xvcjogY29sb3IoYWxwaGEpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIHRyYW5zaXRpb246IGNvbG9yICRiYXNlLXRpbWluZyAkYmFzZS10cmFuc2l0aW9uO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKGFscGhhLCBsaWdodCk7XG4gICAgfVxuXG4gICAgLm8tZm9vdGVyX19jb250YWN0LWRldGFpbHMgJiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuIiwiQG1peGluIHJlc3BvbnNpdmUtdHlwZSgkbWluLWZvbnQtc2l6ZSwgJG1heC1mb250LXNpemUsICRtaW4tYnJlYWtwb2ludCwgJG1heC1icmVha3BvaW50KSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygkbWluLWZvbnQtc2l6ZSk7XG4gICAgZm9udC1zaXplOiByZXNwb25zaXZlIHJlbS1jYWxjKCRtaW4tZm9udC1zaXplKSByZW0tY2FsYygkbWF4LWZvbnQtc2l6ZSk7XG5cbiAgICBmb250LXJhbmdlOiAkbWluLWJyZWFrcG9pbnQgJG1heC1icmVha3BvaW50O1xufVxuXG5AbWl4aW4gbWVkaWEoJG1pbi13aWR0aCwgJG1heC13aWR0aCkge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtaW4td2lkdGgpIGFuZCAobWF4LXdpZHRoOiAkbWF4LXdpZHRoKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cbiIsbnVsbCwiYnV0dG9uOm5vdChbY2xhc3MqPSd3Y2MtJ10pLFxuLmMtYnV0dG9uLFxuJWMtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogJHNwYWNlLWhhbGYgcmVtLWNhbGMoNjApICRzcGFjZS1oYWxmICRzcGFjZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihhbHBoYSwgbGlnaHQpO1xuXG4gICAgb3BhY2l0eTogMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkYmFzZS10aW1pbmcgJGJhc2UtdHJhbnNpdGlvbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGFscGhhKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbi1jaGV2cm9uLXJpZ2h0LnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWNoZXZyb24tcmlnaHQuc3ZnJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogcmVtLWNhbGMoMTApO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmMtc2VhcmNoX19idXR0b24sXG4gICAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlICYsXG4gICAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAmLFxuICAgIC5jLW1vZGFsX19jbG9zZSAmLFxuICAgIC5zLWFjZi1tYXAgJiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5jLXNlYXJjaF9fYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgfVxuXG4gICAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlICYsXG4gICAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLm8taGVhZGVyX19zZWFyY2gtdG9nZ2xlICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIC5jLW1vZGFsX19jbG9zZSAmIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIC5jLW1vZGFsLS1zZWFyY2ggJixcbiAgICAgICAgLmMtbW9kYWwtLW5hdiAmIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FsaWJyYXRpb25fX3RyYWluaW5nLWN0YSAmOm5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zICY6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYy1wYWdlLWJhbm5lcl9fY3RhcyAmOm5vdCg6bGFzdC1jaGlsZCkgJixcbiAgICAuYy1wcm9kdWN0LS1ib29raW5nIC5jLXBhZ2UtYmFubmVyICY6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuZXF1aXBtZW50LWhpcmVfX2N0YXMgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLWRvdWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jLXByb2R1Y3RfX2NvdXJzZS1ib29rZXIgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWhhbGY7XG4gICAgfVxuXG4gICAgLmMtbGlzdC1ib3ggJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2Utc3R5bGUtZ3VpZGUgJiB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGlrYS1zaW5nbGUgJiB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtYnV0dG9uLS1hbHBoYSxcbiVjLWJ1dHRvbi0tYWxwaGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJldGEpO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJldGEsIGRhcmspO1xuICAgIH1cbn1cblxuLmMtYnV0dG9uLS1iZXRhLFxuJWMtYnV0dG9uLS1iZXRhIHtcbiAgICBwYWRkaW5nOiAkc3BhY2UtaGFsZiAkc3BhY2U7XG5cbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihnYW1tYSwgbGlnaHQpO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS10eXBlKDE4LCAyMiwgcmVtLWNhbGMoMzIwKSwgJGdsb2JhbC13aWR0aCk7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICB9XG59XG5cbi5jLWJ1dHRvbi0tYmxvY2ssXG4lYy1idXR0b24tLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbn1cbiIsImxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG5cbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgLnMtd29vY29tbWVyY2UtY2hlY2tvdXQgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG5pbnB1dCxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG5cbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGJhc2UtdGltaW5nICRiYXNlLXRyYW5zaXRpb247XG59XG5cbmlucHV0LFxudGV4dGFyZWEge1xuICAgIHBhZGRpbmc6ICRzcGFjZS1oYWxmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKGdhbW1hKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogY29sb3IoYmV0YSk7XG5cbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihiZXRhKTtcbiAgICB9XG59XG5cbjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkYmxhY2s7XG59XG5cbmlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1mb250LXNpemU7XG5cbiAgICAuYy1tb2RhbC0tc2VhcmNoICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICR3aGl0ZTtcblxuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWdhbW1hO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS10eXBlKDMyLCA0NSwgcmVtLWNhbGMoMzIwKSwgJGdsb2JhbC13aWR0aCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG50ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygxNTApO1xufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1oYWxmO1xuXG4gICAgKyBsYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsInVsIGxpIHtcbiAgICAucy1jbXMtY29udGVudCAmIHtcbiAgICAgICAgdGV4dC1pbmRlbnQ6ICRzcGFjZS1oYWxmO1xuXG4gICAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb24tYnVsbGV0LnBuZycpO1xuICAgICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWJ1bGxldC5zdmcnKTtcbiAgICB9XG59XG4iLCIuYy1hY2NvcmRpb24ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgfVxuXG4gICAgJi5jLWZhcSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG59XG5cbi5jLWFjY29yZGlvbl9fdGl0bGUge1xuICAgIG1hcmdpbjogMCAwICRzcGFjZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ2QnO1xuXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgZm9udC1mYW1pbHk6ICdwYXQtdHJhaW5pbmctc2VydmljZXMnO1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgICAuaXMtYWN0aXZlICYge1xuICAgICAgICAgICAgY29udGVudDogJ2MnO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDA7XG59XG4iLCIuYy1hZGRvbiB7XG4gICAgLnMtd29vY29tbWVyY2UtYm9va2luZyAud2MtcGFvLWFkZG9ucy1jb250YWluZXIgJixcbiAgICAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtICYge1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2U7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdhbW1hLCBsaWdodCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGJvZHktZm9udC1jb2xvcjtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAuYy1hZGRvbl9fbWV0YS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmMtYWRkb25fX21lZGlhLFxuICAgICAgICAgICAgLmMtYWRkb25fX2Rlc2MtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmMtYWRkb25fX21lZGlhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1kb3VibGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYy1hZGRvbl9fZGVzYy1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1hZGRvbl9fbWV0YS1jb250YWluZXIge1xuICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDEpOyAvLyBJRTExIGhlaWdodCBmaXhcbn1cblxuLmMtYWRkb25fX25hbWUge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcblxuICAgIEBleHRlbmQgLnV0bC1oZWFkaW5nLWdhbW1hO1xufVxuXG4uYy1hZGRvbl9fbWVkaWEge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5jLWFkZG9uX19kZXNjIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5jLWFkZG9uX19xdWFudGl0eS1zZWxlY3RvciB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xufVxuIiwiLmMtYmFubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDcwKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG5cbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjcpO1xuICAgIH1cbn1cblxuLmMtYmFubmVyX19jb250ZW50LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLXF1YWQ7XG4gICAgfVxufVxuXG4uYy1iYW5uZXJfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG5cbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1hbHBoYTtcbn1cblxuLmMtYmFubmVyX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLXR5cGUoMTgsIDIyLCByZW0tY2FsYygzMjApLCAkZ2xvYmFsLXdpZHRoKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXgtd2lkdGg6IDY1JTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNlO1xuICAgIH1cbn1cbiIsIi5jLWJ1bmRsZSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC5idW5kbGVzICYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLWRvdWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG4gICAgfVxufVxuIiwiLmMtY2FsbG91dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWxwaGEpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZSAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtZG91YmxlIDA7XG4gICAgfVxuXG4gICAgLmVxdWlwbWVudC1oaXJlICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xuICAgIH1cbn1cblxuLmMtY2FsbG91dF9fdGl0bGUsXG4uYy1jYWxsb3V0X19jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLmMtY2FsbG91dF9fdGl0bGUge1xuICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWJldGE7XG59XG5cbi5jLWNhbGxvdXRfX2NvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZTtcblxuICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWdhbW1hO1xufVxuIiwiLmMtY2VudGVyZWQtdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYy1jZW50ZXJlZC10ZXh0X190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcblxuICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWJldGE7XG59XG5cbi5jLWNlbnRlcmVkLXRleHRfX2N0YSB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNlLWRvdWJsZTtcbn1cbiIsIi5jLWNvbnRlbnQtcG9kIHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1xdWFkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtY29udGVudC1wb2RfX21lZGlhIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG5cbi5jLWNvbnRlbnQtcG9kX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG5cbiAgICAuYy1wcm9kdWN0X19jb3Vyc2Utc3VtbWFyeSAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuXG4gICAgICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWJldGE7XG4gICAgfVxufVxuIiwiLmMtY3VzdG9tZXItbGlzdCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYy1jdXN0b21lci1saXN0X190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcblxuICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWJldGE7XG59XG4iLCIuYy1mYXEge1xuICAgICY6bnRoLWNoaWxkKG4rNCkge1xuICAgICAgICAuZmFxcyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuby1zZWFyY2hfX3NlY3Rpb25zLmlzLXNlYXJjaGVkICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICYuaXMtc2VhcmNoLXJlc3VsdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jLWhpZ2hsaWdodDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG59XG5cbi5jLWhpZ2hsaWdodF9fbmFtZSB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgY29sb3I6IGNvbG9yKGFscGhhLCBsaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcblxuICAgIEBleHRlbmQgJXV0bC1zbWFsbDtcbn1cbiIsIi5jLWhpcmUtcHJvZHVjdDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xufVxuXG4uYy1oaXJlLXByb2R1Y3RfX3ByaWNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcblxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1iZXRhO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cbiIsIi5jLWdhbGxlcnlfX3RodW1icyB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNlO1xufVxuIiwiLmMtaWNvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciAmIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNSk7XG4gICAgfVxufVxuIiwiLmMtaWNvbi1oZXJvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtaWNvbi1oZXJvX190ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2U7XG59XG4iLCIuYy1saXN0LWJveCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ2FtbWEsIGxpZ2h0KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtaGFsZjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtZG91YmxlO1xuICAgIH1cblxuICAgID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICAucG9zdC10eXBlLWFyY2hpdmUtcHJvZHVjdCAmLFxuICAgICAgICAuc3R5bGUtZ3VpZGUgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtbGlzdC1ib3hfX2ltYWdlLFxuLmMtbGlzdC1ib3hfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG59XG5cbi5jLWxpc3QtYm94X19pbWFnZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLSRzcGFjZS1xdWFkO1xuICAgIH1cbn1cblxuLmMtbGlzdC1ib3hfX3RpdGxlIHtcbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1nYW1tYTtcbn1cblxuLmMtbGlzdC1ib3hfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcblxuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xufVxuIiwiLmMtbG9jYXRpb25fX2RpcmVjdGlvbnMge1xuICAgIC5jLWxvY2F0aW9uLS12aWV3ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xuICAgIH1cbn1cblxuLmMtbG9jYXRpb25fX2RpcmVjdGlvbnMtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIuYy1tYXAge1xuICAgIC5jLWxvY2F0aW9uLS12aWV3ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xuICAgIH1cbn1cbiIsIi5jLW1lc3NhZ2UtYmFubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgcGFkZGluZzogJHNwYWNlIC8gMiAkc3BhY2U7XG5cbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihiZXRhKTtcblxuICAgICYudC1saWdodF9ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICB9XG5cbiAgICAmLnQtYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGFscGhhKTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuYy1taW5pY2FydCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLmMtbWluaWNhcnRfX2NvbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1taW5pY2FydF9fcXVhbnQge1xuICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygzNSk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbi1iYXNrZXQtbW9iaWxlLnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWJhc2tldC1tb2JpbGUuc3ZnJyk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb24tYmFza2V0LnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWJhc2tldC5zdmcnKTtcbiAgICB9XG59XG5cbi5jLW1pbmljYXJ0X19xdWFudC1udW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG4uYy1taW5pY2FydF9fdG90YWwge1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5jLW1pbmljYXJ0X19jaGVja291dC1saW5rIHtcbiAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuIiwiLmMtbW9kYWwtLW5hdiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yKGFscGhhLCBsaWdodCksIDAuOTUpO1xufVxuXG4uYy1tb2RhbC0tc2VhcmNoIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOTUpO1xufVxuXG4uYy1tb2RhbC0tY291cnNlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jLW1vZGFsX19jbG9zZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuXG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4iLCIuYy1uYXYge1xuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgLm8taGVhZGVyX19uYXYgJixcbiAgICAgICAgLm8tZm9vdGVyX19uYXYgJiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICBAZXh0ZW5kICV1dGwtc21hbGw7XG4gICAgICAgIH1cblxuICAgICAgICAuYy1tb2RhbC0tbmF2ICYge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jLW5hdi0taW5saW5lIHtcbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2U7XG5cbiAgICAgICAgICAgIC5mYXFzX19uYXYgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ3wnO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjZTtcblxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtbmF2LS1zdHJldGNoIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHVsIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtaGFsZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuby1oZWFkZXJfX25hdiAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jLW5hdi0tdmVydGljYWwge1xuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJi5pcy1vcGVuIC5jLW5hdl9fZHJvcGRvd24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWhhbGY7XG5cbiAgICAgICAgICAgIC5jLW1vZGFsLS1uYXYgJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1uYXZfX3BhcmVudC1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmlzLWhvbWUgYSBpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgfVxuXG4gICAgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjZS1oYWxmICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluLW91dCwgY29sb3IgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pcy1vcGVuICYsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtbmF2X19kcm9wZG93biB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogJHNwYWNlLWhhbGYgYXV0byAkc3BhY2U7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2U7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiA0O1xuXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcihhbHBoYSwgbGlnaHQpLCAwLjk3KTtcblxuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigpO1xuICAgIH1cbn1cblxuLmMtbmF2X19kcm9wZG93bi1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQoKTtcbiAgICB9XG59XG5cbi5jLW5hdl9fZHJvcGRvd24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxufVxuXG4uYy1uYXZfX2Ryb3Bkb3duLWxpbmtzIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkKCk7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAkc3BhY2UtaGFsZiBhdXRvIDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkd2hpdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtbmF2X19jaGlsZC1saW5rLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbCgzMyUpO1xuICAgIH1cbn1cblxuLmMtbmF2X19jaGlsZC1saW5rLWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtaGFsZjtcblxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5jLW5hdl9fdG9nZ2xlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2UtaGFsZjtcblxuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iLCIuYy1vZmZzZXQtY29udGVudC1wb2Qge1xuICAgIC5idW5kbGVzICYge1xuICAgICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgPiAuZ3JpZC14ID4gLmNlbGwge1xuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jLW9mZnNldC1jb250ZW50LXBvZF9fbWVkaWEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kc3BhY2UtcXVhZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VhcmNoLXJlc3VsdHMgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuICAgIH1cbn1cblxuLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19tZWRpYSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1oYWxmO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kc3BhY2UtcXVhZDtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxufVxuXG4uYy1vZmZzZXQtY29udGVudC1wb2RfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG5cbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1nYW1tYTtcblxuICAgIC5jLWhpcmUtcHJvZHVjdCAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcblxuICAgICAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1iZXRhO1xuICAgIH1cblxuICAgIC5zZWFyY2gtcmVzdWx0cyAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuICAgIH1cbn1cblxuLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihnYW1tYSwgbGlnaHQpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLWRvdWJsZSAkc3BhY2UtcXVhZDtcbiAgICB9XG5cbiAgICAuc2VhcmNoLXJlc3VsdHMgJiB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZSAkc3BhY2UtZG91YmxlO1xuICAgIH1cbn1cblxuLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG59XG5cbi5jLW9mZnNldC1jb250ZW50LXBvZF9fc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWhhbGY7XG5cbiAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcblxuICAgIEBleHRlbmQgJXV0bC1zbWFsbDtcbn1cblxuLmMtb2Zmc2V0LWNvbnRlbnQtcG9kX19hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnNlYXJjaC1yZXN1bHRzX19wYWdlcyAmIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbn1cbiIsIi5jLXBhZ2UtYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihnYW1tYSwgbGlnaHQpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZSAkc3BhY2UtaGFsZjtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZTtcbiAgICB9XG5cbiAgICAuYy1wcm9kdWN0LS12aWV3ICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtcGFnZS1iYW5uZXJfX21lZGlhLFxuLmMtcGFnZS1iYW5uZXJfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuICAgIH1cbn1cblxuLmMtcGFnZS1iYW5uZXJfX3RpdGxlIHtcbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1hbHBoYTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuICAgIH1cbn1cblxuLmMtcGFnZS1iYW5uZXJfX2N0YXMge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1kb3VibGU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG59XG4iLCIuYy1wYWdlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctYWxwaGE7XG5cbiAgICAuYy1tb2RhbCAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcblxuICAgICAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1iZXRhO1xuICAgIH1cbn1cblxuLmMtcGFnZS10aXRsZV9faW50cm8ge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAjb24tc2l0ZS1tb2RhbCAmLFxuICAgIC5jLW1vZGFsLS1jb3Vyc2UgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG5cbiAgICAgICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG4gICAgfVxuXG4gICAgI29uLXNpdGUtbW9kYWwgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihhbHBoYSwgbGlnaHQpO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIC5jLW1vZGFsLS1jb3Vyc2UgJiB7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jLXByaWNlLWJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAkc3BhY2UtZG91YmxlICRzcGFjZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihhbHBoYSk7XG5cbiAgICAuby1wcmljZS1zdHJpcCAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0kc3BhY2UgKiA1O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1wcmljZS1ib3hfX3RpdGxlLFxuLmMtcHJpY2UtYm94X19wcmljZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLmMtcHJpY2UtYm94X190aXRsZSB7XG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG59XG5cbi5jLXByaWNlLWJveF9fcHJpY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1hbHBoYTtcbn1cbiIsIi5jLXByb2R1Y3QtLWxpc3RlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHNwYWNlO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ2FtbWEsIGxpZ2h0KTtcblxuICAgICYuc2FsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAubC1wcm9kdWN0LWxpc3RpbmcgJixcbiAgICAuYy1tb2RhbC0tY291cnNlICYsXG4gICAgLnNlYXJjaC1yZXN1bHRzICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxufVxuXG4uYy1wcm9kdWN0X19pbWFnZSB7XG4gICAgLmMtcHJvZHVjdC0tbGlzdGVkICYge1xuICAgICAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG4gICAgfVxuXG4gICAgLmMtcHJvZHVjdC0tdmlldyAmIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fdGl0bGUge1xuICAgIC5jLXByb2R1Y3QtLWxpc3RlZCAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIC5jLXByb2R1Y3QtLXN0YW5kYXJkICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWJldGE7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1wcm9kdWN0LS1ib29raW5nICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWFscGhhO1xuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fcHJpY2UtY29udGFpbmVyIHtcbiAgICAuYy1wcm9kdWN0LS12aWV3ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1wcm9kdWN0X19wcmljZS1tZXRhIHtcbiAgICAuYy1wcm9kdWN0LS12aWV3ICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmMtcHJvZHVjdF9fY291cnNlLWJvb2tlciAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICB9XG5cbiAgICAuYy1tb2RhbC0tY291cnNlICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fYWRkLXRvLWNhcnQge1xuICAgIC5jLXByb2R1Y3QtLXZpZXcgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcblxuICAgICAgICAucXVhbnRpdHkgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fcHJpY2Uge1xuICAgIC5jLXByb2R1Y3QtLWxpc3RlZCAmIHtcbiAgICAgICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG5cbiAgICAgICAgLmMtbW9kYWwtLWNvdXJzZSAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGRlbCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1oYWxmO1xuXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jLWJ1bmRsZSAmLFxuICAgIC5jLW1vZGFsLS1jb3Vyc2UgJixcbiAgICAuYy1wcm9kdWN0LS12aWV3ICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIGNvbG9yOiBjb2xvcihhbHBoYSwgbGlnaHQpO1xuXG4gICAgICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWJldGE7XG4gICAgfVxuXG4gICAgLmMtYnVuZGxlICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1wcm9kdWN0LS1zdGFuZGFyZCAmIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLWRvdWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN1cHByZXNzICdXYXMnIHByaWNlXG4gICAgLmMtcHJvZHVjdC0tc3RhbmRhcmQgLmMtcHJvZHVjdF9fcHJpY2UtbWV0YSAmIHtcbiAgICAgICAgZGVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpbnMge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1wcm9kdWN0X19wcmljZS12YXQge1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNlLWhhbGY7XG5cbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgIC5jLXByb2R1Y3QtLWxpc3RlZCAmIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgfVxuXG4gICAgLmMtbW9kYWwtLWNvdXJzZSAmLFxuICAgIC5jLXByb2R1Y3QtLXZpZXcgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgfVxufVxuXG4uYy1wcm9kdWN0X19wcmljZS1zdWZmaXgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG59XG5cbi5jLXByb2R1Y3RfX3ZpZGVvcyB7XG4gICAgLmMtcHJvZHVjdC0tdmlldyAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fY29udGVudC1jb250YWluZXIge1xuICAgIC5jLXByb2R1Y3QtLXZpZXcgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLWRvdWJsZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZS1kb3VibGU7XG4gICAgfVxufVxuXG4uYy1wcm9kdWN0X19oaXJlIHtcbiAgICAuYy1wcm9kdWN0LS12aWV3ICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fZGVsaXZlcnktaXRlbSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLWhhbGY7XG5cbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fZGVsaXZlcnktaXRlbS0taW4tc3RvY2s6YmVmb3JlIHtcbiAgICB3aWR0aDogcmVtLWNhbGMoMTQpO1xuICAgIGhlaWdodDogcmVtLWNhbGMoMTEpO1xuXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbi1jaGVjay5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWNoZWNrLnN2ZycpO1xufVxuXG4uYy1wcm9kdWN0X19kZWxpdmVyeS1pdGVtLS1mcmVlLWRlbGl2ZXJ5OmJlZm9yZSB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDE5KTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDEyKTtcblxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb24tZGVsaXZlcnkucG5nJyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbi1kZWxpdmVyeS5zdmcnKTtcbn1cblxuLmMtcHJvZHVjdF9fb25zaXRlLWNvdXJzZXMge1xuICAgIGNvbG9yOiBjb2xvcihhbHBoYSwgbGlnaHQpO1xuXG4gICAgQGV4dGVuZCAldXRsLXNtYWxsO1xufVxuXG4uYy1wcm9kdWN0X19tZXRhIHtcbiAgICAubC1wcm9kdWN0LWxpc3RpbmcgJixcbiAgICAuYy1tb2RhbC0tY291cnNlICYsXG4gICAgLnNlYXJjaC1yZXN1bHRzICYge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIH1cbn1cblxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0LFxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0LWltYWdlLFxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0LXZhbHVlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG59XG5cblxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0IHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCA1cHggY29sb3IoYWxwaGEsIGxpZ2h0KTtcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtcHJvZHVjdF9fZnJlZS1naWZ0LXRpdGxlIHtcbiAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcblxuICAgIEBleHRlbmQgJXV0bC1oZWFkaW5nLWdhbW1hO1xufVxuXG4uYy1wcm9kdWN0X19mcmVlLWdpZnQtdmFsdWUge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5jLXByb2R1Y3RfX21hbnVmYWN0dXJlci1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG59XG5cbi5jLXByb2R1Y3RfX21hbnVmYWN0dXJlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1heC13aWR0aDogMjAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogJHNwYWNlO1xuXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1oYWxmO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG4iLCIuYy1xdWFudGl0eS1zZWxlY3RvciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAkc3BhY2UtaGFsZiBhdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgLmMtbW9kYWwtLWNvdXJzZSAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtcXVhbnRpdHlfX2VsZW1lbnQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1heC13aWR0aDogNDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jLW1vZGFsLS1jb3Vyc2UgJiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAvLyBGaXggSUUxMSBmbGV4Ym94IGJ1ZyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy0xNVxuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtcXVhbnRpdHktc2VsZWN0b3JfX2FjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYy1xdWFudGl0eS1zZWxlY3Rvcl9fdG9nZ2xlcixcbi5jLXF1YW50aXR5LXNlbGVjdG9yX19pbnB1dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYy1xdWFudGl0eS1zZWxlY3Rvcl9fdG9nZ2xlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ2FtbWEpO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG59XG5cbi5jLXF1YW50aXR5LXNlbGVjdG9yX19pbnB1dCB7XG4gICAgd2lkdGg6IDMzJTtcblxuICAgIGlucHV0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuIiwiLmMtdGFibGUge1xuICAgIC50YWJsZS1zY3JvbGwgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRoZWFkIHRoLFxuICAgIHRib2R5IHRkIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxLjVweCBzb2xpZCBjb2xvcihhbHBoYSk7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC5jLWJ1bmRsZSAmIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjZS1oYWxmO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIC5jLWJ1bmRsZSAmIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICAmLmlzLXVuYXZhaWxhYmxlIHRkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2IzYjNiMyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYy1idW5kbGUgJiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCBjb2xvcihhbHBoYSwgbGlnaHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQgdGQge1xuICAgICAgICAgICAgICAgIC5jLWJ1bmRsZSAmIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGNvbG9yKGJldGEpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ2FtbWEsIGxpZ2h0KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGNvbG9yKGFscGhhKTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jLWJ1bmRsZSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvcihhbHBoYSwgbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtdGFibGUtLWFsdCB0Ym9keSB0ZCB7XG4gICAgY29sb3I6IGNvbG9yKGFscGhhKSAhaW1wb3J0YW50O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxudGFibGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi5jLXRlc3RpbW9uaWFsIHtcbiAgICAuby10ZXN0aW1vbmlhbC1zbGlkZXIgJiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICRzcGFjZS1kb3VibGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jLXRlc3RpbW9uaWFsX19xdW90ZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICB9XG59XG5cbi5jLXRlc3RpbW9uaWFsX19hdXRob3Ige1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZTtcblxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4iLCIuYy1zZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtc2VhcmNoX19pbnB1dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2UtZG91YmxlICFpbXBvcnRhbnQ7XG59XG5cbi5jLXNlYXJjaF9fYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJHNwYWNlLWhhbGY7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbiIsIi5jLXNpZGViYXIge1xuICAgIHBhZGRpbmc6ICRzcGFjZTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdhbW1hLCBsaWdodCk7XG5cbiAgICAuc2hvcF9fc2lkZWJhciAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmMtc2lkZWJhcl9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG5cbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1iZXRhO1xufVxuIiwiLmMtc3RpY2tlciB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDEwMCk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygxMDApO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHJlbS1jYWxjKDEwMCk7XG59XG5cbi5jLXN0aWNrZXItLXNhbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3N0aWNrZXItc2FsZS5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zdGlja2VyLXNhbGUuc3ZnJyk7XG59XG5cbi5jLXN0aWNrZXItLWZyZWUtZ2lmdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc3RpY2tlci1mcmVlLWdpZnQucG5nJyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc3RpY2tlci1mcmVlLWdpZnQuc3ZnJyk7XG59XG4iLCIuYy12aWRlbyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpZnJhbWUsXG4gICAgb2JqZWN0LFxuICAgIGVtYmVkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuYy1wcm9kdWN0LS12aWV3ICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICB9XG59XG4iLCIuby1jb250ZW50LWJveCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoZ2FtbWEsIGxpZ2h0KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtdHJpcGxlO1xuICAgIH1cblxuICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm8tY29udGVudC1ib3gtLWNlbnRlcmVkIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLWNvbnRlbnQtYm94X190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctYmV0YTtcbn1cblxuLm8tY29udGVudC1ib3hfX2FjdGlvbnMge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1kb3VibGU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG59XG4iLCIuby1mbGFnIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5jLWxvY2F0aW9uX19jb250YWN0ICY6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuY29udGFjdC11c19fZGV0YWlscyAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtdXNfX2RldGFpbHMgJiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgQGV4dGVuZCAldXRsLWhlYWRpbmctZ2FtbWE7XG4gICAgICAgIGZvbnQtZmFtaXk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIH1cbn1cblxuLm8tZmxhZ19fbWVkaWEsXG4uby1mbGFnX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC5vLWZsYWctLXRvcCAmIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cbiAgICAuby1mbGFnLS1ib3R0b20gJiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxufVxuXG4uby1mbGFnX19tZWRpYSB7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNlO1xuXG4gICAgPiBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC5vLWZsYWctLXJldiAmIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2U7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtdXNfX2RldGFpbHMgJixcbiAgICAuYy1sb2NhdGlvbl9fY29udGFjdCAmLFxuICAgIC5vLWZvb3Rlcl9fY29udGFjdC1kZXRhaWxzICYsXG4gICAgLm8tZm9vdGVyX19hZGRyZXNzICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vLWZsYWdfX2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuIiwiLm8tZmxleGlibGUtbW9kdWxlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcXVhZDtcbiAgICB9XG59XG4iLCIuby1mb290ZXIge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1kb3VibGU7XG59XG5cbi5vLWZvb3Rlcl9fbWFpbiB7XG4gICAgcGFkZGluZzogJHNwYWNlLWRvdWJsZSAwO1xuXG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGFscGhhKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm8tZm9vdGVyX19jb250YWN0LWRldGFpbHMge1xuICAgIG1hcmdpbjogMDtcblxuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5vLWZvb3Rlcl9fcGF5bWVudC10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWhhbGY7XG5cbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uby1mb290ZXJfX3BheW1lbnQtcG8ge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1oYWxmO1xuXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG59XG5cbi5vLWZvb3Rlcl9fbmF2IHtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgaHIge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDQ1KTtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjZS1kb3VibGU7XG4gICAgfVxufVxuXG4uby1mb290ZXJfX2NvcHlyaWdodCB7XG4gICAgcGFkZGluZzogJHNwYWNlLWRvdWJsZSAwO1xuXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLm8taGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG5cbiAgICBib2R5OmhhcyguYy1tZXNzYWdlLWJhbm5lcikgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uby1oZWFkZXJfX21haW4ge1xuICAgIHBhZGRpbmc6ICRzcGFjZS1oYWxmIDA7XG59XG5cbi5vLWhlYWRlcl9fZGVza3RvcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uby1oZWFkZXJfX21vYmlsZSB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNlLWhhbGY7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLm8taGVhZGVyX19tb2JpbGUtbmF2LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNlLWhhbGY7XG4gICAgcGFkZGluZzogJHNwYWNlIDA7XG5cbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWxwaGEpO1xuXG4gICAgLmNlbGwge1xuICAgICAgICAmOm50aC1jaGlsZCgybiksXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vLWhlYWRlcl9fbW9iaWxlLWNvbnRhY3Qge1xuICAgIG1hcmdpbjogMDtcblxuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1nYW1tYTtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm8taGVhZGVyX19jb250YWN0IHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbn1cblxuLm8taGVhZGVyX19jb250YWN0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uby1oZWFkZXJfX25hdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYWxwaGEpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbn1cblxuLm8taGVhZGVyX19sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIi5vLWljb24tc3RyaXAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5jYWxpYnJhdGlvbl9fY29udGVudC1jb250YWluZXIgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLWRvdWJsZTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLXF1YWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vLWljb24tc3RyaXBfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctYmV0YTtcbn1cblxuLm8taWNvbi1zdHJpcF9faWNvbnMgLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG4gICAgfVxufVxuIiwiLm8tcHJpY2Utc3RyaXAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdhbW1hLCBsaWdodCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLWRvdWJsZSAkc3BhY2UgJHNwYWNlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtZG91YmxlO1xuICAgIH1cblxuICAgIC5sLWZsZXhpYmxlLW1vZHVsZXMgJixcbiAgICAuY2FsaWJyYXRpb24gJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UgKiA2O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN0eWxlLWd1aWRlICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLXF1YWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vLXByaWNlLXN0cmlwX19wcmljZS1ib3hlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG59XG4iLCIuby1yZWxhdGVkLXByb2R1Y3RzIHtcbiAgICBwYWRkaW5nOiAkc3BhY2UtZG91YmxlIDA7XG59XG5cbi5vLXJlbGF0ZWQtcHJvZHVjdHNfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctYmV0YTtcblxuICAgIC5jLW1vZGFsLS1jb3Vyc2UgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcblxuICAgICAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1nYW1tYTtcbiAgICB9XG59XG4iLCIuby1zZWFyY2hfX3NlY3Rpb25zIHtcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlLXF1YWQ7XG59XG5cbi5vLXNlYXJjaF9fc2VjdGlvbiB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXF1YWQ7XG4gICAgfVxuXG4gICAgJi5pcy1zZWFyY2gtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuby1zZWFyY2hfX3NlY3Rpb25zLmlzLXNlYXJjaGVkICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICYuaXMtc2VhcmNoLXJlc3VsdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm8tc2VhcmNoX19zZWN0aW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5vLXNlYXJjaF9fc2VlLW1vcmUge1xuICAgIGNvbG9yOiBjb2xvcihhbHBoYSwgbGlnaHQpO1xuXG4gICAgQGV4dGVuZCAldXRsLXNtYWxsO1xuXG4gICAgLm8tc2VhcmNoX19zZWN0aW9ucy5pcy1zZWFyY2hlZCAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5vLXNlYXJjaF9fbm8taXRlbXMge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uby1zZWFyY2hfX2Vycm9yIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiLm8tdGVzdGltb25pYWwtc2xpZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihhbHBoYSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZzogJHNwYWNlIDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZS1kb3VibGUgMDtcbiAgICB9XG59XG5cbi5vLXRlc3RpbW9uaWFsLXNsaWRlcl9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG5cbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgQGV4dGVuZCAldXRsLWhlYWRpbmctYmV0YTtcbn1cbiIsIi5sLWJ1bmRsZS1saXN0aW5nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLXF1YWQ7XG4gICAgfVxuXG4gICAgLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcXVhZDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5sLWxvY2F0aW9uLWRpcmVjdGlvbnMgLmNlbGwge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoOm50aC1sYXN0LWNoaWxkKC1uKzIpKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubC1sb2NhdGlvbi1saXN0aW5nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLXF1YWQ7XG4gICAgfVxuXG4gICAgLmNlbGwge1xuICAgICAgICAmOm5vdCg6bnRoLWxhc3QtY2hpbGQoLW4rMikpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpudGgtbGFzdC1jaGlsZCgtbiszKSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcXVhZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5sLXByb2R1Y3QtY2F0ZWdvcnktbGlzdGluZyAuY2VsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcXVhZCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiIsIi5sLXByb2R1Y3QtbGlzdGluZyAuY2VsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG59XG4iLCIubC1wcm9kdWN0LXNlYXJjaC1yZXN1bHRzIC5jZWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG59XG4iLCIuYnVuZGxlc19fYnVuZGxlLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNlLXF1YWQ7XG59XG4iLCIuY2FsaWJyYXRpb25fX2NvbnRlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAkc3BhY2UtZG91YmxlIDA7XG5cbiAgICAmLmlzLWxhc3Qge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5jYWxpYnJhdGlvbl9fdHJhaW5pbmctY3RhIHtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY2FsaWJyYXRpb25fX21vZGFsLWludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtZG91YmxlO1xufVxuIiwiLmNvdXJzZS1jYWxlbmRhcl9fdGFibGUge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1xdWFkO1xufVxuIiwiLmNvbnRhY3QtdXNfX2NvbnRlbnQtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UtZG91YmxlO1xufVxuXG4uY29udGFjdC11c19fZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNlO1xufVxuIiwiLmVxdWlwbWVudC1oaXJlX19jdGFzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAkc3BhY2UtZG91YmxlIGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogJHNwYWNlLXF1YWQgYXV0bztcbiAgICB9XG59XG5cbi5lcXVpcG1lbnQtaGlyZV9fbW9kYWwtaW50cm8ge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1kb3VibGU7XG59XG4iLCIuZmFxc19fbmF2IHtcbiAgICBtYXJnaW46ICRzcGFjZS1kb3VibGUgYXV0bztcblxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZhcXNfX2NvbnRhY3Qge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1kb3VibGU7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIuaG9tZV9fYmFubmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcXVhZDtcblxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2hvbWUtYmFubmVyLWJhY2tncm91bmQucG5nJyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaG9tZS1iYW5uZXItYmFja2dyb3VuZC5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbiIsIi5sb2NhdGlvbnNfX2NvdXJzZS1jdGEge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1kb3VibGU7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIub24tc2l0ZS10cmFpbmluZ19fbW9kdWxlcyB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNlLXF1YWQ7XG59XG4iLCIuc2VhcmNoLXJlc3VsdHNfX3BhZ2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2U7XG59XG4iLCIuc2hvcF9fY2F0ZWdvcmllcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG59XG5cbi5zaG9wX19maWx0ZXItdG9nZ2xlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLnNob3BfX3NpZGViYXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luOiAkc3BhY2UgYXV0bztcbiAgICB9XG59XG4iLCIucy1hY2YtbWFwIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTAwKTtcblxuICAgICAgICAuY29udGFjdC11cyAmIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIGZpeGVzIHBvdGVudGlhbCB0aGVtZSBjc3MgY29uZmxpY3QgKi9cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICB9XG59XG4iLCIubGlnaHRib3gge1xuICAgIC5sYi1jYW5jZWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9saWdodGJveDIvbG9hZGluZy5naWYnKSBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgLmxiLW5hdiBhLmxiLXByZXYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9saWdodGJveDIvcHJldi5wbmcnKSBsZWZ0IDQ4JSBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgLmxiLW5hdiBhLmxiLW5leHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9saWdodGJveDIvbmV4dC5wbmcnKSByaWdodCA0OCUgbm8tcmVwZWF0O1xuICAgIH1cblxuICAgIC5sYi1kYXRhIC5sYi1jbG9zZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2xpZ2h0Ym94Mi9jbG9zZS5wbmcnKSB0b3AgcmlnaHQgbm8tcmVwZWF0O1xuICAgIH1cbn1cbiIsIi5zLW93bC1jYXJvdXNlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLm93bC1pdGVtIHtcbiAgICAgICAgLmMtZ2FsbGVyeV9fbWFpbiAmIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtaGlnaGxpZ2h0ZWQge1xuICAgICAgICAub3dsLWl0ZW0ge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuXG4gICAgICAgICAgICAmLmlzLWhpZ2hsaWdodGVkIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm93bC1uYXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgdG9wOiAyNSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3dsLXByZXYsXG4gICAgLm93bC1uZXh0IHtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmMtZ2FsbGVyeV9fdGh1bWJzICYge1xuICAgICAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJycgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjApO1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiByZW0tY2FsYygxMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3dsLXByZXYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIGxlZnQ6IC0kc3BhY2UtdHJpcGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmMtZ2FsbGVyeV9fdGh1bWJzICYge1xuICAgICAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWNoZXZyb24tbGVmdC5wbmcnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb24tY2hldnJvbi1sZWZ0LnN2ZycpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm93bC1uZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgcmlnaHQ6IC0kc3BhY2UtdHJpcGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmMtZ2FsbGVyeV9fdGh1bWJzICYge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWNoZXZyb24tcmlnaHQucG5nJyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWNoZXZyb24tcmlnaHQuc3ZnJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucy1uaW5qYS1mb3JtcyB7XG4gICAgLm5mLWZvcm0tZmllbGRzLXJlcXVpcmVkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWhhbGY7XG5cbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgfVxuXG4gICAgLmxhYmVsLWxlZnQgLm5mLWZpZWxkLWxhYmVsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAubmYtZmllbGQtbGFiZWwgbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIC5uZi1maWVsZC1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIH1cblxuICAgIC5zdWJtaXQtY29udGFpbmVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjZS1oYWxmICRzcGFjZS1kb3VibGU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBAZXh0ZW5kICVjLWJ1dHRvbjtcbiAgICAgICAgICAgIEBleHRlbmQgJWMtYnV0dG9uLS1hbHBoYTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5zLXdvb2NvbW1lcmNlIHtcbiAgICAud29vY29tbWVyY2Utb3JkZXJpbmcsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2Uge1xuICAgIC8vIFJlbW92ZSA6YWZ0ZXIgZnJvbSBhbGwgV29vQ29tbWVyY2UgYnV0dG9uc1xuICAgICNyZXNwb25kIGlucHV0I3N1Ym1pdC5kaXNhYmxlZCxcbiAgICAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6ZGlzYWJsZWQsXG4gICAgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmRpc2FibGVkW2Rpc2FibGVkXSxcbiAgICBhLmJ1dHRvbi5kaXNhYmxlZCxcbiAgICBhLmJ1dHRvbjpkaXNhYmxlZCxcbiAgICBhLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0sXG4gICAgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZCxcbiAgICBidXR0b24uYnV0dG9uOmRpc2FibGVkLFxuICAgIGJ1dHRvbi5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLFxuICAgIGlucHV0LmJ1dHRvbi5kaXNhYmxlZCxcbiAgICBpbnB1dC5idXR0b246ZGlzYWJsZWQsXG4gICAgaW5wdXQuYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXSxcbiAgICAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4gICAgYS5idXR0b24sXG4gICAgYnV0dG9uLmJ1dHRvbixcbiAgICBpbnB1dC5idXR0b24ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZWluc3RhdGUgOmFmdGVyIGVsZW1lbnQgb24gYm9va2luZyBidXR0b25cbiAgICAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtLWJ1dHRvbjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBQcm9kdWN0IHZhcmlhdGlvbiBzZWxlY3RvciBzdHlsaW5nXG4gICAgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHRib2R5LFxuICAgIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyB0Ym9keSB0ciB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1lcnJvcixcbi53b29jb21tZXJjZS1pbmZvLFxuLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICAgIGJvcmRlci13aWR0aDogNXB4O1xufVxuXG4ud29vY29tbWVyY2UtbWVzc2FnZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcihiZXRhKTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKGJldGEpO1xuICAgIH1cbn1cbiIsIi53Yy1wYW8tYWRkb24ge1xuICAgIG1hcmdpbjogJHNwYWNlIGF1dG87XG5cbiAgICAuYy1wcm9kdWN0LS1zdGFuZGFyZCAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6ICRzcGFjZTtcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IGNvbG9yKGdhbW1hKTtcblxuICAgICAgICAmLnByb2R1Y3QtYWRkb24tZnJlZS1naWZ0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIC5jLXByb2R1Y3QtLXN0YW5kYXJkICYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jLXByb2R1Y3QtLWJvb2tpbmcgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtUHJpY2UtYW1vdW50IHtcbiAgICAgICAgLmMtcHJvZHVjdC0tc3RhbmRhcmQgJiB7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoYWxwaGEsIGxpZ2h0KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNwcm9kdWN0LWFkZG9ucy10b3RhbCB7XG4gICAgLmMtcHJvZHVjdC0tc3RhbmRhcmQgJiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgdWwgbGkge1xuICAgICAgICBnYXA6IDAgJHNwYWNlICogMjtcbiAgICB9XG5cbiAgICAud2MtcGFvLXN1YnRvdGFsLWxpbmUgLnByaWNlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBAZXh0ZW5kICV1dGwtaGVhZGluZy1iZXRhO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJysgVkFUJztcblxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjZSAvIDI7XG5cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hbW91bnQge1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKGFscGhhLCBsaWdodCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucy13b29jb21tZXJjZS1iYXNrZXQge1xuICAgIHVsLnZhcmlhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb3Vwb24ge1xuICAgICAgICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNzaGlwcGluZ19tZXRob2QgbGkge1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMykgcmVtLWNhbGMoNSkgcmVtLWNhbGMoMykgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG59XG4iLCIucy13b29jb21tZXJjZS1ib29raW5nIHtcbiAgICAud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuICAgIC53b29jb21tZXJjZSBhLmJ1dHRvbixcbiAgICAud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbiAgICAud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uIHtcbiAgICAgICAgQGV4dGVuZCAlYy1idXR0b247XG4gICAgfVxuXG4gICAgLndjLWJvb2tpbmdzLWRhdGUtcGlja2VyIC51aS1kYXRlcGlja2VyIHRkLnBhcnRpYWxfYm9va2VkIGE6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTsgLyogVGhpcyBzdHlsZSByZW1vdmVzIHRoZSByZWQgdHJpYW5nbGUgKi9cbiAgICB9XG5cbiAgICAud2MtYm9va2luZ3MtYm9va2luZy1mb3JtIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgZmllbGRzZXQsXG4gICAgICAgIGZpZWxkc2V0IC5waWNrZXIuaGFzRGF0ZXBpY2tlciB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLndjLWJvb2tpbmdzLWRhdGUtcGlja2VyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3NSU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnVpLWRhdGVwaWNrZXItd2Vlay1lbmQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAud2MtYm9va2luZ3MtYm9va2luZy1jb3N0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tZmllbGQgaW5wdXRbdHlwZT0nbnVtYmVyJ10sXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDAgJHNwYWNlIDAgMDtcblxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0LFxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndjLWJvb2tpbmdzLWJvb2tpbmctZm9ybS1idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtaGFsZiByZW0tY2FsYyg2MCkgJHNwYWNlLWhhbGYgJHNwYWNlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoYmV0YSkgIWltcG9ydGFudDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJldGEsIGRhcmspICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucy13b29jb21tZXJjZS1jaGVja291dCB7XG4gICAgLnZhcmlhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKGdhbW1hLCBsaWdodCkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlIHRoZWFkLFxuICAgIC53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUgdGZvb3Qge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHVsLm9yZGVyX2RldGFpbHMgbGkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1oYWxmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3NoaXBwaW5nX21ldGhvZCBsaSB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygzKSByZW0tY2FsYyg1KSByZW0tY2FsYygzKSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnMtd29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG4gICAgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhOmZvY3VzLFxuICAgICAgICAgICAgYTpob3ZlcixcbiAgICAgICAgICAgIHNwYW4uY3VycmVudCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGNvbG9yKGFscGhhLCBsaWdodCk7XG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnMtd3Atd2lkZ2V0cyB7XG4gICAgLndpZGdldDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWRvdWJsZTtcbiAgICB9XG59XG4iLCIudXRsLWNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLnV0bC1zbWFsbC1hbGlnbi1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi51dGwtbWVkaXVtLWFsaWduLWNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxufVxuXG4udXRsLWludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuIl19 */
