@media print, screen and (min-width: 40em){.reveal,.reveal.tiny,.reveal.small,.reveal.large{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%}body{margin:0}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{box-sizing:border-box;font-size:100%}*,*::before,*::after{box-sizing:inherit}body{margin:0;padding:0;background:#fff;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;line-height:1.5;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle;max-width:100%;height:auto;-ms-interpolation-mode:bicubic}textarea{height:auto;min-height:50px;border-radius:0}select{box-sizing:border-box;width:100%;border-radius:0}.map_canvas img,.map_canvas embed,.map_canvas object,.mqa-display img,.mqa-display embed,.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:79.125rem;margin-right:auto;margin-left:auto}.row::before,.row::after{display:table;content:' ';-ms-flex-preferred-size:0;flex-basis:0;-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,.columns,.column:last-child:not(:first-child),.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-offset-0{margin-left:0%}.small-2{width:16.66667%}.small-push-2{position:relative;left:16.66667%}.small-pull-2{position:relative;left:-16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{width:25%}.small-push-3{position:relative;left:25%}.small-pull-3{position:relative;left:-25%}.small-offset-2{margin-left:16.66667%}.small-4{width:33.33333%}.small-push-4{position:relative;left:33.33333%}.small-pull-4{position:relative;left:-33.33333%}.small-offset-3{margin-left:25%}.small-5{width:41.66667%}.small-push-5{position:relative;left:41.66667%}.small-pull-5{position:relative;left:-41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{width:50%}.small-push-6{position:relative;left:50%}.small-pull-6{position:relative;left:-50%}.small-offset-5{margin-left:41.66667%}.small-7{width:58.33333%}.small-push-7{position:relative;left:58.33333%}.small-pull-7{position:relative;left:-58.33333%}.small-offset-6{margin-left:50%}.small-8{width:66.66667%}.small-push-8{position:relative;left:66.66667%}.small-pull-8{position:relative;left:-66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{width:75%}.small-push-9{position:relative;left:75%}.small-pull-9{position:relative;left:-75%}.small-offset-8{margin-left:66.66667%}.small-10{width:83.33333%}.small-push-10{position:relative;left:83.33333%}.small-pull-10{position:relative;left:-83.33333%}.small-offset-9{margin-left:75%}.small-11{width:91.66667%}.small-push-11{position:relative;left:91.66667%}.small-pull-11{position:relative;left:-91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{width:100%}.small-offset-11{margin-left:91.66667%}.small-up-1>.column,.small-up-1>.columns{float:left;width:100%}.small-up-1>.column:nth-of-type(1n),.small-up-1>.columns:nth-of-type(1n){clear:none}.small-up-1>.column:nth-of-type(1n+1),.small-up-1>.columns:nth-of-type(1n+1){clear:both}.small-up-1>.column:last-child,.small-up-1>.columns:last-child{float:left}.small-up-2>.column,.small-up-2>.columns{float:left;width:50%}.small-up-2>.column:nth-of-type(1n),.small-up-2>.columns:nth-of-type(1n){clear:none}.small-up-2>.column:nth-of-type(2n+1),.small-up-2>.columns:nth-of-type(2n+1){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}.small-collapse .row{margin-right:0;margin-left:0}.expanded.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-uncentered,.small-push-0,.small-pull-0{position:static;margin-right:0;margin-left:0}.small-uncentered,.small-uncentered:last-child:not(:first-child),.small-push-0,.small-push-0:last-child:not(:first-child),.small-pull-0,.small-pull-0:last-child:not(:first-child){float:left;clear:none}.small-uncentered:last-child:not(:first-child),.small-push-0:last-child:not(:first-child),.small-pull-0: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(2n+1),.medium-up-2>.columns:nth-of-type(2n+1){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}.medium-collapse .row{margin-right:0;margin-left:0}.expanded.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-uncentered,.medium-push-0,.medium-pull-0{position:static;margin-right:0;margin-left:0}.medium-uncentered,.medium-uncentered:last-child:not(:first-child),.medium-push-0,.medium-push-0:last-child:not(:first-child),.medium-pull-0,.medium-pull-0:last-child:not(:first-child){float:left;clear:none}.medium-uncentered:last-child:not(:first-child),.medium-push-0:last-child:not(:first-child),.medium-pull-0: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(2n+1),.large-up-2>.columns:nth-of-type(2n+1){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}.large-collapse .row{margin-right:0;margin-left:0}.expanded.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-uncentered,.large-push-0,.large-pull-0{position:static;margin-right:0;margin-left:0}.large-uncentered,.large-uncentered:last-child:not(:first-child),.large-push-0,.large-push-0:last-child:not(:first-child),.large-pull-0,.large-pull-0:last-child:not(:first-child){float:left;clear:none}.large-uncentered:last-child:not(:first-child),.large-push-0:last-child:not(:first-child),.large-pull-0: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(2n+1),.xlarge-up-2>.columns:nth-of-type(2n+1){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}.xlarge-collapse .row{margin-right:0;margin-left:0}.expanded.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-uncentered,.xlarge-push-0,.xlarge-pull-0{position:static;margin-right:0;margin-left:0}.xlarge-uncentered,.xlarge-uncentered:last-child:not(:first-child),.xlarge-push-0,.xlarge-push-0:last-child:not(:first-child),.xlarge-pull-0,.xlarge-pull-0:last-child:not(:first-child){float:left;clear:none}.xlarge-uncentered:last-child:not(:first-child),.xlarge-push-0:last-child:not(:first-child),.xlarge-pull-0: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}}div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}p{margin-bottom:1rem;font-size:inherit;line-height:1.6;text-rendering:optimizeLegibility}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:80%;line-height:inherit}h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-style:normal;font-weight:normal;color:inherit;text-rendering:optimizeLegibility}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small{line-height:0;color:gray}h1,.h1{font-size:3.75rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h2,.h2{font-size:1.25rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}@media print, screen and (min-width: 40em){h1,.h1{font-size:3.75rem}h2,.h2{font-size:1.25rem}}@media print, screen and (min-width: 64em){h1,.h1{font-size:8rem}h2,.h2{font-size:2.5rem}}a{line-height:inherit;color:#d2dc6a;text-decoration:none;cursor:pointer}a:hover,a:focus{color:#c7d345}a img{border:0}hr{clear:both;max-width:79.125rem;height:0;margin:1.25rem auto;border-top:0;border-right:0;border-bottom:1px solid gray;border-left:0}ul,ol,dl{margin-bottom:1rem;list-style-position:outside;line-height:1.6}li{font-size:inherit}ul{margin-left:1.25rem;list-style-type:disc}ol{margin-left:1.25rem}ul ul,ol ul,ul ol,ol ol{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:bold}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid gray}blockquote,blockquote p{line-height:1.6;color:#4c4c4c}cite{display:block;font-size:.8125rem;color:#4c4c4c}cite:before{content:"— "}abbr,abbr[title]{border-bottom:1px dotted #000;cursor:help;text-decoration:none}figure{margin:0}code{padding:.125rem .3125rem .0625rem;border:1px solid gray;background-color:gray;font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:normal;color:#000}kbd{margin:0;padding:.125rem .25rem 0;background-color:gray;font-family:Consolas,"Liberation Mono",Courier,monospace;color:#000}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:normal;line-height:1.4;color:#4c4c4c}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}ul.no-bullet,ol.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;box-shadow:none !important;color:black !important;text-shadow:none !important}.show-for-print{display:block !important}.hide-for-print{display:none !important}table.show-for-print{display:table !important}thead.show-for-print{display:table-header-group !important}tbody.show-for-print{display:table-row-group !important}tr.show-for-print{display:table-row !important}td.show-for-print{display:table-cell !important}th.show-for-print{display:table-cell !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^='javascript:']:after,a[href^='#']:after{content:''}abbr[title]:after{content:" (" attr(title) ")"}pre,blockquote{border:1px solid #4c4c4c;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.print-break-inside{page-break-inside:auto}}.button{display:inline-block;vertical-align:middle;margin:0 0 1rem 0;padding:0.85em 1em;border:1px solid transparent;border-radius:0;transition:background-color 0.25s ease-out,color 0.25s ease-out;font-family:inherit;font-size:0.9rem;-webkit-appearance:none;line-height:1;text-align:center;cursor:pointer;background-color:#d2dc6a;color:#fff}[data-whatinput='mouse'] .button{outline:0}.button:hover,.button:focus{background-color:#c6d342;color:#fff}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-right:0;margin-left:0}.button.primary{background-color:#d2dc6a;color:#000}.button.primary:hover,.button.primary:focus{background-color:#c2d035;color:#000}.button.secondary{background-color:#000;color:#fff}.button.secondary:hover,.button.secondary:focus{background-color:#000;color:#fff}.button.success{background-color:#3adb76;color:#000}.button.success:hover,.button.success:focus{background-color:#22bb5b;color:#000}.button.warning{background-color:#ffae00;color:#000}.button.warning:hover,.button.warning:focus{background-color:#cc8b00;color:#000}.button.alert{background-color:#cc4b37;color:#000}.button.alert:hover,.button.alert:focus{background-color:#a53b2a;color:#000}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed}.button.disabled,.button.disabled:hover,.button.disabled:focus,.button[disabled],.button[disabled]:hover,.button[disabled]:focus{background-color:#d2dc6a;color:#fff}.button.disabled.primary,.button[disabled].primary{opacity:.25;cursor:not-allowed}.button.disabled.primary,.button.disabled.primary:hover,.button.disabled.primary:focus,.button[disabled].primary,.button[disabled].primary:hover,.button[disabled].primary:focus{background-color:#d2dc6a;color:#000}.button.disabled.secondary,.button[disabled].secondary{opacity:.25;cursor:not-allowed}.button.disabled.secondary,.button.disabled.secondary:hover,.button.disabled.secondary:focus,.button[disabled].secondary,.button[disabled].secondary:hover,.button[disabled].secondary:focus{background-color:#000;color:#fff}.button.disabled.success,.button[disabled].success{opacity:.25;cursor:not-allowed}.button.disabled.success,.button.disabled.success:hover,.button.disabled.success:focus,.button[disabled].success,.button[disabled].success:hover,.button[disabled].success:focus{background-color:#3adb76;color:#000}.button.disabled.warning,.button[disabled].warning{opacity:.25;cursor:not-allowed}.button.disabled.warning,.button.disabled.warning:hover,.button.disabled.warning:focus,.button[disabled].warning,.button[disabled].warning:hover,.button[disabled].warning:focus{background-color:#ffae00;color:#000}.button.disabled.alert,.button[disabled].alert{opacity:.25;cursor:not-allowed}.button.disabled.alert,.button.disabled.alert:hover,.button.disabled.alert:focus,.button[disabled].alert,.button[disabled].alert:hover,.button[disabled].alert:focus{background-color:#cc4b37;color:#000}.button.hollow{border:1px solid #d2dc6a;color:#d2dc6a}.button.hollow,.button.hollow:hover,.button.hollow:focus{background-color:transparent}.button.hollow.disabled,.button.hollow.disabled:hover,.button.hollow.disabled:focus,.button.hollow[disabled],.button.hollow[disabled]:hover,.button.hollow[disabled]:focus{background-color:transparent}.button.hollow:hover,.button.hollow:focus{border-color:#7b841f;color:#7b841f}.button.hollow:hover.disabled,.button.hollow:hover[disabled],.button.hollow:focus.disabled,.button.hollow:focus[disabled]{border:1px solid #d2dc6a;color:#d2dc6a}.button.hollow.primary{border:1px solid #d2dc6a;color:#d2dc6a}.button.hollow.primary:hover,.button.hollow.primary:focus{border-color:#7b841f;color:#7b841f}.button.hollow.primary:hover.disabled,.button.hollow.primary:hover[disabled],.button.hollow.primary:focus.disabled,.button.hollow.primary:focus[disabled]{border:1px solid #d2dc6a;color:#d2dc6a}.button.hollow.secondary{border:1px solid #000;color:#000}.button.hollow.secondary:hover,.button.hollow.secondary:focus{border-color:#000;color:#000}.button.hollow.secondary:hover.disabled,.button.hollow.secondary:hover[disabled],.button.hollow.secondary:focus.disabled,.button.hollow.secondary:focus[disabled]{border:1px solid #000;color:#000}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:hover,.button.hollow.success:focus{border-color:#157539;color:#157539}.button.hollow.success:hover.disabled,.button.hollow.success:hover[disabled],.button.hollow.success:focus.disabled,.button.hollow.success:focus[disabled]{border:1px solid #3adb76;color:#3adb76}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:hover,.button.hollow.warning:focus{border-color:#805700;color:#805700}.button.hollow.warning:hover.disabled,.button.hollow.warning:hover[disabled],.button.hollow.warning:focus.disabled,.button.hollow.warning:focus[disabled]{border:1px solid #ffae00;color:#ffae00}.button.hollow.alert{border:1px solid #cc4b37;color:#cc4b37}.button.hollow.alert:hover,.button.hollow.alert:focus{border-color:#67251a;color:#67251a}.button.hollow.alert:hover.disabled,.button.hollow.alert:hover[disabled],.button.hollow.alert:focus.disabled,.button.hollow.alert:focus[disabled]{border:1px solid #cc4b37;color:#cc4b37}.button.clear{border:1px solid #d2dc6a;color:#d2dc6a}.button.clear,.button.clear:hover,.button.clear:focus{background-color:transparent}.button.clear.disabled,.button.clear.disabled:hover,.button.clear.disabled:focus,.button.clear[disabled],.button.clear[disabled]:hover,.button.clear[disabled]:focus{background-color:transparent}.button.clear:hover,.button.clear:focus{border-color:#7b841f;color:#7b841f}.button.clear:hover.disabled,.button.clear:hover[disabled],.button.clear:focus.disabled,.button.clear:focus[disabled]{border:1px solid #d2dc6a;color:#d2dc6a}.button.clear,.button.clear.disabled,.button.clear[disabled],.button.clear:hover,.button.clear:hover.disabled,.button.clear:hover[disabled],.button.clear:focus,.button.clear:focus.disabled,.button.clear:focus[disabled]{border-color:transparent}.button.clear.primary{border:1px solid #d2dc6a;color:#d2dc6a}.button.clear.primary:hover,.button.clear.primary:focus{border-color:#7b841f;color:#7b841f}.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled],.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled]{border:1px solid #d2dc6a;color:#d2dc6a}.button.clear.primary,.button.clear.primary.disabled,.button.clear.primary[disabled],.button.clear.primary:hover,.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled],.button.clear.primary:focus,.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled]{border-color:transparent}.button.clear.secondary{border:1px solid #000;color:#000}.button.clear.secondary:hover,.button.clear.secondary:focus{border-color:#000;color:#000}.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled],.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled]{border:1px solid #000;color:#000}.button.clear.secondary,.button.clear.secondary.disabled,.button.clear.secondary[disabled],.button.clear.secondary:hover,.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled],.button.clear.secondary:focus,.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled]{border-color:transparent}.button.clear.success{border:1px solid #3adb76;color:#3adb76}.button.clear.success:hover,.button.clear.success:focus{border-color:#157539;color:#157539}.button.clear.success:hover.disabled,.button.clear.success:hover[disabled],.button.clear.success:focus.disabled,.button.clear.success:focus[disabled]{border:1px solid #3adb76;color:#3adb76}.button.clear.success,.button.clear.success.disabled,.button.clear.success[disabled],.button.clear.success:hover,.button.clear.success:hover.disabled,.button.clear.success:hover[disabled],.button.clear.success:focus,.button.clear.success:focus.disabled,.button.clear.success:focus[disabled]{border-color:transparent}.button.clear.warning{border:1px solid #ffae00;color:#ffae00}.button.clear.warning:hover,.button.clear.warning:focus{border-color:#805700;color:#805700}.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled],.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled]{border:1px solid #ffae00;color:#ffae00}.button.clear.warning,.button.clear.warning.disabled,.button.clear.warning[disabled],.button.clear.warning:hover,.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled],.button.clear.warning:focus,.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled]{border-color:transparent}.button.clear.alert{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert:hover,.button.clear.alert:focus{border-color:#67251a;color:#67251a}.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled],.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled]{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert,.button.clear.alert.disabled,.button.clear.alert[disabled],.button.clear.alert:hover,.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled],.button.clear.alert:focus,.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled]{border-color:transparent}.button.dropdown::after{display:block;width:0;height:0;border:inset .4em;content:'';border-bottom-width:0;border-top-style:solid;border-color:#fff transparent transparent;position:relative;top:0.4em;display:inline-block;float:right;margin-left:1em}.button.dropdown.hollow::after,.button.dropdown.clear::after{border-top-color:#d2dc6a}.button.dropdown.hollow.primary::after,.button.dropdown.clear.primary::after{border-top-color:#d2dc6a}.button.dropdown.hollow.secondary::after,.button.dropdown.clear.secondary::after{border-top-color:#000}.button.dropdown.hollow.success::after,.button.dropdown.clear.success::after{border-top-color:#3adb76}.button.dropdown.hollow.warning::after,.button.dropdown.clear.warning::after{border-top-color:#ffae00}.button.dropdown.hollow.alert::after,.button.dropdown.clear.alert::after{border-top-color:#cc4b37}.button.arrow-only::after{top:-0.1em;float:none;margin-left:0}a.button:hover,a.button:focus{text-decoration:none}[type='text'],[type='password'],[type='date'],[type='datetime'],[type='datetime-local'],[type='month'],[type='week'],[type='email'],[type='number'],[type='search'],[type='tel'],[type='time'],[type='url'],[type='color'],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;margin:0 0 1rem;padding:.5rem;border:1px solid gray;border-radius:0;background-color:#fff;box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);font-family:inherit;font-size:1rem;font-weight:normal;line-height:1.5;color:#000;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}[type='text']:focus,[type='password']:focus,[type='date']:focus,[type='datetime']:focus,[type='datetime-local']:focus,[type='month']:focus,[type='week']:focus,[type='email']:focus,[type='number']:focus,[type='search']:focus,[type='tel']:focus,[type='time']:focus,[type='url']:focus,[type='color']:focus,textarea:focus{outline:none;border:1px solid #4c4c4c;background-color:#fff;box-shadow:0 0 5px gray;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:gray;cursor:not-allowed}[type='submit'],[type='button']{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}input[type='search']{box-sizing:border-box}:-ms-input-placeholder{color:gray}::placeholder{color:gray}[type='file'],[type='checkbox'],[type='radio']{margin:0 0 1rem}[type='checkbox']+label,[type='radio']+label{display:inline-block;vertical-align:baseline;margin-left:.5rem;margin-right:1rem;margin-bottom:0}[type='checkbox']+label[for],[type='radio']+label[for]{cursor:pointer}label>[type='checkbox'],label>[type='radio']{margin-right:.5rem}[type='file']{width:100%}label{display:block;margin:0;font-size:.875rem;font-weight:normal;line-height:1.8;color:#000}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#000}.input-group{display:-ms-flexbox;display:flex;width:100%;margin-bottom:1rem;-ms-flex-align:stretch;align-items:stretch}.input-group>:first-child,.input-group>:first-child.input-group-button>*{border-radius:0 0 0 0}.input-group>:last-child,.input-group>:last-child.input-group-button>*{border-radius:0 0 0 0}.input-group-label,.input-group-field,.input-group-button,.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{margin:0;white-space:nowrap}.input-group-label{padding:0 1rem;border:1px solid gray;background:gray;color:#000;text-align:center;white-space:nowrap;display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-align:center;align-items:center}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;-ms-flex:1 1 0px;flex:1 1 0px;min-width:0}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto}.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch;height:auto;padding-top:0;padding-bottom:0;font-size:1rem}fieldset{margin:0;padding:0;border:0}legend{max-width:100%;margin-bottom:.5rem}.fieldset{margin:1.125rem 0;padding:1.25rem;border:1px solid gray}.fieldset legend{margin:0;margin-left:-.1875rem;padding:0 .1875rem}select{height:2.4375rem;margin:0 0 1rem;padding:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid gray;border-radius:0;background-color:#fff;font-family:inherit;font-size:1rem;font-weight:normal;line-height:1.5;color:#000;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2876, 76, 76%29'></polygon></svg>");background-origin:content-box;background-position:right -1rem center;background-repeat:no-repeat;background-size:9px 6px;padding-right:1.5rem;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}@media screen and (min-width: 0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}select:focus{outline:none;border:1px solid #4c4c4c;background-color:#fff;box-shadow:0 0 5px gray;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}select:disabled{background-color:gray;cursor:not-allowed}select::-ms-expand{display:none}select[multiple]{height:auto;background-image:none}.is-invalid-input:not(:focus){border-color:#cc4b37;background-color:#faedeb}.is-invalid-input:not(:focus):-ms-input-placeholder{color:#cc4b37}.is-invalid-input:not(:focus)::placeholder{color:#cc4b37}.is-invalid-label{color:#cc4b37}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:bold;color:#cc4b37}.form-error.is-visible{display:block}.accordion{margin-left:0;background:#fff;list-style-type:none}.accordion[disabled] .accordion-title{cursor:not-allowed}.accordion-item:first-child>:first-child{border-radius:0 0 0 0}.accordion-item:last-child>:last-child{border-radius:0 0 0 0}.accordion-title{position:relative;display:block;padding:1.25rem 1rem;border:1px solid gray;border-bottom:0;font-size:.75rem;line-height:1;color:#d2dc6a}:last-child:not(.is-active)>.accordion-title{border-bottom:1px solid gray;border-radius:0 0 0 0}.accordion-title:hover,.accordion-title:focus{background-color:gray}.accordion-title::before{position:absolute;top:50%;right:1rem;margin-top:-0.5rem;content:'+'}.is-active>.accordion-title::before{content:'\2013'}.accordion-content{display:none;padding:1rem;border:1px solid gray;border-bottom:0;background-color:#fff;color:#000}:last-child>.accordion-content:last-child{border-bottom:1px solid gray}.accordion-menu li{width:100%}.accordion-menu a{padding:0.7rem 1rem}.accordion-menu .is-accordion-submenu a{padding:0.7rem 1rem}.accordion-menu .nested.is-accordion-submenu{margin-right:0;margin-left:1rem}.accordion-menu.align-right .nested.is-accordion-submenu{margin-right:1rem;margin-left:0}.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle)>a{position:relative}.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle)>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#d2dc6a transparent transparent;position:absolute;top:50%;margin-top:-3px;right:1rem}.accordion-menu.align-left .is-accordion-submenu-parent>a::after{right:1rem;left:auto}.accordion-menu.align-right .is-accordion-submenu-parent>a::after{right:auto;left:1rem}.accordion-menu .is-accordion-submenu-parent[aria-expanded='true']>a::after{-ms-transform:rotate(180deg);transform:rotate(180deg);-ms-transform-origin:50% 50%;transform-origin:50% 50%}.is-accordion-submenu-parent{position:relative}.has-submenu-toggle>a{margin-right:40px}.submenu-toggle{position:absolute;top:0;right:0;width:40px;height:40px;cursor:pointer}.submenu-toggle::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#d2dc6a transparent transparent;top:0;bottom:0;margin:auto}.submenu-toggle[aria-expanded='true']::after{-ms-transform:scaleY(-1);transform:scaleY(-1);-ms-transform-origin:50% 50%;transform-origin:50% 50%}.submenu-toggle-text{position:absolute !important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.button-group{margin-bottom:1rem;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-align:stretch;align-items:stretch}.button-group::before,.button-group::after{display:table;content:' ';-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-order:1;order:1}.button-group::after{clear:both}.button-group .button{margin:0;margin-right:1px;margin-bottom:1px;font-size:0.9rem;-ms-flex:0 0 auto;flex:0 0 auto}.button-group .button:last-child{margin-right:0}.button-group.tiny .button{font-size:.6rem}.button-group.small .button{font-size:.75rem}.button-group.large .button{font-size:1.25rem}.button-group.expanded .button{-ms-flex:1 1 0px;flex:1 1 0px}.button-group.primary .button{background-color:#d2dc6a;color:#000}.button-group.primary .button:hover,.button-group.primary .button:focus{background-color:#c2d035;color:#000}.button-group.secondary .button{background-color:#000;color:#fff}.button-group.secondary .button:hover,.button-group.secondary .button:focus{background-color:#000;color:#fff}.button-group.success .button{background-color:#3adb76;color:#000}.button-group.success .button:hover,.button-group.success .button:focus{background-color:#22bb5b;color:#000}.button-group.warning .button{background-color:#ffae00;color:#000}.button-group.warning .button:hover,.button-group.warning .button:focus{background-color:#cc8b00;color:#000}.button-group.alert .button{background-color:#cc4b37;color:#000}.button-group.alert .button:hover,.button-group.alert .button:focus{background-color:#a53b2a;color:#000}.button-group.stacked,.button-group.stacked-for-small,.button-group.stacked-for-medium{-ms-flex-wrap:wrap;flex-wrap:wrap}.button-group.stacked .button,.button-group.stacked-for-small .button,.button-group.stacked-for-medium .button{-ms-flex:0 0 100%;flex:0 0 100%}.button-group.stacked .button:last-child,.button-group.stacked-for-small .button:last-child,.button-group.stacked-for-medium .button:last-child{margin-bottom:0}.button-group.stacked.expanded .button,.button-group.stacked-for-small.expanded .button,.button-group.stacked-for-medium.expanded .button{-ms-flex:1 1 0px;flex:1 1 0px}@media print, screen and (min-width: 40em){.button-group.stacked-for-small .button{-ms-flex:0 0 auto;flex:0 0 auto;margin-bottom:0}}@media print, screen and (min-width: 64em){.button-group.stacked-for-medium .button{-ms-flex:0 0 auto;flex:0 0 auto;margin-bottom:0}}@media screen and (max-width: 39.99875em){.button-group.stacked-for-small.expanded{display:block}.button-group.stacked-for-small.expanded .button{display:block;margin-right:0}}@media screen and (max-width: 63.99875em){.button-group.stacked-for-medium.expanded{display:block}.button-group.stacked-for-medium.expanded .button{display:block;margin-right:0}}.menu{padding:0;margin:0;list-style:none;position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}[data-whatinput='mouse'] .menu li{outline:0}.menu a,.menu .button{line-height:1;text-decoration:none;display:block;padding:0.7rem 1rem}.menu input,.menu select,.menu a,.menu button{margin-bottom:0}.menu input{display:inline-block}.menu,.menu.horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.menu.vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-direction:column;flex-direction:column}.menu.expanded li{-ms-flex:1 1 0px;flex:1 1 0px}.menu.simple{-ms-flex-align:center;align-items:center}.menu.simple li+li{margin-left:1rem}.menu.simple a{padding:0}@media print, screen and (min-width: 40em){.menu.medium-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.menu.medium-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-direction:column;flex-direction:column}.menu.medium-expanded li{-ms-flex:1 1 0px;flex:1 1 0px}.menu.medium-simple li{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 64em){.menu.large-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.menu.large-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-direction:column;flex-direction:column}.menu.large-expanded li{-ms-flex:1 1 0px;flex:1 1 0px}.menu.large-simple li{-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width: 75em){.menu.xlarge-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-direction:row;flex-direction:row}.menu.xlarge-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-direction:column;flex-direction:column}.menu.xlarge-expanded li{-ms-flex:1 1 0px;flex:1 1 0px}.menu.xlarge-simple li{-ms-flex:1 1 0px;flex:1 1 0px}}.menu.nested{margin-right:0;margin-left:1rem}.menu.icons a{display:-ms-flexbox;display:flex}.menu.icon-top a,.menu.icon-right a,.menu.icon-bottom a,.menu.icon-left a{display:-ms-flexbox;display:flex}.menu.icon-left li a{-ms-flex-flow:row nowrap;flex-flow:row nowrap}.menu.icon-left li a img,.menu.icon-left li a i,.menu.icon-left li a svg{margin-right:.25rem}.menu.icon-right li a{-ms-flex-flow:row nowrap;flex-flow:row nowrap}.menu.icon-right li a img,.menu.icon-right li a i,.menu.icon-right li a svg{margin-left:.25rem}.menu.icon-top li a{-ms-flex-flow:column nowrap;flex-flow:column nowrap}.menu.icon-top li a img,.menu.icon-top li a i,.menu.icon-top li a svg{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch;margin-bottom:.25rem;text-align:center}.menu.icon-bottom li a{-ms-flex-flow:column nowrap;flex-flow:column nowrap}.menu.icon-bottom li a img,.menu.icon-bottom li a i,.menu.icon-bottom li a svg{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch;margin-bottom:.25rem;text-align:center}.menu .is-active>a{background:#d2dc6a;color:#fff}.menu .active>a{background:#d2dc6a;color:#fff}.menu.align-left{-ms-flex-pack:start;justify-content:flex-start}.menu.align-right li{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.menu.align-right li .submenu li{-ms-flex-pack:start;justify-content:flex-start}.menu.align-right.vertical li{display:block;text-align:right}.menu.align-right.vertical li .submenu li{text-align:right}.menu.align-right .nested{margin-right:1rem;margin-left:0}.menu.align-center li{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.menu.align-center li .submenu li{-ms-flex-pack:start;justify-content:flex-start}.menu .menu-text{padding:0.7rem 1rem;font-weight:bold;line-height:1;color:inherit}.menu-centered>.menu{-ms-flex-pack:center;justify-content:center}.menu-centered>.menu li{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.menu-centered>.menu li .submenu li{-ms-flex-pack:start;justify-content:flex-start}.no-js [data-responsive-menu] ul{display:none}.menu-icon{position:relative;display:inline-block;vertical-align:middle;width:20px;height:16px;cursor:pointer}.menu-icon::after{position:absolute;top:0;left:0;display:block;width:100%;height:2px;background:#fff;box-shadow:0 7px 0 #fff,0 14px 0 #fff;content:''}.menu-icon:hover::after{background:gray;box-shadow:0 7px 0 gray,0 14px 0 gray}.menu-icon.dark{position:relative;display:inline-block;vertical-align:middle;width:20px;height:16px;cursor:pointer}.menu-icon.dark::after{position:absolute;top:0;left:0;display:block;width:100%;height:2px;background:#000;box-shadow:0 7px 0 #000,0 14px 0 #000;content:''}.menu-icon.dark:hover::after{background:#4c4c4c;box-shadow:0 7px 0 #4c4c4c,0 14px 0 #4c4c4c}.is-drilldown{position:relative;overflow:hidden}.is-drilldown li{display:block}.is-drilldown.animate-height{transition:height 0.5s}.drilldown a{padding:0.7rem 1rem;background:#fff}.drilldown .is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;width:100%;background:#fff;transition:transform 0.15s linear}.drilldown .is-drilldown-submenu.is-active{z-index:1;display:block;-ms-transform:translateX(-100%);transform:translateX(-100%)}.drilldown .is-drilldown-submenu.is-closing{-ms-transform:translateX(100%);transform:translateX(100%)}.drilldown .is-drilldown-submenu a{padding:0.7rem 1rem}.drilldown .nested.is-drilldown-submenu{margin-right:0;margin-left:0}.drilldown .drilldown-submenu-cover-previous{min-height:100%}.drilldown .is-drilldown-submenu-parent>a{position:relative}.drilldown .is-drilldown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #d2dc6a;position:absolute;top:50%;margin-top:-6px;right:1rem}.drilldown.align-left .is-drilldown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #d2dc6a;right:1rem;left:auto}.drilldown.align-right .is-drilldown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #d2dc6a transparent transparent;right:auto;left:1rem}.drilldown .js-drilldown-back>a::before{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #d2dc6a transparent transparent;display:inline-block;vertical-align:middle;margin-right:0.75rem}.dropdown-pane{position:absolute;z-index:10;display:none;width:300px;padding:1rem;visibility:hidden;border:1px solid gray;border-radius:0;background-color:#fff;font-size:1rem}.dropdown-pane.is-opening{display:block}.dropdown-pane.is-open{display:block;visibility:visible}.dropdown-pane.tiny{width:100px}.dropdown-pane.small{width:200px}.dropdown-pane.large{width:400px}.dropdown.menu>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#d2dc6a transparent transparent;right:5px;left:auto;margin-top:-3px}[data-whatinput='mouse'] .dropdown.menu a{outline:0}.dropdown.menu>li>a{padding:0.7rem 1rem}.dropdown.menu>li.is-active>a{background:transparent;color:#d2dc6a}.no-js .dropdown.menu ul{display:none}.dropdown.menu .nested.is-dropdown-submenu{margin-right:0;margin-left:0}.dropdown.menu.vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.vertical>li>a::after{right:14px}.dropdown.menu.vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #d2dc6a transparent transparent;right:auto;left:5px}.dropdown.menu.vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #d2dc6a}@media print, screen and (min-width: 40em){.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.medium-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#d2dc6a transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.medium-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.medium-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.medium-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.medium-vertical>li>a::after{right:14px}.dropdown.menu.medium-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #d2dc6a transparent transparent;right:auto;left:5px}.dropdown.menu.medium-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #d2dc6a}}@media print, screen and (min-width: 64em){.dropdown.menu.large-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.large-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#d2dc6a transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.large-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.large-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.large-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.large-vertical>li>a::after{right:14px}.dropdown.menu.large-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #d2dc6a transparent transparent;right:auto;left:5px}.dropdown.menu.large-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #d2dc6a}}@media screen and (min-width: 75em){.dropdown.menu.xlarge-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.xlarge-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.xlarge-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.xlarge-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#d2dc6a transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.xlarge-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.xlarge-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.xlarge-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.xlarge-vertical>li>a::after{right:14px}.dropdown.menu.xlarge-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #d2dc6a transparent transparent;right:auto;left:5px}.dropdown.menu.xlarge-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #d2dc6a}}.dropdown.menu.align-right .is-dropdown-submenu.first-sub{top:100%;right:0;left:auto}.is-dropdown-menu.vertical{width:100px}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a::after{position:absolute;top:50%;right:5px;left:auto;margin-top:-6px}.is-dropdown-submenu-parent.opens-inner>.is-dropdown-submenu{top:100%;left:auto}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu{right:100%;left:auto}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu{right:auto;left:100%}.is-dropdown-submenu{position:absolute;top:0;left:100%;z-index:1;display:none;min-width:200px;border:1px solid gray;background:#fff}.dropdown .is-dropdown-submenu a{padding:0.7rem 1rem}.is-dropdown-submenu .is-dropdown-submenu-parent>a::after{right:14px}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #d2dc6a transparent transparent;right:auto;left:5px}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #d2dc6a}.is-dropdown-submenu .is-dropdown-submenu{margin-top:-1px}.is-dropdown-submenu>li{width:100%}.is-dropdown-submenu.js-dropdown-active{display:block}.responsive-embed,.flex-video{position:relative;height:0;margin-bottom:1rem;padding-bottom:75%;overflow:hidden}.responsive-embed iframe,.responsive-embed object,.responsive-embed embed,.responsive-embed video,.flex-video iframe,.flex-video object,.flex-video embed,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}.responsive-embed.widescreen,.flex-video.widescreen{padding-bottom:56.25%}.sticky-container{position:relative}.sticky{position:relative;z-index:0;transform:translate3d(0, 0, 0)}.sticky.is-stuck{position:fixed;z-index:5;width:100%}.sticky.is-stuck.is-at-top{top:0}.sticky.is-stuck.is-at-bottom{bottom:0}.sticky.is-anchored{position:relative;right:auto;left:auto}.sticky.is-anchored.is-at-bottom{bottom:0}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;display:none;background-color:rgba(0,0,0,0.45);overflow-y:auto}.reveal{z-index:1006;-webkit-backface-visibility:hidden;backface-visibility:hidden;display:none;padding:1rem;border:1px solid gray;border-radius:0;background-color:#fff;position:relative;top:100px;margin-right:auto;margin-left:auto;overflow-y:auto}[data-whatinput='mouse'] .reveal{outline:0}@media print, screen and (min-width: 40em){.reveal{min-height:0}}.reveal .column,.reveal .columns{min-width:0}.reveal>:last-child{margin-bottom:0}@media print, screen and (min-width: 40em){.reveal{width:100vw;max-width:79.125rem}}.reveal.collapse{padding:0}@media print, screen and (min-width: 40em){.reveal.tiny{width:30%;max-width:79.125rem}}@media print, screen and (min-width: 40em){.reveal.small{width:50%;max-width:79.125rem}}@media print, screen and (min-width: 40em){.reveal.large{width:90%;max-width:79.125rem}}.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}table thead,table tbody,table tfoot{border:1px solid #f2f2f2;background-color:#fff}table caption{padding:.5rem .625rem .625rem;font-weight:bold}table thead{background:#f9f9f9;color:#000}table tfoot{background:#f2f2f2;color:#000}table thead tr,table tfoot tr{background:transparent}table thead th,table thead td,table tfoot th,table tfoot td{padding:.5rem .625rem .625rem;font-weight:bold;text-align:left}table tbody th,table tbody td{padding:.5rem .625rem .625rem}table tbody tr:nth-child(even){border-bottom:0;background-color:#f2f2f2}table.unstriped tbody{background-color:#fff}table.unstriped tbody tr{border-bottom:0;border-bottom:1px solid #f2f2f2;background-color:#fff}@media screen and (max-width: 63.99875em){table.stack thead{display:none}table.stack tfoot{display:none}table.stack tr,table.stack th,table.stack td{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-x:auto}table.hover thead tr:hover{background-color:#f4f4f4}table.hover tfoot tr:hover{background-color:#ededed}table.hover tbody tr:hover{background-color:#fafafa}table.hover:not(.unstriped) tr:nth-of-type(even):hover{background-color:#ededed}.table-scroll{overflow-x:auto}.title-bar{padding:.5rem;background:#000;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-align:center;align-items:center}.title-bar .menu-icon{margin-left:.25rem;margin-right:.25rem}.title-bar-left,.title-bar-right{-ms-flex:1 1 0px;flex:1 1 0px}.title-bar-right{text-align:right}.title-bar-title{display:inline-block;vertical-align:middle;font-weight:bold}.has-tip{position:relative;display:inline-block;border-bottom:dotted 1px #4c4c4c;font-weight:bold;cursor:help}.tooltip{position:absolute;top:calc(100% + .6495rem);z-index:1200;max-width:10rem;padding:.75rem;border-radius:0;background-color:#000;font-size:80%;color:#fff}.tooltip::before{position:absolute}.tooltip.bottom::before{display:block;width:0;height:0;border:inset .75rem;content:'';border-top-width:0;border-bottom-style:solid;border-color:transparent transparent #000;bottom:100%}.tooltip.bottom.align-center::before{left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%)}.tooltip.top::before{display:block;width:0;height:0;border:inset .75rem;content:'';border-bottom-width:0;border-top-style:solid;border-color:#000 transparent transparent;top:100%;bottom:auto}.tooltip.top.align-center::before{left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%)}.tooltip.left::before{display:block;width:0;height:0;border:inset .75rem;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #000;left:100%}.tooltip.left.align-center::before{bottom:auto;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%)}.tooltip.right::before{display:block;width:0;height:0;border:inset .75rem;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #000 transparent transparent;right:100%;left:auto}.tooltip.right.align-center::before{bottom:auto;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%)}.tooltip.align-top::before{bottom:auto;top:10%}.tooltip.align-bottom::before{bottom:10%;top:auto}.tooltip.align-left::before{left:10%;right:auto}.tooltip.align-right::before{left:auto;right:10%}.top-bar{display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;padding:.5rem;-ms-flex-wrap:wrap;flex-wrap:wrap}.top-bar,.top-bar ul{background-color:gray}.top-bar input{max-width:200px;margin-right:1rem}.top-bar .input-group-field{width:100%;margin-right:0}.top-bar input.button{width:auto}.top-bar .top-bar-left,.top-bar .top-bar-right{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}@media print, screen and (min-width: 40em){.top-bar{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.top-bar .top-bar-left{-ms-flex:1 1 auto;flex:1 1 auto;margin-right:auto}.top-bar .top-bar-right{-ms-flex:0 1 auto;flex:0 1 auto;margin-left:auto}}@media screen and (max-width: 63.99875em){.top-bar.stacked-for-medium{-ms-flex-wrap:wrap;flex-wrap:wrap}.top-bar.stacked-for-medium .top-bar-left,.top-bar.stacked-for-medium .top-bar-right{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media screen and (max-width: 74.99875em){.top-bar.stacked-for-large{-ms-flex-wrap:wrap;flex-wrap:wrap}.top-bar.stacked-for-large .top-bar-left,.top-bar.stacked-for-large .top-bar-right{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}@media screen and (max-width: 89.99875em){.top-bar.stacked-for-xlarge{-ms-flex-wrap:wrap;flex-wrap:wrap}.top-bar.stacked-for-xlarge .top-bar-left,.top-bar.stacked-for-xlarge .top-bar-right{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}}.top-bar-title{-ms-flex:0 0 auto;flex:0 0 auto;margin:0.5rem 1rem 0.5rem 0}.top-bar-left,.top-bar-right{-ms-flex:0 0 auto;flex:0 0 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}.show-for-landscape,.hide-for-portrait{display:block !important}@media screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:block !important}}@media screen and (orientation: portrait){.show-for-landscape,.hide-for-portrait{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}}.align-left{-ms-flex-pack:start;justify-content:flex-start}.align-right{-ms-flex-pack:end;justify-content:flex-end}.align-center{-ms-flex-pack:center;justify-content:center}.align-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{-ms-flex-pack:start;justify-content:flex-start}.align-right.vertical.menu>li>a{-ms-flex-pack:end;justify-content:flex-end}.align-center.vertical.menu>li>a{-ms-flex-pack:center;justify-content:center}.align-top{-ms-flex-align:start;align-items:flex-start}.align-self-top{-ms-flex-item-align:start;align-self:flex-start}.align-bottom{-ms-flex-align:end;align-items:flex-end}.align-self-bottom{-ms-flex-item-align:end;align-self:flex-end}.align-middle{-ms-flex-align:center;align-items:center}.align-self-middle{-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center}.align-stretch{-ms-flex-align:stretch;align-items:stretch}.align-self-stretch{-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;align-self:stretch}.align-center-middle{-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.small-order-1{-ms-flex-order:1;order:1}.small-order-2{-ms-flex-order:2;order:2}.small-order-3{-ms-flex-order:3;order:3}.small-order-4{-ms-flex-order:4;order:4}.small-order-5{-ms-flex-order:5;order:5}.small-order-6{-ms-flex-order:6;order:6}@media print, screen and (min-width: 40em){.medium-order-1{-ms-flex-order:1;order:1}.medium-order-2{-ms-flex-order:2;order:2}.medium-order-3{-ms-flex-order:3;order:3}.medium-order-4{-ms-flex-order:4;order:4}.medium-order-5{-ms-flex-order:5;order:5}.medium-order-6{-ms-flex-order:6;order:6}}@media print, screen and (min-width: 64em){.large-order-1{-ms-flex-order:1;order:1}.large-order-2{-ms-flex-order:2;order:2}.large-order-3{-ms-flex-order:3;order:3}.large-order-4{-ms-flex-order:4;order:4}.large-order-5{-ms-flex-order:5;order:5}.large-order-6{-ms-flex-order:6;order:6}}@media screen and (min-width: 75em){.xlarge-order-1{-ms-flex-order:1;order:1}.xlarge-order-2{-ms-flex-order:2;order:2}.xlarge-order-3{-ms-flex-order:3;order:3}.xlarge-order-4{-ms-flex-order:4;order:4}.xlarge-order-5{-ms-flex-order:5;order:5}.xlarge-order-6{-ms-flex-order:6;order:6}}.flex-container{display:-ms-flexbox;display:flex}.flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}.flex-dir-row{-ms-flex-direction:row;flex-direction:row}.flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.flex-dir-column{-ms-flex-direction:column;flex-direction:column}.flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}@media print, screen and (min-width: 40em){.medium-flex-container{display:-ms-flexbox;display:flex}.medium-flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.medium-flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.medium-flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}.medium-flex-dir-row{-ms-flex-direction:row;flex-direction:row}.medium-flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.medium-flex-dir-column{-ms-flex-direction:column;flex-direction:column}.medium-flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media print, screen and (min-width: 64em){.large-flex-container{display:-ms-flexbox;display:flex}.large-flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.large-flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.large-flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}.large-flex-dir-row{-ms-flex-direction:row;flex-direction:row}.large-flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.large-flex-dir-column{-ms-flex-direction:column;flex-direction:column}.large-flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media screen and (min-width: 75em){.xlarge-flex-container{display:-ms-flexbox;display:flex}.xlarge-flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.xlarge-flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.xlarge-flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}.xlarge-flex-dir-row{-ms-flex-direction:row;flex-direction:row}.xlarge-flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.xlarge-flex-dir-column{-ms-flex-direction:column;flex-direction:column}.xlarge-flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.slide-in-down.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateY(-100%);transform:translateY(-100%);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-down.mui-enter.mui-enter-active{-ms-transform:translateY(0);transform:translateY(0)}.slide-in-left.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateX(-100%);transform:translateX(-100%);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-left.mui-enter.mui-enter-active{-ms-transform:translateX(0);transform:translateX(0)}.slide-in-up.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateY(100%);transform:translateY(100%);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-up.mui-enter.mui-enter-active{-ms-transform:translateY(0);transform:translateY(0)}.slide-in-right.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateX(100%);transform:translateX(100%);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-in-right.mui-enter.mui-enter-active{-ms-transform:translateX(0);transform:translateX(0)}.slide-out-down.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateY(0);transform:translateY(0);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-down.mui-leave.mui-leave-active{-ms-transform:translateY(100%);transform:translateY(100%)}.slide-out-right.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateX(0);transform:translateX(0);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-right.mui-leave.mui-leave-active{-ms-transform:translateX(100%);transform:translateX(100%)}.slide-out-up.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateY(0);transform:translateY(0);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-up.mui-leave.mui-leave-active{-ms-transform:translateY(-100%);transform:translateY(-100%)}.slide-out-left.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:translateX(0);transform:translateX(0);transition-property:transform, opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slide-out-left.mui-leave.mui-leave-active{-ms-transform:translateX(-100%);transform:translateX(-100%)}.fade-in.mui-enter{transition-duration:500ms;transition-timing-function:linear;opacity:0;transition-property:opacity}.fade-in.mui-enter.mui-enter-active{opacity:1}.fade-out.mui-leave{transition-duration:500ms;transition-timing-function:linear;opacity:1;transition-property:opacity}.fade-out.mui-leave.mui-leave-active{opacity:0}.hinge-in-from-top.mui-enter{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotateX(-90deg);-ms-transform-origin:top;transform-origin:top;transition-property:transform, opacity;opacity:0}.hinge-in-from-top.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-right.mui-enter{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotateY(-90deg);-ms-transform-origin:right;transform-origin:right;transition-property:transform, opacity;opacity:0}.hinge-in-from-right.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-bottom.mui-enter{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotateX(90deg);-ms-transform-origin:bottom;transform-origin:bottom;transition-property:transform, opacity;opacity:0}.hinge-in-from-bottom.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-left.mui-enter{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotateY(90deg);-ms-transform-origin:left;transform-origin:left;transition-property:transform, opacity;opacity:0}.hinge-in-from-left.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-middle-x.mui-enter{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotateX(-90deg);-ms-transform-origin:center;transform-origin:center;transition-property:transform, opacity;opacity:0}.hinge-in-from-middle-x.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-in-from-middle-y.mui-enter{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotateY(-90deg);-ms-transform-origin:center;transform-origin:center;transition-property:transform, opacity;opacity:0}.hinge-in-from-middle-y.mui-enter.mui-enter-active{transform:perspective(2000px) rotate(0deg);opacity:1}.hinge-out-from-top.mui-leave{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);-ms-transform-origin:top;transform-origin:top;transition-property:transform, opacity;opacity:1}.hinge-out-from-top.mui-leave.mui-leave-active{transform:perspective(2000px) rotateX(90deg);opacity:0}.hinge-out-from-right.mui-leave{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);-ms-transform-origin:right;transform-origin:right;transition-property:transform, opacity;opacity:1}.hinge-out-from-right.mui-leave.mui-leave-active{transform:perspective(2000px) rotateY(90deg);opacity:0}.hinge-out-from-bottom.mui-leave{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);-ms-transform-origin:bottom;transform-origin:bottom;transition-property:transform, opacity;opacity:1}.hinge-out-from-bottom.mui-leave.mui-leave-active{transform:perspective(2000px) rotateX(-90deg);opacity:0}.hinge-out-from-left.mui-leave{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);-ms-transform-origin:left;transform-origin:left;transition-property:transform, opacity;opacity:1}.hinge-out-from-left.mui-leave.mui-leave-active{transform:perspective(2000px) rotateY(-90deg);opacity:0}.hinge-out-from-middle-x.mui-leave{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);-ms-transform-origin:center;transform-origin:center;transition-property:transform, opacity;opacity:1}.hinge-out-from-middle-x.mui-leave.mui-leave-active{transform:perspective(2000px) rotateX(90deg);opacity:0}.hinge-out-from-middle-y.mui-leave{transition-duration:500ms;transition-timing-function:linear;transform:perspective(2000px) rotate(0deg);-ms-transform-origin:center;transform-origin:center;transition-property:transform, opacity;opacity:1}.hinge-out-from-middle-y.mui-leave.mui-leave-active{transform:perspective(2000px) rotateY(90deg);opacity:0}.scale-in-up.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:scale(.5);transform:scale(.5);transition-property:transform, opacity;opacity:0}.scale-in-up.mui-enter.mui-enter-active{-ms-transform:scale(1);transform:scale(1);opacity:1}.scale-in-down.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:scale(1.5);transform:scale(1.5);transition-property:transform, opacity;opacity:0}.scale-in-down.mui-enter.mui-enter-active{-ms-transform:scale(1);transform:scale(1);opacity:1}.scale-out-up.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:scale(1);transform:scale(1);transition-property:transform, opacity;opacity:1}.scale-out-up.mui-leave.mui-leave-active{-ms-transform:scale(1.5);transform:scale(1.5);opacity:0}.scale-out-down.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:scale(1);transform:scale(1);transition-property:transform, opacity;opacity:1}.scale-out-down.mui-leave.mui-leave-active{-ms-transform:scale(.5);transform:scale(.5);opacity:0}.spin-in.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:rotate(-.75turn);transform:rotate(-.75turn);transition-property:transform, opacity;opacity:0}.spin-in.mui-enter.mui-enter-active{-ms-transform:rotate(0);transform:rotate(0);opacity:1}.spin-out.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:rotate(0);transform:rotate(0);transition-property:transform, opacity;opacity:1}.spin-out.mui-leave.mui-leave-active{-ms-transform:rotate(.75turn);transform:rotate(.75turn);opacity:0}.spin-in-ccw.mui-enter{transition-duration:500ms;transition-timing-function:linear;-ms-transform:rotate(.75turn);transform:rotate(.75turn);transition-property:transform, opacity;opacity:0}.spin-in-ccw.mui-enter.mui-enter-active{-ms-transform:rotate(0);transform:rotate(0);opacity:1}.spin-out-ccw.mui-leave{transition-duration:500ms;transition-timing-function:linear;-ms-transform:rotate(0);transform:rotate(0);transition-property:transform, opacity;opacity:1}.spin-out-ccw.mui-leave.mui-leave-active{-ms-transform:rotate(-.75turn);transform:rotate(-.75turn);opacity:0}.slow{transition-duration:750ms !important}.fast{transition-duration:250ms !important}.linear{transition-timing-function:linear !important}.ease{transition-timing-function:ease !important}.ease-in{transition-timing-function:ease-in !important}.ease-out{transition-timing-function:ease-out !important}.ease-in-out{transition-timing-function:ease-in-out !important}.bounce-in{transition-timing-function:cubic-bezier(0.485, 0.155, 0.24, 1.245) !important}.bounce-out{transition-timing-function:cubic-bezier(0.485, 0.155, 0.515, 0.845) !important}.bounce-in-out{transition-timing-function:cubic-bezier(0.76, -0.245, 0.24, 1.245) !important}.short-delay{transition-delay:300ms !important}.long-delay{transition-delay:700ms !important}.shake{animation-name:shake-7}@keyframes shake-7{0%,10%,20%,30%,40%,50%,60%,70%,80%,90%{transform:translateX(7%)}5%,15%,25%,35%,45%,55%,65%,75%,85%,95%{transform:translateX(-7%)}}.spin-cw{animation-name:spin-cw-1turn}@keyframes spin-cw-1turn{0%{transform:rotate(-1turn)}100%{transform:rotate(0)}}.spin-ccw{animation-name:spin-ccw-1turn}@keyframes spin-ccw-1turn{0%{transform:rotate(0)}100%{transform:rotate(-1turn)}}.wiggle{animation-name:wiggle-7deg}@keyframes wiggle-7deg{40%,50%,60%{transform:rotate(7deg)}35%,45%,55%,65%{transform:rotate(-7deg)}0%,30%,70%,100%{transform:rotate(0)}}.shake,.spin-cw,.spin-ccw,.wiggle{animation-duration:500ms}.infinite{animation-iteration-count:infinite}.slow{animation-duration:750ms !important}.fast{animation-duration:250ms !important}.linear{animation-timing-function:linear !important}.ease{animation-timing-function:ease !important}.ease-in{animation-timing-function:ease-in !important}.ease-out{animation-timing-function:ease-out !important}.ease-in-out{animation-timing-function:ease-in-out !important}.bounce-in{animation-timing-function:cubic-bezier(0.485, 0.155, 0.24, 1.245) !important}.bounce-out{animation-timing-function:cubic-bezier(0.485, 0.155, 0.515, 0.845) !important}.bounce-in-out{animation-timing-function:cubic-bezier(0.76, -0.245, 0.24, 1.245) !important}.short-delay{animation-delay:300ms !important}.long-delay{animation-delay:700ms !important}@font-face{font-family:'poppins-extrabold';src:url("../fonts/poppins-extrabold-webfont.eot");src:url("../fonts/poppins-extrabold-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/poppins-extrabold-webfont.woff") format("woff"),url("../fonts/poppins-extrabold-webfont.ttf") format("truetype"),url("../fonts/poppins-extrabold-webfont.svg#font-family-reg") format("svg");font-weight:normal;font-style:normal;text-rendering:optimizeLegibility}@font-face{font-family:'poppins-extralight';src:url("../fonts/poppins-extralight-webfont.eot");src:url("../fonts/poppins-extralight-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/poppins-extralight-webfont.woff") format("woff"),url("../fonts/poppins-extralight-webfont.ttf") format("truetype"),url("../fonts/poppins-extralight-webfont.svg#font-family-reg") format("svg");font-weight:normal;font-style:normal;text-rendering:optimizeLegibility}@font-face{font-family:'poppins-medium';src:url("../fonts/poppins-medium-webfont.eot");src:url("../fonts/poppins-medium-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/poppins-medium-webfont.woff") format("woff"),url("../fonts/poppins-medium-webfont.ttf") format("truetype"),url("../fonts/poppins-medium-webfont.svg#font-family-reg") format("svg");font-weight:normal;font-style:normal;text-rendering:optimizeLegibility}@font-face{font-family:'poppins-regular';src:url("../fonts/poppins-regular-webfont.eot");src:url("../fonts/poppins-regular-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/poppins-regular-webfont.woff") format("woff"),url("../fonts/poppins-regular-webfont.ttf") format("truetype"),url("../fonts/poppins-regular-webfont.svg#font-family-reg") format("svg");font-weight:normal;font-style:normal;text-rendering:optimizeLegibility}body{background-color:#000;line-height:1.2}body.is-reveal-open{overflow:hidden;position:fixed;width:100%}h1,.h1{font-family:"poppins-extralight",Helvetica,Arial,sans-serif;font-weight:normal;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:0;height:calc(80vh - 70px)}@media screen and (max-width: 63.99875em){h1,.h1{height:70vw}h1 .single-word-wrapper,.h1 .single-word-wrapper{margin-bottom:1.5vw !important}}@media screen and (max-height: 768px) and (min-width: 568px){h1,.h1{height:calc(80vh - 70px) !important}}@media screen and (max-height: 480px){h1,.h1{height:calc(80vh - 70px) !important}}h1 .single-word-wrapper,.h1 .single-word-wrapper{overflow:hidden;position:relative;margin-bottom:1.5vh}h1 .single-word-wrapper .single-word,.h1 .single-word-wrapper .single-word{display:inline-block}h1 .single-word-wrapper.eins,.h1 .single-word-wrapper.eins{background-color:transparent;background-image:url(../img/wir.svg);width:auto;height:110px;background-repeat:no-repeat}h1 .single-word-wrapper.zwei,.h1 .single-word-wrapper.zwei{background-color:transparent;background-image:url(../img/machen.svg);width:auto;height:110px;background-repeat:no-repeat}h1 .single-word-wrapper.drei,.h1 .single-word-wrapper.drei{background-color:transparent;background-image:url(../img/marken.svg);width:auto;height:110px;background-repeat:no-repeat}h1 .single-word-wrapper.vier,.h1 .single-word-wrapper.vier{background-color:transparent;background-image:url(../img/erlebbar.svg);width:auto;height:110px;background-repeat:no-repeat}h1 .single-word-wrapper.fuenf,.h1 .single-word-wrapper.fuenf{height:110px !important;line-height:0 !important}h1 .single-word-wrapper.fuenf .single-word.icn-next,.h1 .single-word-wrapper.fuenf .single-word.icn-next{background-color:transparent;background-image:url(../img/arrow-next.svg);margin-left:-10px;background-size:75% 75%;background-position:0 0;width:60px;height:60px;background-repeat:no-repeat}@media screen and (max-height: 410px){h1 .single-word-wrapper.fuenf .single-word.icn-next,.h1 .single-word-wrapper.fuenf .single-word.icn-next{width:60px;height:60%;margin-left:-19px}}h1 .single-word-wrapper.fuenf .single-word.icn-next:hover,.h1 .single-word-wrapper.fuenf .single-word.icn-next:hover{cursor:pointer}h2,.h2{font-family:"poppins-extrabold",Helvetica,Arial,sans-serif;font-weight:normal;font-size:2.25rem}h3,.h3{font-family:"poppins-extrabold",Helvetica,Arial,sans-serif;font-weight:normal;font-size:1.25rem}p,.copy{font-family:"poppins-regular",Helvetica,Arial,sans-serif;font-weight:normal;font-size:2.25rem;line-height:2.75rem}@media screen and (max-width: 63.99875em){p,.copy{font-size:1.5rem;line-height:1.875rem}}.copy-small{font-size:1rem;line-height:1.625rem;font-family:"poppins-regular",Helvetica,Arial,sans-serif;font-weight:normal}b,strong{font-family:"poppins-extrabold",Helvetica,Arial,sans-serif;font-weight:normal}.bg-primary{background-color:#d2dc6a}.bg-secondary{background-color:#000}.bg-white{background-color:#fff}.bg-black{background-color:#000}.bg-medium-gray{background-color:gray}.bg-dark-gray{background-color:#4c4c4c}.hidden-content{display:none}.toggle-menu{position:relative}.toggle-menu .action-close{display:none}.toggle-menu.active .action-open{display:none}.toggle-menu.active .action-close{display:inline-block}html,body{height:100%}html .page-wrap,body .page-wrap{min-height:100%;margin-bottom:-3.125rem;overflow:hidden}html .page-wrap .push,body .page-wrap .push{height:3.125rem}.page-content{padding:1.875rem .625rem 1.875rem}.page-content.with-stage{padding-top:0}.site-footer{height:0}.icon.icon-example{background-image:url("../img/icons/icon-example.png");background-repeat:no-repeat;width:10px;height:10px;display:inline-block}@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi){.icon.icon-example{background-image:url("../img/2x/icons/icon-example_2x.png");background-size:100% auto;background-repeat:no-repeat}}form .icheckbox{background-image:url("../img/icons/checkbox.png");background-repeat:no-repeat;width:20px;height:20px;display:inline-block}@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi){form .icheckbox{background-image:url("../img/2x/icons/checkbox_2x.png");background-size:20px 100px;background-repeat:no-repeat}}form .iradio{background-image:url("../img/icons/radio.png");background-repeat:no-repeat;width:20px;height:20px;display:inline-block}@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi){form .iradio{background-image:url("../img/2x/icons/radio_2x.png");background-size:20px 100px;background-repeat:no-repeat}}form .icheckbox.hover,form .iradio.hover{background-position:0 -20px}form .icheckbox.checked,form .iradio.checked{background-position:0 -40px}form .icheckbox.checked.hover,form .iradio.checked.hover{background-position:0 -60px}form .icheckbox.error,form .iradio.error{background-position:0 -80px}.logo-bar{width:100%;position:fixed;z-index:20;padding:10vh 0 10px 0}@media screen and (max-width: 74.99875em){.logo-bar{padding:20px 0 10px 0}}.logo-bar .logo{position:relative;width:190px;height:50px;background-repeat:no-repeat}@media screen and (max-width: 63.99875em){.logo-bar .logo{background-size:75% 75%}}@media screen and (min-height: 768px){.logo-bar .logo{background-size:100% 100%}}.logo-bar .logo.logo-white{background-image:url(../img/logo-stan-white.svg);opacity:1}.logo-bar .logo.logo-green{background-image:url(../img/logo-stan-green.svg);opacity:0}.logo-bar.logo-bar-bg.display{background-color:rgba(0,0,0,0.8)}@keyframes pulsate{0%{transform:scale(0.2, 0.2);-webkit-transform:scale(0.2, 0.2);-moz-transform:scale(0.2, 0.2);opacity:0.0}50%{opacity:1.0}100%{transform:scale(1.2, 1.2);opacity:0.0;-moz-transform:scale(1.2, 1.2);opacity:0.0;-webkit-transform:scale(1.2, 1.2);opacity:0.0}}@keyframes appear{from{opacity:0}to{opacity:1}}@keyframes disappear{from{opacity:1}to{opacity:0}}@keyframes flyin-fromleft{from{opacity:0;transform:translate(-300px, 0);-webkit-transform:translate(-300px, 0);-moz-transform:translate(-300px, 0)}to{opacity:1;transform:translate(0, 0);-webkit-transform:translate(0, 0);-moz-transform:translate(0, 0)}}.single-word-wrapper.eins.flyin{opacity:0;animation:flyin-fromleft 0.7s 1 ease-out forwards;-webkit-animation:flyin-fromleft 0.7s 1 ease-out forwards;-moz-animation:flyin-fromleft 0.7s 1 ease-out forwards}.single-word-wrapper.zwei.flyin{opacity:0;animation:flyin-fromleft 0.7s 0.3s 1 ease-out forwards;-webkit-animation:flyin-fromleft 0.7s 0.3s 1 ease-out forwards}.single-word-wrapper.drei.flyin{opacity:0;animation:flyin-fromleft 1s 0.5s 1 ease-out forwards;-webkit-animation:flyin-fromleft 1s 0.5s 1 ease-out forwards;-moz-animation:flyin-fromleft 1s 0.5s 1 ease-out forwards}.single-word-wrapper.vier.flyin{opacity:0;animation:flyin-fromleft 1s 0.7s 1 ease-out forwards;-webkit-animation:flyin-fromleft 1s 0.7s 1 ease-out forwards;-moz-animation:flyin-fromleft 1s 0.7s 1 ease-out forwards}.single-word-wrapper.fuenf.flyin{opacity:0;animation:flyin-fromleft 0.5s 1.5s 1 ease-out forwards;-webkit-animation:flyin-fromleft 0.5s 1.5s 1 ease-out forwards;-moz-animation:flyin-fromleft 0.5s 1.5s 1 ease-out forwards}.copy-contact.flyin{opacity:0;animation:flyin-fromleft 0.7s 1 ease-out forwards;-webkit-animation:flyin-fromleft 0.7s 1 ease-out forwards;-moz-animation:flyin-fromleft 0.7s 1 ease-out forwards}.copy-contact.flyout{opacity:0;animation:flyout-toleft 0.7s 1 ease-out forwards;-webkit-animation:flyout-toleft  0.7s 1 ease-out forwards;-moz-animation:flyout-toleft  0.7s 1 ease-out forwards}.contact-data.flyin{opacity:0;animation:flyin-fromleft 0.7s 0.3s 1 ease-out forwards;-webkit-animation:flyin-fromleft 0.7s 0.3s 1 ease-out forwards;-moz-animation:flyin-fromleft 0.7s 0.3s 1 ease-out forwards}.contact-data.flyout{opacity:0;animation:flyout-toleft 0.7s 0.3s 1 ease-out forwards;-webkit-animation:flyout-toleft 0.7s 0.3s 1 ease-out forwards;-moz-animation:flyout-toleft 0.7s 0.3s 1 ease-out forwards}#reveal-imprint,#reveal-policy{opacity:0;animation:appear 0.5s  1 ease-out forwards;-webkit-animation:appear 0.5s  1 ease-out forwards;-moz-animation:appear 0.5s  1 ease-out forwards}.logo-green.appear,.logo-white.appear{display:inline-block;opacity:0;animation:appear 1s 1 ease-out forwards;-webkit-animation:appear 1s 1 ease-out forwards;-moz-animation:appear 1s 1 ease-out forwards}.logo-green.disappear,.logo-white.disappear{display:none;opacity:0;animation:disappear 1s 1 ease-out forwards;-webkit-animation:disappear 1s 1 ease-out forwards;-moz-animation:disappear 1s 1 ease-out forwards}.icn-back.appear{display:inline-block;opacity:0;animation:appear 1s 0.5s 1 ease-out forwards;-webkit-animation:appear 1s 0.5s 1 ease-out forwards;-moz-animation:appear 1s 0.5s 1 ease-out forwards}.icn-back.disappear{display:none;opacity:0;animation:disappear 1s 1 ease-out forwards;-webkit-animation:disappear 1s 1 ease-out forwards;-moz-animation:disappear 1s 1 ease-out forwards}.wrapper-main.appear-black::before{content:'';position:absolute;background:#000;width:100%;height:100%;background-size:100% auto;animation:appear 1s 1 ease-out forwards;-webkit-animation:appear 1s 1 ease-out forwards;-moz-animation:appear 1s 1 ease-out forwards}.wrapper-main.disappear-black::before{content:'';position:absolute;background:#000;width:100%;height:100%;animation:disappear 1s 1 ease-out forwards;-webkit-animation:disappear 1s 1 ease-out forwards;-moz-animation:disappear 1s 1 ease-out forwards}.wrapper-main{height:100%;min-height:320px;position:relative;z-index:1;background:url("../img/bg-intro.jpg") no-repeat center center;background-size:100% auto;background-size:cover}@media screen and (max-width: 74.99875em){.wrapper-main{background-position-x:70%}}section.section-intro{display:none}section.section-intro.display{display:block}@media screen and (max-width: 74.99875em){section.section-intro .wrapper-section-content{padding-top:calc(32vh)}}@media screen and (min-height: 640px) and (max-width: 1200px){section.section-intro .wrapper-section-content{padding-top:calc(25vh) !important}}section.section-contact{display:none;z-index:4;padding-bottom:15px}section.section-contact.display{display:block}section.section-contact .wrapper-icn-back{position:relative}section.section-contact .wrapper-icn-back .icn-back{position:absolute;display:block;background-image:url(../img/arrow-back.svg);background-size:75% 75%;width:60px;height:60px;background-repeat:no-repeat;left:5px;top:0px}section.section-contact .wrapper-icn-back .icn-back:hover{cursor:pointer}section.section-contact .copy-contact,section.section-contact .contact-data{opacity:0}section.section-contact .copy-contact{color:#fff;position:relative}section.section-contact .copy-contact .copy-break{margin-top:10px;display:block}section.section-contact .contact-data{position:relative;margin-top:120px}section.section-contact .contact-data .contact-group{position:relative}section.section-contact .contact-data .contact-group hr{position:absolute;top:-37px;left:-30px;width:60px;border-bottom:3px solid #fff;color:#fff}@media screen and (max-width: 39.99875em){section.section-contact .contact-data .contact-group hr{left:-22px;width:50px}}section.section-contact .contact-data .contact-group p{color:#d2dc6a;font-size:.6875rem;line-height:.8125rem;font-family:"poppins-medium",Helvetica,Arial,sans-serif;font-weight:normal;margin-top:5px;margin-bottom:5px}section.section-contact .contact-data .contact-group p a:hover{color:#fff}section.section-contact .contact-data .contact-group p .phone-indicator{display:inline-block;width:40px}@media screen and (max-width: 63.99875em){section.section-contact .contact-data .contact-group:first-child{margin-bottom:20px}}@media screen and (max-width: 39.99875em){section.section-contact .contact-data{padding-top:5vh}}section.section-contact .linklist{margin-top:-20px;color:gray}@media screen and (max-width: 63.99875em){section.section-contact .linklist{margin-top:0}}section.section-contact .linklist a{color:gray}section.section-contact .linklist a:hover{color:#fff}section.section-contact .linklist a:focus{border:none;outline:none}section .wrapper-section-content{padding-top:calc(10vh + 70px)}section .linklist{position:relative;z-index:9;margin:0;font-size:.6875rem;font-family:"poppins-extrabold",Helvetica,Arial,sans-serif;font-weight:normal;float:right}section .linklist::before,section .linklist::after{display:table;content:' ';-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-order:1;order:1}section .linklist::after{clear:both}@media screen and (max-width: 63.99875em){section .linklist{float:left}}section .linklist li{list-style:none;display:inline-block}.reveal-overlay{background-color:#fff;position:absolute;z-index:30}.reveal-overlay .logo-bar{background-color:rgba(255,255,255,0.9)}.reveal-overlay .logo-bar .logo-green-visible{background-image:url(../img/logo-stan-green.svg);width:190px;height:50px;background-repeat:no-repeat}@media screen and (max-width: 63.99875em){.reveal-overlay .logo-bar .logo-green-visible{background-size:75% 75%}}@media screen and (min-height: 768px){.reveal-overlay .logo-bar .logo-green-visible{background-size:100% 100%}}.reveal-overlay .h2{padding-top:calc(10vh + 70px);position:relative}.reveal-overlay .h2 hr{position:absolute;z-index:5;bottom:-25px;left:-30px;width:60px;border-bottom:3px solid #d2dc6a}@media screen and (max-width: 39.99875em){.reveal-overlay .h2 hr{left:-22px;width:50px}}.reveal-overlay .copy-imprint{margin-top:40px;color:#000}.reveal-overlay .linklist{color:#4c4c4c}.reveal-overlay .linklist a{color:#4c4c4c}.reveal-overlay .wrapper-close{width:100%;max-width:1366px}.reveal-overlay .wrapper-close .close-button{padding:10px 0;z-index:40;position:fixed;top:105px;font-size:.6875rem;font-family:"poppins-extrabold",Helvetica,Arial,sans-serif;font-weight:normal;color:#4c4c4c;right:10vw}@media screen and (max-width: 74.99875em){.reveal-overlay .wrapper-close .close-button{right:10px;top:50px}}.reveal-overlay .wrapper-close .close-button:focus{outline:none}.reveal-overlay .wrapper-close .close-button:hover{cursor:pointer;color:#000}.reveal-overlay .logo{padding:30px;background-color:rgba(255,255,255,0.9)}#reveal-imprint,#reveal-policy{min-height:100vh}#reveal-imprint:focus,#reveal-policy:focus{outline:none}#reveal-policy{padding-bottom:100px}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3RpY2t5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RpdGxlLWJhci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2ZsZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2FuaW1hdGlvbi5zY3NzIiwiX3NldHRpbmdzLWN1c3RvbS5zY3NzIiwiX2dsb2JhbC5zY3NzIiwiX21peGlucy5zY3NzIiwic2l0ZS9fc2l0ZS1jb250YWluZXJzLnNjc3MiLCJzaXRlL19zaXRlLWZvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9faWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImNvbXBvbmVudHMvX2xvZ28uc2NzcyIsImNvbXBvbmVudHMvX2FuaW1hdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX21haW4uc2NzcyIsImNvbXBvbmVudHMvX3JldmVhbC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJDQ3NLbUMsaURDZDFCLFdBMUdFLFVBQ0QsYUFDRSxDQUFBLENBQUEsNEVDL0NWLEtBQTRFLGlCQVM3RCw2QkFDYSxDQUFBLEtBQzNCLFFBUUMsQ0FBTSxHQUNQLGNBTVksZUFDSCxDQUFBLEdBQ1QsdUJBU2EsU0FDTixnQkFDSSxDQUFBLElBQ1gsaUNBTWMsYUFDRixDQUFBLEVBQUksNEJBU0csQ0FBQSxZQU1oQixtQkFDYSwwQkFDRSxnQ0FDQSxDQUFBLFNBTW5CLGtCQUNlLENBQUEsY0FRZixpQ0FDZSxhQUNGLENBQUEsTUFDWixhQUtZLENBQUEsUUFPYixjQUNhLGNBQ0Esa0JBQ0QsdUJBQ00sQ0FBQSxJQUNqQixjQUdTLENBQUEsSUFDVCxVQUdNLENBQUEsSUFDTixpQkFRZSxDQUFBLHNDQWFoQixvQkFDZSxlQUNGLGlCQUNFLFFBQ2IsQ0FBTSxhQU9SLGdCQUNZLENBQUEsY0FPWixtQkFDa0IsQ0FBQSxzREFRWix5QkFDZ0IsQ0FBQSw4SEFRUCxrQkFDQyxTQUNkLENBQU8sa0hBUU0sNkJBQ0osQ0FBQSxTQUNWLDZCQUtVLENBQUEsT0FDVixzQkFRYSxjQUNMLGNBQ0UsZUFDRSxVQUNKLGtCQUNNLENBQUEsU0FDZCx1QkFLaUIsQ0FBQSxTQUNqQixhQUtXLENBQUEsaUNBT04sc0JBQ1EsU0FDWixDQUFPLHNGQU1NLFdBQ0wsQ0FBQSxnQkFNSiw2QkFDZ0IsbUJBQ0osQ0FBQSwyQ0FLSCx1QkFDTyxDQUFBLDZCQUNyQiwwQkFNcUIsWUFDZCxDQUFBLFFBQ1AsYUFRVSxDQUFBLFFBQ1YsaUJBS1UsQ0FBQSxTQUNWLFlBUVUsQ0FBQSxTQUtYLFlBQ1csQ0FBQSxlQUNWLHVFQzNJYyxDQUFBLEtBQ2Qsc0JBR2EsY0M3RUcsQ0FBQSxxQkRvRmhCLGtCQUNhLENBQUEsS0FDYixTQUlPLFVBQ0MsZ0JDN0VILCtEQUd1RCxtQkFLeEMsZ0JBcEJILFdBV1osbUNEd0ZzQixpQ0FDQyxDQUFBLElBRTVCLHFCQUlVLHNCQUNPLGVBR0wsWUFDSCw4QkFDZ0IsQ0FBQSxTQUN6QixZQUlTLGdCQUNJLGVBQ1osQ0FBYSxPQUNkLHNCQUlhLFdBQ0wsZUFDUCxDQUFhLDZHQVNiLHlCQUNhLENBQUEsT0FDWixVQU1NLHdCQUFBLEFBQ0sscUJBREwsQUFDSyxnQkFBQSxTQUNOLGdCQUNPLHVCQUNELGNBQ0QsV0N4SFEsQ0FBQSxnQ0RpSHJCLFNFVEUsQ0FBTyxJQUNSLGFGcUJXLENBQUEsc0NBUVosbUJBQ2UsQ0FBQSxZQUNkLHdCQUlVLENBQUEsV0FDVix1QkFHVSxDQUFBLEtBQ1Ysb0JHMUpTLGtCQzFCTSxnQkFDRCxDQUFBLHlCRjJHZCxjQUNVLFlBQ0EsMEJBQUEsQUFHRyxhQUFBLGlCQUFBLEFBQ1YsT0FBQSxDQUFLLFlBSVIsVUFDUSxDQUFBLDZDR2JQLGdCQ2xKYSxjQUNiLENBQVksVURlVixzQkQ0Q08sb0JBQUEsQ0FBQSwyQ1BvRnNCLFVRaEk3Qix1QkQ0Q08scUJBQUEsQ0FBQSxDQUFBLDJDUG9Gc0IsVVFoSTdCLHVCRDRDTyxxQkFBQSxDQUFBLENBQUEsb0NQeUZnQixVUXJJdkIsdUJENENPLHFCQUFBLENBQUEsQ0FBQSxtQkM1Q0gsZUFJVSxhQUNaLENBQVcsY0FoQmIsY0RtRUssQ0FBQSxtQkMzQ0wsa0JBQ2dCLGdCQUNELENBQUEseUJBSUEsY0RxQ1YsQ0FBQSxxREMwRVAsc0JDcEpVLG9CQUFBLENBQUEsdUREb0pWLHVCQ3BKVSxxQkFBQSxDQUFBLGlCRHVEWixXRTlDWSxXUDZGeUMsc0JNdEd6QyxvQkFBQSxDQUFBLDJDVGtKcUIsaUJRM0ZqQyx1QkN2RFkscUJBQUEsQ0FBQSxDQUFBLDRGRURVLFdSdUcrQixVUXJHMUMsQ0FBQSwyRUFLVSxXUmlHZ0MsQ0FBQSxxRVFuRHpDLFVSa0R5QyxDQUFBLGlDS25DdEMsVUFDTixDQUFBLDJDQUlXLGVBQ04sY0FDRCxnQkFDRSxjQUNiLENBQVksU0FDYixjRXBFVyxDQUFBLGNGMkVQLGtCR3BFTyxhQUZELENBQUEsY0g0RUosa0JHMUVLLGNBRkQsQ0FBQSxnQkhnRkosY0doRGUsQ0R4Q1YsU0Y0RVIsZUV6RVEsQ0FBQSxjRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGNINEVKLGtCRzFFSyxlQUZELENBQUEsZ0JIZ0ZKLG9CRXJGSyxDQUFBLFNGeUVSLFNFekVRLENBQUEsY0YyRVAsa0JHcEVPLFFBRkQsQ0FBQSxjSDRFSixrQkcxRUssU0FGRCxDQUFBLGdCSGdGSixxQkVyRkssQ0FBQSxTRnlFUixlRXpFUSxDQUFBLGNGMkVQLGtCR3BFTyxjQUZELENBQUEsY0g0RUosa0JHMUVLLGVBRkQsQ0FBQSxnQkhnRkosZUVyRkssQ0FBQSxTRnlFUixlRXpFUSxDQUFBLGNGMkVQLGtCR3BFTyxjQUZELENBQUEsY0g0RUosa0JHMUVLLGVBRkQsQ0FBQSxnQkhnRkoscUJFckZLLENBQUEsU0Z5RVIsU0V6RVEsQ0FBQSxjRjJFUCxrQkdwRU8sUUFGRCxDQUFBLGNINEVKLGtCRzFFSyxTQUZELENBQUEsZ0JIZ0ZKLHFCRXJGSyxDQUFBLFNGeUVSLGVFekVRLENBQUEsY0YyRVAsa0JHcEVPLGNBRkQsQ0FBQSxjSDRFSixrQkcxRUssZUFGRCxDQUFBLGdCSGdGSixlRXJGSyxDQUFBLFNGeUVSLGVFekVRLENBQUEsY0YyRVAsa0JHcEVPLGNBRkQsQ0FBQSxjSDRFSixrQkcxRUssZUFGRCxDQUFBLGdCSGdGSixxQkVyRkssQ0FBQSxTRnlFUixTRXpFUSxDQUFBLGNGMkVQLGtCR3BFTyxRQUZELENBQUEsY0g0RUosa0JHMUVLLFNBRkQsQ0FBQSxnQkhnRkoscUJFckZLLENBQUEsVUZ5RVIsZUV6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGVINEVKLGtCRzFFSyxlQUZELENBQUEsZ0JIZ0ZKLGVFckZLLENBQUEsVUZ5RVIsZUV6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGVINEVKLGtCRzFFSyxlQUZELENBQUEsaUJIZ0ZKLHFCRXJGSyxDQUFBLFVGeUVSLFVFekVRLENBQUEsaUJGMkVQLHFCRTNFTyxDQUFBLHlDRjJJVixXTDlDbUQsVVNuRzVDLENBQUEseUVBc0JPLFVBQ0wsQ0FBQSw2RUFHSyxVQUNMLENBQUEsK0RKc0hELFVMOUMyQyxDQUFBLHlDSzhDbkQsV0w5Q21ELFNTbkc1QyxDQUFBLHlFQXNCTyxVQUNMLENBQUEsNkVBR0ssVUFDTCxDQUFBLCtESnNIRCxVTDlDMkMsQ0FBQSx5Q0s4Q25ELFdMOUNtRCxlU25HNUMsQ0FBQSx5RUFzQk8sVUFDTCxDQUFBLDZFQUdLLFVBQ0wsQ0FBQSwrREpzSEQsVUw5QzJDLENBQUEseUNLOENuRCxXTDlDbUQsU1NuRzVDLENBQUEseUVBc0JPLFVBQ0wsQ0FBQSw2RUFHSyxVQUNMLENBQUEsK0RKc0hELFVMOUMyQyxDQUFBLHlDSzhDbkQsV0w5Q21ELFNTbkc1QyxDQUFBLHlFQXNCTyxVQUNMLENBQUEsNkVBR0ssVUFDTCxDQUFBLCtESnNIRCxVTDlDMkMsQ0FBQSx5Q0s4Q25ELFdMOUNtRCxlU25HNUMsQ0FBQSx5RUFzQk8sVUFDTCxDQUFBLDZFQUdLLFVBQ0wsQ0FBQSwrREpzSEQsVUw5QzJDLENBQUEseUNLOENuRCxXTDlDbUQsZVNuRzVDLENBQUEseUVBc0JPLFVBQ0wsQ0FBQSw2RUFHSyxVQUNMLENBQUEsK0RKc0hELFVMOUMyQyxDQUFBLHlDSzhDbkQsV0w5Q21ELFdTbkc1QyxDQUFBLHlFQXNCTyxVQUNMLENBQUEsNkVBR0ssVUFDTCxDQUFBLCtESnNIRCxVTDlDMkMsQ0FBQSxpREs4Q25ELGdCQ2xKYSxjQUNiLENBQVkscUJEaUhWLGVBQ2MsYUFDWixDQUFXLGtDQUljLGVBQ2YsYUFDWixDQUFXLHFEQXdCYixzQkNwSlUsb0JBQUEsQ0FBQSxnQkRnSWlDLGtCR3RHN0IsZ0JBQ0QsQ0FBQSw2REFMTyxXQUNYLFVBQ0EsQ0FBQSw4Q0htSFQsZ0JHckdRLGVBQ0UsYUFDWixDQUFXLG1MQXpDVyxXUnVHK0IsVVFyRzFDLENBQUEscUlBS1UsV1JpR2dDLENBQUEsMkNIMkNwQixVUWhFN0IsY0V6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sYUFGRCxDQUFBLGVINEVKLGtCRzFFSyxjQUZELENBQUEsaUJIZ0ZKLGNHaERlLENEeENWLFVGNEVSLGVFekVRLENBQUEsZUYyRVAsa0JHcEVPLGNBRkQsQ0FBQSxlSDRFSixrQkcxRUssZUFGRCxDQUFBLGlCSGdGSixvQkVyRkssQ0FBQSxVRnlFUixTRXpFUSxDQUFBLGVGMkVQLGtCR3BFTyxRQUZELENBQUEsZUg0RUosa0JHMUVLLFNBRkQsQ0FBQSxpQkhnRkoscUJFckZLLENBQUEsVUZ5RVIsZUV6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGVINEVKLGtCRzFFSyxlQUZELENBQUEsaUJIZ0ZKLGVFckZLLENBQUEsVUZ5RVIsZUV6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGVINEVKLGtCRzFFSyxlQUZELENBQUEsaUJIZ0ZKLHFCRXJGSyxDQUFBLFVGeUVSLFNFekVRLENBQUEsZUYyRVAsa0JHcEVPLFFBRkQsQ0FBQSxlSDRFSixrQkcxRUssU0FGRCxDQUFBLGlCSGdGSixxQkVyRkssQ0FBQSxVRnlFUixlRXpFUSxDQUFBLGVGMkVQLGtCR3BFTyxjQUZELENBQUEsZUg0RUosa0JHMUVLLGVBRkQsQ0FBQSxpQkhnRkosZUVyRkssQ0FBQSxVRnlFUixlRXpFUSxDQUFBLGVGMkVQLGtCR3BFTyxjQUZELENBQUEsZUg0RUosa0JHMUVLLGVBRkQsQ0FBQSxpQkhnRkoscUJFckZLLENBQUEsVUZ5RVIsU0V6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sUUFGRCxDQUFBLGVINEVKLGtCRzFFSyxTQUZELENBQUEsaUJIZ0ZKLHFCRXJGSyxDQUFBLFdGeUVSLGVFekVRLENBQUEsZ0JGMkVQLGtCR3BFTyxjQUZELENBQUEsZ0JINEVKLGtCRzFFSyxlQUZELENBQUEsaUJIZ0ZKLGVFckZLLENBQUEsV0Z5RVIsZUV6RVEsQ0FBQSxnQkYyRVAsa0JHcEVPLGNBRkQsQ0FBQSxnQkg0RUosa0JHMUVLLGVBRkQsQ0FBQSxrQkhnRkoscUJFckZLLENBQUEsV0Z5RVIsVUV6RVEsQ0FBQSxrQkYyRVAscUJFM0VPLENBQUEsMkNGMklWLFdMOUNtRCxVU25HNUMsQ0FBQSwyRUFzQk8sVUFDTCxDQUFBLCtFQUdLLFVBQ0wsQ0FBQSxpRUpzSEQsVUw5QzJDLENBQUEsMkNLOENuRCxXTDlDbUQsU1NuRzVDLENBQUEsMkVBc0JPLFVBQ0wsQ0FBQSwrRUFHSyxVQUNMLENBQUEsaUVKc0hELFVMOUMyQyxDQUFBLDJDSzhDbkQsV0w5Q21ELGVTbkc1QyxDQUFBLDJFQXNCTyxVQUNMLENBQUEsK0VBR0ssVUFDTCxDQUFBLGlFSnNIRCxVTDlDMkMsQ0FBQSwyQ0s4Q25ELFdMOUNtRCxTU25HNUMsQ0FBQSwyRUFzQk8sVUFDTCxDQUFBLCtFQUdLLFVBQ0wsQ0FBQSxpRUpzSEQsVUw5QzJDLENBQUEsMkNLOENuRCxXTDlDbUQsU1NuRzVDLENBQUEsMkVBc0JPLFVBQ0wsQ0FBQSwrRUFHSyxVQUNMLENBQUEsaUVKc0hELFVMOUMyQyxDQUFBLDJDSzhDbkQsV0w5Q21ELGVTbkc1QyxDQUFBLDJFQXNCTyxVQUNMLENBQUEsK0VBR0ssVUFDTCxDQUFBLGlFSnNIRCxVTDlDMkMsQ0FBQSwyQ0s4Q25ELFdMOUNtRCxlU25HNUMsQ0FBQSwyRUFzQk8sVUFDTCxDQUFBLCtFQUdLLFVBQ0wsQ0FBQSxpRUpzSEQsVUw5QzJDLENBQUEsMkNLOENuRCxXTDlDbUQsV1NuRzVDLENBQUEsMkVBc0JPLFVBQ0wsQ0FBQSwrRUFHSyxVQUNMLENBQUEsaUVKc0hELFVMOUMyQyxDQUFBLG1ESzhDbkQsZ0JDbEphLGNBQ2IsQ0FBWSxzQkRpSFYsZUFDYyxhQUNaLENBQVcsbUNBSWUsZUFDaEIsYUFDWixDQUFXLHVEQXdCYix1QkNwSlUscUJBQUEsQ0FBQSxpQkRnSWlDLGtCR3RHN0IsZ0JBQ0QsQ0FBQSwrREFMTyxXQUNYLFVBQ0EsQ0FBQSxpREhtSFQsZ0JHckdRLGVBQ0UsYUFDWixDQUFXLHlMQXpDVyxXUnVHK0IsVVFyRzFDLENBQUEsd0lBS1UsV1JpR2dDLENBQUEsQ0FBQSwyQ0gyQ3BCLFNRaEU3QixjRXpFUSxDQUFBLGNGMkVQLGtCR3BFTyxhQUZELENBQUEsY0g0RUosa0JHMUVLLGNBRkQsQ0FBQSxnQkhnRkosY0doRGUsQ0R4Q1YsU0Y0RVIsZUV6RVEsQ0FBQSxjRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGNINEVKLGtCRzFFSyxlQUZELENBQUEsZ0JIZ0ZKLG9CRXJGSyxDQUFBLFNGeUVSLFNFekVRLENBQUEsY0YyRVAsa0JHcEVPLFFBRkQsQ0FBQSxjSDRFSixrQkcxRUssU0FGRCxDQUFBLGdCSGdGSixxQkVyRkssQ0FBQSxTRnlFUixlRXpFUSxDQUFBLGNGMkVQLGtCR3BFTyxjQUZELENBQUEsY0g0RUosa0JHMUVLLGVBRkQsQ0FBQSxnQkhnRkosZUVyRkssQ0FBQSxTRnlFUixlRXpFUSxDQUFBLGNGMkVQLGtCR3BFTyxjQUZELENBQUEsY0g0RUosa0JHMUVLLGVBRkQsQ0FBQSxnQkhnRkoscUJFckZLLENBQUEsU0Z5RVIsU0V6RVEsQ0FBQSxjRjJFUCxrQkdwRU8sUUFGRCxDQUFBLGNINEVKLGtCRzFFSyxTQUZELENBQUEsZ0JIZ0ZKLHFCRXJGSyxDQUFBLFNGeUVSLGVFekVRLENBQUEsY0YyRVAsa0JHcEVPLGNBRkQsQ0FBQSxjSDRFSixrQkcxRUssZUFGRCxDQUFBLGdCSGdGSixlRXJGSyxDQUFBLFNGeUVSLGVFekVRLENBQUEsY0YyRVAsa0JHcEVPLGNBRkQsQ0FBQSxjSDRFSixrQkcxRUssZUFGRCxDQUFBLGdCSGdGSixxQkVyRkssQ0FBQSxTRnlFUixTRXpFUSxDQUFBLGNGMkVQLGtCR3BFTyxRQUZELENBQUEsY0g0RUosa0JHMUVLLFNBRkQsQ0FBQSxnQkhnRkoscUJFckZLLENBQUEsVUZ5RVIsZUV6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGVINEVKLGtCRzFFSyxlQUZELENBQUEsZ0JIZ0ZKLGVFckZLLENBQUEsVUZ5RVIsZUV6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGVINEVKLGtCRzFFSyxlQUZELENBQUEsaUJIZ0ZKLHFCRXJGSyxDQUFBLFVGeUVSLFVFekVRLENBQUEsaUJGMkVQLHFCRTNFTyxDQUFBLHlDRjJJVixXTDlDbUQsVVNuRzVDLENBQUEseUVBc0JPLFVBQ0wsQ0FBQSw2RUFHSyxVQUNMLENBQUEsK0RKc0hELFVMOUMyQyxDQUFBLHlDSzhDbkQsV0w5Q21ELFNTbkc1QyxDQUFBLHlFQXNCTyxVQUNMLENBQUEsNkVBR0ssVUFDTCxDQUFBLCtESnNIRCxVTDlDMkMsQ0FBQSx5Q0s4Q25ELFdMOUNtRCxlU25HNUMsQ0FBQSx5RUFzQk8sVUFDTCxDQUFBLDZFQUdLLFVBQ0wsQ0FBQSwrREpzSEQsVUw5QzJDLENBQUEseUNLOENuRCxXTDlDbUQsU1NuRzVDLENBQUEseUVBc0JPLFVBQ0wsQ0FBQSw2RUFHSyxVQUNMLENBQUEsK0RKc0hELFVMOUMyQyxDQUFBLHlDSzhDbkQsV0w5Q21ELFNTbkc1QyxDQUFBLHlFQXNCTyxVQUNMLENBQUEsNkVBR0ssVUFDTCxDQUFBLCtESnNIRCxVTDlDMkMsQ0FBQSx5Q0s4Q25ELFdMOUNtRCxlU25HNUMsQ0FBQSx5RUFzQk8sVUFDTCxDQUFBLDZFQUdLLFVBQ0wsQ0FBQSwrREpzSEQsVUw5QzJDLENBQUEseUNLOENuRCxXTDlDbUQsZVNuRzVDLENBQUEseUVBc0JPLFVBQ0wsQ0FBQSw2RUFHSyxVQUNMLENBQUEsK0RKc0hELFVMOUMyQyxDQUFBLHlDSzhDbkQsV0w5Q21ELFdTbkc1QyxDQUFBLHlFQXNCTyxVQUNMLENBQUEsNkVBR0ssVUFDTCxDQUFBLCtESnNIRCxVTDlDMkMsQ0FBQSxpREs4Q25ELGdCQ2xKYSxjQUNiLENBQVkscUJEaUhWLGVBQ2MsYUFDWixDQUFXLGtDQUljLGVBQ2YsYUFDWixDQUFXLHFEQXdCYix1QkNwSlUscUJBQUEsQ0FBQSxnQkRnSWlDLGtCR3RHN0IsZ0JBQ0QsQ0FBQSw2REFMTyxXQUNYLFVBQ0EsQ0FBQSw4Q0htSFQsZ0JHckdRLGVBQ0UsYUFDWixDQUFXLG1MQXpDVyxXUnVHK0IsVVFyRzFDLENBQUEscUlBS1UsV1JpR2dDLENBQUEsQ0FBQSxvQ0hnRDFCLFVRckV2QixjRXpFUSxDQUFBLGVGMkVQLGtCR3BFTyxhQUZELENBQUEsZUg0RUosa0JHMUVLLGNBRkQsQ0FBQSxpQkhnRkosY0doRGUsQ0R4Q1YsVUY0RVIsZUV6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGVINEVKLGtCRzFFSyxlQUZELENBQUEsaUJIZ0ZKLG9CRXJGSyxDQUFBLFVGeUVSLFNFekVRLENBQUEsZUYyRVAsa0JHcEVPLFFBRkQsQ0FBQSxlSDRFSixrQkcxRUssU0FGRCxDQUFBLGlCSGdGSixxQkVyRkssQ0FBQSxVRnlFUixlRXpFUSxDQUFBLGVGMkVQLGtCR3BFTyxjQUZELENBQUEsZUg0RUosa0JHMUVLLGVBRkQsQ0FBQSxpQkhnRkosZUVyRkssQ0FBQSxVRnlFUixlRXpFUSxDQUFBLGVGMkVQLGtCR3BFTyxjQUZELENBQUEsZUg0RUosa0JHMUVLLGVBRkQsQ0FBQSxpQkhnRkoscUJFckZLLENBQUEsVUZ5RVIsU0V6RVEsQ0FBQSxlRjJFUCxrQkdwRU8sUUFGRCxDQUFBLGVINEVKLGtCRzFFSyxTQUZELENBQUEsaUJIZ0ZKLHFCRXJGSyxDQUFBLFVGeUVSLGVFekVRLENBQUEsZUYyRVAsa0JHcEVPLGNBRkQsQ0FBQSxlSDRFSixrQkcxRUssZUFGRCxDQUFBLGlCSGdGSixlRXJGSyxDQUFBLFVGeUVSLGVFekVRLENBQUEsZUYyRVAsa0JHcEVPLGNBRkQsQ0FBQSxlSDRFSixrQkcxRUssZUFGRCxDQUFBLGlCSGdGSixxQkVyRkssQ0FBQSxVRnlFUixTRXpFUSxDQUFBLGVGMkVQLGtCR3BFTyxRQUZELENBQUEsZUg0RUosa0JHMUVLLFNBRkQsQ0FBQSxpQkhnRkoscUJFckZLLENBQUEsV0Z5RVIsZUV6RVEsQ0FBQSxnQkYyRVAsa0JHcEVPLGNBRkQsQ0FBQSxnQkg0RUosa0JHMUVLLGVBRkQsQ0FBQSxpQkhnRkosZUVyRkssQ0FBQSxXRnlFUixlRXpFUSxDQUFBLGdCRjJFUCxrQkdwRU8sY0FGRCxDQUFBLGdCSDRFSixrQkcxRUssZUFGRCxDQUFBLGtCSGdGSixxQkVyRkssQ0FBQSxXRnlFUixVRXpFUSxDQUFBLGtCRjJFUCxxQkUzRU8sQ0FBQSwyQ0YySVYsV0w5Q21ELFVTbkc1QyxDQUFBLDJFQXNCTyxVQUNMLENBQUEsK0VBR0ssVUFDTCxDQUFBLGlFSnNIRCxVTDlDMkMsQ0FBQSwyQ0s4Q25ELFdMOUNtRCxTU25HNUMsQ0FBQSwyRUFzQk8sVUFDTCxDQUFBLCtFQUdLLFVBQ0wsQ0FBQSxpRUpzSEQsVUw5QzJDLENBQUEsMkNLOENuRCxXTDlDbUQsZVNuRzVDLENBQUEsMkVBc0JPLFVBQ0wsQ0FBQSwrRUFHSyxVQUNMLENBQUEsaUVKc0hELFVMOUMyQyxDQUFBLDJDSzhDbkQsV0w5Q21ELFNTbkc1QyxDQUFBLDJFQXNCTyxVQUNMLENBQUEsK0VBR0ssVUFDTCxDQUFBLGlFSnNIRCxVTDlDMkMsQ0FBQSwyQ0s4Q25ELFdMOUNtRCxTU25HNUMsQ0FBQSwyRUFzQk8sVUFDTCxDQUFBLCtFQUdLLFVBQ0wsQ0FBQSxpRUpzSEQsVUw5QzJDLENBQUEsMkNLOENuRCxXTDlDbUQsZVNuRzVDLENBQUEsMkVBc0JPLFVBQ0wsQ0FBQSwrRUFHSyxVQUNMLENBQUEsaUVKc0hELFVMOUMyQyxDQUFBLDJDSzhDbkQsV0w5Q21ELGVTbkc1QyxDQUFBLDJFQXNCTyxVQUNMLENBQUEsK0VBR0ssVUFDTCxDQUFBLGlFSnNIRCxVTDlDMkMsQ0FBQSwyQ0s4Q25ELFdMOUNtRCxXU25HNUMsQ0FBQSwyRUFzQk8sVUFDTCxDQUFBLCtFQUdLLFVBQ0wsQ0FBQSxpRUpzSEQsVUw5QzJDLENBQUEsbURLOENuRCxnQkNsSmEsY0FDYixDQUFZLHNCRGlIVixlQUNjLGFBQ1osQ0FBVyxtQ0FJZSxlQUNoQixhQUNaLENBQVcsdURBd0JiLHVCQ3BKVSxxQkFBQSxDQUFBLGlCRGdJaUMsa0JHdEc3QixnQkFDRCxDQUFBLCtEQUxPLFdBQ1gsVUFDQSxDQUFBLGlESG1IVCxnQkdyR1EsZUFDRSxhQUNaLENBQVcseUxBekNXLFdSdUcrQixVUXJHMUMsQ0FBQSx3SUFLVSxXUmlHZ0MsQ0FBQSxDQUFBLGNLd0NyRCxxQkYzRVUsQ0FBQSwwQkcxQk4sZUFDQSxDQUFhLDJDVHVHZ0IsY1FIakMsc0JGM0VVLENBQUEsMEJHMUJOLGVBQ0EsQ0FBYSxDQUFFLG9FSWtObkIsU0FDUSxTQUNOLENBQU8sRUFBSSxtQlRySFcsa0JTNEhYLGdCVDdIUSxpQ0FFSSxDQUFBLEtTaUl2QixrQkFFWSxtQkFDQyxDQUFBLFNBSVQsaUJUN01hLG1CU2dOSixDQUFBLE1BQ2QsY1RoSmUsbUJTcUpELENBQUEsMENBU1gsK0RUck95RCxrQkFtRDNDLG1CQTlDRyxjQWdEUixpQ0FpQlMsQ0FBQSxrSFNzS3BCLGNBQ2EsVVRuUEgsQ0FBQSxPUzZQRixrQlBuUEEsZ0JGa0RRLGFTeU5FLG1CVHhOQyxDQUFBLE9TZ01YLGtCUG5QQSxnQkZrRFEsYVN5TkUsbUJUeE5DLENBQUEsMkNKMkJZLE9hcUt2QixpQlBuUEEsQ0FBQSxPT21QQSxpQlBuUEEsQ0FBQSxDQUFBLDJDTjhFdUIsT2FxS3ZCLGNQblBBLENBQUEsT09tUEEsZ0JQblBBLENBQUEsQ0FBQSxFT29SSCxvQkFPUSxjVDVTTixxQkFpR2MsY1MrTWIsQ0FBQSxnQkFMVCxhVDNNa0IsQ0FBQSxNUzBOakIsUUFDRSxDQUFNLEdBQ1AsV0FLTSxvQlBoVEMsU09tVEYsb0JUL05lLGFTa09YLGVBQ0UsNkJUalVGLGFTbVVWLENBQVcsU0FNYixtQlR6UHdCLDRCQWtCSixlQW5CQyxDQUFBLEdTOFBwQixpQkFJWSxDQUFBLEdBQ1osb0JUL09nQixvQkFGRCxDQUFBLEdTdVBmLG1CVHJQZ0IsQ0FBQSx3QlM2UGIsb0JUNVBvQixlUytQcEIsQ0FBYSxHQUNkLGtCVC9Qb0IsQ0FBQSxNU3NRckIsb0JUcFEwQixnQkEzRlQsQ0FBQSxXU2tXaEIsZ0JUOVJxQixxQ0V0RWQsMEJGVkUsQ0FBQSx3QlNrWEYsZ0JUblNXLGFBOUVYLENBQUEsS1N5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QWdCQSw0QkFBQSxBQ2NHLHdCQUFBLHVDQ3RCYSxtQ0FBQSxBQUdGLDBCQUFBLENBQUEsMkNIQ1YsZ0NBQUEsQUVrQkQsMkJBQUEsQ0FBQSxtQkY5QlQsMEJDQU0sa0NBZ0JBLFVDZ0JQLDJCRTlCcUIsQ0FBQSxvQ0pVVixTRW9CWCxDQUFBLG9CRmhDQywwQkNBTSxrQ0FnQkEsVUNnQlAsMkJFOUJxQixDQUFBLHFDSlVWLFNFb0JYLENBQUEsNkJGaENDLDBCQ0FNLGtDQWdCQSw4Q0lyQkYseUJBQUEsQUhxQ0cscUJBQUEsdUNJeEJlLFNBQ3JCLENBQUEsOENOR1MsMkNLV3FCLFNDSjlCLENBQUEsK0JObkJELDBCQ0FNLGtDQWdCQSw4Q0lwQkEsMkJBQUEsQUhrQ0csdUJBQUEsdUNJdEJhLFNBQ3JCLENBQUEsZ0ROR1MsMkNLV3FCLFNDSjlCLENBQUEsZ0NObkJELDBCQ0FNLGtDQWdCQSw2Q0luQkMsNEJBQUEsQUhpQ0Usd0JBQUEsdUNJdEJhLFNBQ3JCLENBQUEsaUROR1MsMkNLV3FCLFNDSjlCLENBQUEsOEJObkJELDBCQ0FNLGtDQWdCQSw2Q0lsQkQsMEJBQUEsQUhnQ0ksc0JBQUEsdUNJdEJhLFNBQ3JCLENBQUEsK0NOR1MsMkNLV3FCLFNDSjlCLENBQUEsa0NObkJELDBCQ0FNLGtDQWdCQSw4Q0lyQkYsNEJBQUEsQUhtQ0ssd0JBQUEsdUNJdEJhLFNBQ3JCLENBQUEsbUROR1MsMkNLV3FCLFNDSjlCLENBQUEsa0NObkJELDBCQ0FNLGtDQWdCQSw4Q0lwQkEsNEJBQUEsQUhrQ0csd0JBQUEsdUNJdEJhLFNBQ3JCLENBQUEsbUROR1MsMkNLV3FCLFNDSjlCLENBQUEsOEJObkJELDBCQ0FNLGtDQWdCQSwyQ0lTMkIseUJBQUEsQUhPMUIscUJBQUEsdUNJeEJlLFNBQ3JCLENBQUEsK0NOR1MsNkNLWE4sU0NrQkgsQ0FBQSxnQ05uQkQsMEJDQU0sa0NBZ0JBLDJDSVMyQiwyQkFBQSxBSEt4Qix1QkFBQSx1Q0l0QmEsU0FDckIsQ0FBQSxpRE5HUyw2Q0tWSixTQ2lCTCxDQUFBLGlDTm5CRCwwQkNBTSxrQ0FnQkEsMkNJUzJCLDRCQUFBLEFIS3hCLHdCQUFBLHVDSXRCYSxTQUNyQixDQUFBLGtETkdTLDhDS1RILFNDZ0JOLENBQUEsK0JObkJELDBCQ0FNLGtDQWdCQSwyQ0lTMkIsMEJBQUEsQUhLeEIsc0JBQUEsdUNJdEJhLFNBQ3JCLENBQUEsZ0ROR1MsOENLUkwsU0NlSixDQUFBLG1DTm5CRCwwQkNBTSxrQ0FnQkEsMkNJUzJCLDRCQUFBLEFIS3hCLHdCQUFBLHVDSXRCYSxTQUNyQixDQUFBLG9ETkdTLDZDS1hOLFNDa0JILENBQUEsbUNObkJELDBCQ0FNLGtDQWdCQSwyQ0lTMkIsNEJBQUEsQUhLeEIsd0JBQUEsdUNJdEJhLFNBQ3JCLENBQUEsb0ROR1MsNkNLVkosU0NpQkwsQ0FBQSx1Qk5uQkQsMEJDQU0sa0NBZ0JBLHdCQUFBLEFDY0csb0JBQUEsdUNLekJhLFNBQ3JCLENBQUEsd0NQTVMsdUJBQUEsQUVrQkQsbUJBQUEsU0tkUixDQUFBLHlCUGhCRCwwQkNBTSxrQ0FnQkEseUJBQUEsQUNjRyxxQkFBQSx1Q0t6QmEsU0FDckIsQ0FBQSwwQ1BNUyx1QkFBQSxBRWtCRCxtQkFBQSxTS2RSLENBQUEsd0JQaEJELDBCQ0FNLGtDQWdCQSx1QkFBQSxBQ2NHLG1CQUFBLHVDS3pCYSxTQUNyQixDQUFBLHlDUE1TLHlCQUFBLEFFa0JELHFCQUFBLFNLZFIsQ0FBQSwwQlBoQkQsMEJDQU0sa0NBZ0JBLHVCQUFBLEFDY0csbUJBQUEsdUNLekJhLFNBQ3JCLENBQUEsMkNQTVMsd0JBQUEsQUVrQkQsb0JBQUEsU0tkUixDQUFBLG1CUGhCRCwwQkNBTSxrQ0FnQkEsK0JBQUEsQUNjRywyQkFBQSx1Q00xQmEsU0FDckIsQ0FBQSxvQ1JPUyx3QkFBQSxBRWtCRCxvQkFBQSxTTWZSLENBQUEsb0JSZkQsMEJDQU0sa0NBZ0JBLHdCQUFBLEFDY0csb0JBQUEsdUNNMUJhLFNBQ3JCLENBQUEscUNST1MsOEJBQUEsQUVrQkQsMEJBQUEsU01mUixDQUFBLHVCUmZELDBCQ0FNLGtDQWdCQSw4QkFBQSxBQ2NHLDBCQUFBLHVD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Q0QsQ0FBRSxpQ0FPekIsNkJBQ2lCLENBQUEsa0JBRWpCLGtCQUNjLFVBQ1YsU0FDQSxtQjNEcERJLDJEb0RwQnVCLG1CQUtsQixXT3NFRixDQUFBLG1ENUQyQlosY0FDVSxZQUNGLDBCQUFBLEFBR0wsYUFBQSxpQkFBQSxBQUNBLE9BQUEsQ0FBQSx5QkFJSCxVQUNNLENBQUUsMENMVmtCLGtCaUVsQ3pCLFVBU2EsQ0FBRSxDQUFBLHFCQVRmLGdCQVlvQixvQkFDSCxDQUFBLGdCQUNaLHNCN0R0RUQsa0I4RC9FTSxVQUNWLENBQUEsMEJBQ0Esc0M5RDZFSSxDQUFBLDhDOEQzRUEsaURBQ29ELFlBQ3pDLFlBQ0MsMkJBQ1csQ0FBQSwwQ2xFaUtGLDhDa0VyS3JCLHVCQU15QixDQUFBLENBQUEsc0NBRUcsOENBUjVCLHlCQVN5QixDQUFBLENBQUEsb0JBZmxCLDhCQW9CTSxpQkFDSCxDQUFBLHVCQUZkLGtCQUlrQixVQUNWLGFBQ1EsV0FDRixXQUNDLCtCOUQ0Q1IsQ0FBQSwwQ0pvR2tCLHVCa0V4SnpCLFdBVWtCLFVBQ0QsQ0FBRSxDQUFBLDhCQUtuQixnQkFDZ0IsVUFDUCxDOUQyQ0wsMEI4RHpDSixhOUR3Q1EsQ0FBQSw0QjhEeENSLGE5RHdDUSxDQUFBLCtCOERqQ1IsV0FDVyxnQkFDSSxDQUFBLDZDQUNYLGVBQ2EsV0FDVCxlQUNVLFVBQ0wsbUI1RG1DTCwyRG9EcEJ1QixtQkFLbEIsY3RETUwsVThEdEJLLENBQUUsMENsRWtIVSw2Q2tFMUhyQixXQVVlLFFBQ0osQ0FBRSxDQUFBLG1EQVhBLFlBY0UsQ0FBRSxtREFkSixlQWlCRSxVQUNGLEM5RGFiLHNCOERUSixhQUNhLHNDOURTVCxDQUFBLCtCOERIUyxnQkFJRCxDQUFBLDJDQUplLFlBRWhCLENBQUUsZUFDWixvQkFLZSxDQUFBIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsucmV2ZWFsLC5yZXZlYWwudGlueSwucmV2ZWFsLnNtYWxsLC5yZXZlYWwubGFyZ2V7cmlnaHQ6YXV0bztsZWZ0OmF1dG87bWFyZ2luOjAgYXV0b319LyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL2h0bWx7bGluZS1oZWlnaHQ6MS4xNTstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e21hcmdpbjowfWgxe2ZvbnQtc2l6ZToyZW07bWFyZ2luOjAuNjdlbSAwfWhye2JveC1zaXppbmc6Y29udGVudC1ib3g7aGVpZ2h0OjA7b3ZlcmZsb3c6dmlzaWJsZX1wcmV7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLCBtb25vc3BhY2U7Zm9udC1zaXplOjFlbX1he2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbTpub25lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfWNvZGUsa2JkLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLCBtb25vc3BhY2U7Zm9udC1zaXplOjFlbX1zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1Yntib3R0b206LTAuMjVlbX1zdXB7dG9wOi0wLjVlbX1pbWd7Ym9yZGVyLXN0eWxlOm5vbmV9YnV0dG9uLGlucHV0LG9wdGdyb3VwLHNlbGVjdCx0ZXh0YXJlYXtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0OjEuMTU7bWFyZ2luOjB9YnV0dG9uLGlucHV0e292ZXJmbG93OnZpc2libGV9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixbdHlwZT1cImJ1dHRvblwiXSxbdHlwZT1cInJlc2V0XCJdLFt0eXBlPVwic3VibWl0XCJdey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b259YnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXJ7Ym9yZGVyLXN0eWxlOm5vbmU7cGFkZGluZzowfWJ1dHRvbjotbW96LWZvY3VzcmluZyxbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5ne291dGxpbmU6MXB4IGRvdHRlZCBCdXR0b25UZXh0fWZpZWxkc2V0e3BhZGRpbmc6MC4zNWVtIDAuNzVlbSAwLjYyNWVtfWxlZ2VuZHtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OnRhYmxlO21heC13aWR0aDoxMDAlO3BhZGRpbmc6MDt3aGl0ZS1zcGFjZTpub3JtYWx9cHJvZ3Jlc3N7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9dGV4dGFyZWF7b3ZlcmZsb3c6YXV0b31bdHlwZT1cImNoZWNrYm94XCJdLFt0eXBlPVwicmFkaW9cIl17Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MH1bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31bdHlwZT1cInNlYXJjaFwiXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO291dGxpbmUtb2Zmc2V0Oi0ycHh9W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2ZvbnQ6aW5oZXJpdH1kZXRhaWxze2Rpc3BsYXk6YmxvY2t9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbX10ZW1wbGF0ZXtkaXNwbGF5Om5vbmV9W2hpZGRlbl17ZGlzcGxheTpub25lfS5mb3VuZGF0aW9uLW1xe2ZvbnQtZmFtaWx5Olwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCJ9aHRtbHtib3gtc2l6aW5nOmJvcmRlci1ib3g7Zm9udC1zaXplOjEwMCV9KiwqOjpiZWZvcmUsKjo6YWZ0ZXJ7Ym94LXNpemluZzppbmhlcml0fWJvZHl7bWFyZ2luOjA7cGFkZGluZzowO2JhY2tncm91bmQ6I2ZmZjtmb250LWZhbWlseTpcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzAwMDstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZX1pbWd7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvOy1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6YmljdWJpY310ZXh0YXJlYXtoZWlnaHQ6YXV0bzttaW4taGVpZ2h0OjUwcHg7Ym9yZGVyLXJhZGl1czowfXNlbGVjdHtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjB9Lm1hcF9jYW52YXMgaW1nLC5tYXBfY2FudmFzIGVtYmVkLC5tYXBfY2FudmFzIG9iamVjdCwubXFhLWRpc3BsYXkgaW1nLC5tcWEtZGlzcGxheSBlbWJlZCwubXFhLWRpc3BsYXkgb2JqZWN0e21heC13aWR0aDpub25lICFpbXBvcnRhbnR9YnV0dG9ue3BhZGRpbmc6MDthcHBlYXJhbmNlOm5vbmU7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7bGluZS1oZWlnaHQ6MTtjdXJzb3I6YXV0b31bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9ue291dGxpbmU6MH1wcmV7b3ZlcmZsb3c6YXV0b31idXR0b24saW5wdXQsb3B0Z3JvdXAsc2VsZWN0LHRleHRhcmVhe2ZvbnQtZmFtaWx5OmluaGVyaXR9LmlzLXZpc2libGV7ZGlzcGxheTpibG9jayAhaW1wb3J0YW50fS5pcy1oaWRkZW57ZGlzcGxheTpub25lICFpbXBvcnRhbnR9LnJvd3ttYXgtd2lkdGg6NzkuMTI1cmVtO21hcmdpbi1yaWdodDphdXRvO21hcmdpbi1sZWZ0OmF1dG99LnJvdzo6YmVmb3JlLC5yb3c6OmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDonICc7ZmxleC1iYXNpczowO29yZGVyOjF9LnJvdzo6YWZ0ZXJ7Y2xlYXI6Ym90aH0ucm93LmNvbGxhcHNlPi5jb2x1bW4sLnJvdy5jb2xsYXBzZT4uY29sdW1uc3twYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9LnJvdyAucm93e21hcmdpbi1yaWdodDotLjYyNXJlbTttYXJnaW4tbGVmdDotLjYyNXJlbX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7LnJvdyAucm93e21hcmdpbi1yaWdodDotLjkzNzVyZW07bWFyZ2luLWxlZnQ6LS45Mzc1cmVtfX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LnJvdyAucm93e21hcmdpbi1yaWdodDotLjkzNzVyZW07bWFyZ2luLWxlZnQ6LS45Mzc1cmVtfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKXsucm93IC5yb3d7bWFyZ2luLXJpZ2h0Oi0uOTM3NXJlbTttYXJnaW4tbGVmdDotLjkzNzVyZW19fS5yb3cgLnJvdy5jb2xsYXBzZXttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5yb3cuZXhwYW5kZWR7bWF4LXdpZHRoOm5vbmV9LnJvdy5leHBhbmRlZCAucm93e21hcmdpbi1yaWdodDphdXRvO21hcmdpbi1sZWZ0OmF1dG99LnJvdzpub3QoLmV4cGFuZGVkKSAucm93e21heC13aWR0aDpub25lfS5yb3cuZ3V0dGVyLXNtYWxsPi5jb2x1bW4sLnJvdy5ndXR0ZXItc21hbGw+LmNvbHVtbnN7cGFkZGluZy1yaWdodDouNjI1cmVtO3BhZGRpbmctbGVmdDouNjI1cmVtfS5yb3cuZ3V0dGVyLW1lZGl1bT4uY29sdW1uLC5yb3cuZ3V0dGVyLW1lZGl1bT4uY29sdW1uc3twYWRkaW5nLXJpZ2h0Oi45Mzc1cmVtO3BhZGRpbmctbGVmdDouOTM3NXJlbX0uY29sdW1uLC5jb2x1bW5ze3dpZHRoOjEwMCU7ZmxvYXQ6bGVmdDtwYWRkaW5nLXJpZ2h0Oi42MjVyZW07cGFkZGluZy1sZWZ0Oi42MjVyZW19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5jb2x1bW4sLmNvbHVtbnN7cGFkZGluZy1yaWdodDouOTM3NXJlbTtwYWRkaW5nLWxlZnQ6LjkzNzVyZW19fS5jb2x1bW4sLmNvbHVtbnMsLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7ZmxvYXQ6bGVmdDtjbGVhcjpub25lfS5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpe2Zsb2F0OnJpZ2h0fS5jb2x1bW4uZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LmNvbHVtbi5yb3cucm93LC5yb3cucm93LmNvbHVtbnN7ZmxvYXQ6bm9uZX0ucm93IC5jb2x1bW4ucm93LnJvdywucm93IC5yb3cucm93LmNvbHVtbnN7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9LnNtYWxsLTF7d2lkdGg6OC4zMzMzMyV9LnNtYWxsLXB1c2gtMXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjguMzMzMzMlfS5zbWFsbC1wdWxsLTF7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotOC4zMzMzMyV9LnNtYWxsLW9mZnNldC0we21hcmdpbi1sZWZ0OjAlfS5zbWFsbC0ye3dpZHRoOjE2LjY2NjY3JX0uc21hbGwtcHVzaC0ye3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MTYuNjY2NjclfS5zbWFsbC1wdWxsLTJ7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotMTYuNjY2NjclfS5zbWFsbC1vZmZzZXQtMXttYXJnaW4tbGVmdDo4LjMzMzMzJX0uc21hbGwtM3t3aWR0aDoyNSV9LnNtYWxsLXB1c2gtM3twb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjI1JX0uc21hbGwtcHVsbC0ze3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTI1JX0uc21hbGwtb2Zmc2V0LTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjclfS5zbWFsbC00e3dpZHRoOjMzLjMzMzMzJX0uc21hbGwtcHVzaC00e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MzMuMzMzMzMlfS5zbWFsbC1wdWxsLTR7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotMzMuMzMzMzMlfS5zbWFsbC1vZmZzZXQtM3ttYXJnaW4tbGVmdDoyNSV9LnNtYWxsLTV7d2lkdGg6NDEuNjY2NjclfS5zbWFsbC1wdXNoLTV7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo0MS42NjY2NyV9LnNtYWxsLXB1bGwtNXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi00MS42NjY2NyV9LnNtYWxsLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzJX0uc21hbGwtNnt3aWR0aDo1MCV9LnNtYWxsLXB1c2gtNntwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjUwJX0uc21hbGwtcHVsbC02e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTUwJX0uc21hbGwtb2Zmc2V0LTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjclfS5zbWFsbC03e3dpZHRoOjU4LjMzMzMzJX0uc21hbGwtcHVzaC03e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NTguMzMzMzMlfS5zbWFsbC1wdWxsLTd7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotNTguMzMzMzMlfS5zbWFsbC1vZmZzZXQtNnttYXJnaW4tbGVmdDo1MCV9LnNtYWxsLTh7d2lkdGg6NjYuNjY2NjclfS5zbWFsbC1wdXNoLTh7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo2Ni42NjY2NyV9LnNtYWxsLXB1bGwtOHtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi02Ni42NjY2NyV9LnNtYWxsLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzJX0uc21hbGwtOXt3aWR0aDo3NSV9LnNtYWxsLXB1c2gtOXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Ojc1JX0uc21hbGwtcHVsbC05e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTc1JX0uc21hbGwtb2Zmc2V0LTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjclfS5zbWFsbC0xMHt3aWR0aDo4My4zMzMzMyV9LnNtYWxsLXB1c2gtMTB7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo4My4zMzMzMyV9LnNtYWxsLXB1bGwtMTB7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotODMuMzMzMzMlfS5zbWFsbC1vZmZzZXQtOXttYXJnaW4tbGVmdDo3NSV9LnNtYWxsLTExe3dpZHRoOjkxLjY2NjY3JX0uc21hbGwtcHVzaC0xMXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjkxLjY2NjY3JX0uc21hbGwtcHVsbC0xMXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi05MS42NjY2NyV9LnNtYWxsLW9mZnNldC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMyV9LnNtYWxsLTEye3dpZHRoOjEwMCV9LnNtYWxsLW9mZnNldC0xMXttYXJnaW4tbGVmdDo5MS42NjY2NyV9LnNtYWxsLXVwLTE+LmNvbHVtbiwuc21hbGwtdXAtMT4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjEwMCV9LnNtYWxsLXVwLTE+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLnNtYWxsLXVwLTE+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LnNtYWxsLXVwLTE+LmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwuc21hbGwtdXAtMT4uY29sdW1uczpudGgtb2YtdHlwZSgxbisxKXtjbGVhcjpib3RofS5zbWFsbC11cC0xPi5jb2x1bW46bGFzdC1jaGlsZCwuc21hbGwtdXAtMT4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LnNtYWxsLXVwLTI+LmNvbHVtbiwuc21hbGwtdXAtMj4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjUwJX0uc21hbGwtdXAtMj4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwuc21hbGwtdXAtMj4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0uc21hbGwtdXAtMj4uY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLC5zbWFsbC11cC0yPi5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpe2NsZWFyOmJvdGh9LnNtYWxsLXVwLTI+LmNvbHVtbjpsYXN0LWNoaWxkLC5zbWFsbC11cC0yPi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0uc21hbGwtdXAtMz4uY29sdW1uLC5zbWFsbC11cC0zPi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MzMuMzMzMzMlfS5zbWFsbC11cC0zPi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5zbWFsbC11cC0zPi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5zbWFsbC11cC0zPi5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksLnNtYWxsLXVwLTM+LmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSl7Y2xlYXI6Ym90aH0uc21hbGwtdXAtMz4uY29sdW1uOmxhc3QtY2hpbGQsLnNtYWxsLXVwLTM+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5zbWFsbC11cC00Pi5jb2x1bW4sLnNtYWxsLXVwLTQ+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoyNSV9LnNtYWxsLXVwLTQ+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLnNtYWxsLXVwLTQ+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LnNtYWxsLXVwLTQ+LmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwuc21hbGwtdXAtND4uY29sdW1uczpudGgtb2YtdHlwZSg0bisxKXtjbGVhcjpib3RofS5zbWFsbC11cC00Pi5jb2x1bW46bGFzdC1jaGlsZCwuc21hbGwtdXAtND4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LnNtYWxsLXVwLTU+LmNvbHVtbiwuc21hbGwtdXAtNT4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjIwJX0uc21hbGwtdXAtNT4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwuc21hbGwtdXAtNT4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0uc21hbGwtdXAtNT4uY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLC5zbWFsbC11cC01Pi5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpe2NsZWFyOmJvdGh9LnNtYWxsLXVwLTU+LmNvbHVtbjpsYXN0LWNoaWxkLC5zbWFsbC11cC01Pi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0uc21hbGwtdXAtNj4uY29sdW1uLC5zbWFsbC11cC02Pi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MTYuNjY2NjclfS5zbWFsbC11cC02Pi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5zbWFsbC11cC02Pi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5zbWFsbC11cC02Pi5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksLnNtYWxsLXVwLTY+LmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSl7Y2xlYXI6Ym90aH0uc21hbGwtdXAtNj4uY29sdW1uOmxhc3QtY2hpbGQsLnNtYWxsLXVwLTY+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5zbWFsbC11cC03Pi5jb2x1bW4sLnNtYWxsLXVwLTc+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoxNC4yODU3MSV9LnNtYWxsLXVwLTc+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLnNtYWxsLXVwLTc+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LnNtYWxsLXVwLTc+LmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwuc21hbGwtdXAtNz4uY29sdW1uczpudGgtb2YtdHlwZSg3bisxKXtjbGVhcjpib3RofS5zbWFsbC11cC03Pi5jb2x1bW46bGFzdC1jaGlsZCwuc21hbGwtdXAtNz4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LnNtYWxsLXVwLTg+LmNvbHVtbiwuc21hbGwtdXAtOD4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjEyLjUlfS5zbWFsbC11cC04Pi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5zbWFsbC11cC04Pi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5zbWFsbC11cC04Pi5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksLnNtYWxsLXVwLTg+LmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSl7Y2xlYXI6Ym90aH0uc21hbGwtdXAtOD4uY29sdW1uOmxhc3QtY2hpbGQsLnNtYWxsLXVwLTg+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5zbWFsbC1jb2xsYXBzZT4uY29sdW1uLC5zbWFsbC1jb2xsYXBzZT4uY29sdW1uc3twYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9LnNtYWxsLWNvbGxhcHNlIC5yb3d7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uZXhwYW5kZWQucm93IC5zbWFsbC1jb2xsYXBzZS5yb3d7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uc21hbGwtdW5jb2xsYXBzZT4uY29sdW1uLC5zbWFsbC11bmNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6LjYyNXJlbTtwYWRkaW5nLWxlZnQ6LjYyNXJlbX0uc21hbGwtY2VudGVyZWR7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0b30uc21hbGwtY2VudGVyZWQsLnNtYWxsLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7ZmxvYXQ6bm9uZTtjbGVhcjpib3RofS5zbWFsbC11bmNlbnRlcmVkLC5zbWFsbC1wdXNoLTAsLnNtYWxsLXB1bGwtMHtwb3NpdGlvbjpzdGF0aWM7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uc21hbGwtdW5jZW50ZXJlZCwuc21hbGwtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5zbWFsbC1wdXNoLTAsLnNtYWxsLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5zbWFsbC1wdWxsLTAsLnNtYWxsLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpe2Zsb2F0OmxlZnQ7Y2xlYXI6bm9uZX0uc21hbGwtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5zbWFsbC1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwuc21hbGwtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7ZmxvYXQ6cmlnaHR9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tMXt3aWR0aDo4LjMzMzMzJX0ubWVkaXVtLXB1c2gtMXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjguMzMzMzMlfS5tZWRpdW0tcHVsbC0xe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTguMzMzMzMlfS5tZWRpdW0tb2Zmc2V0LTB7bWFyZ2luLWxlZnQ6MCV9Lm1lZGl1bS0ye3dpZHRoOjE2LjY2NjY3JX0ubWVkaXVtLXB1c2gtMntwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjE2LjY2NjY3JX0ubWVkaXVtLXB1bGwtMntwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi0xNi42NjY2NyV9Lm1lZGl1bS1vZmZzZXQtMXttYXJnaW4tbGVmdDo4LjMzMzMzJX0ubWVkaXVtLTN7d2lkdGg6MjUlfS5tZWRpdW0tcHVzaC0ze3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MjUlfS5tZWRpdW0tcHVsbC0ze3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTI1JX0ubWVkaXVtLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY3JX0ubWVkaXVtLTR7d2lkdGg6MzMuMzMzMzMlfS5tZWRpdW0tcHVzaC00e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MzMuMzMzMzMlfS5tZWRpdW0tcHVsbC00e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTMzLjMzMzMzJX0ubWVkaXVtLW9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0ubWVkaXVtLTV7d2lkdGg6NDEuNjY2NjclfS5tZWRpdW0tcHVzaC01e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NDEuNjY2NjclfS5tZWRpdW0tcHVsbC01e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTQxLjY2NjY3JX0ubWVkaXVtLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzJX0ubWVkaXVtLTZ7d2lkdGg6NTAlfS5tZWRpdW0tcHVzaC02e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NTAlfS5tZWRpdW0tcHVsbC02e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTUwJX0ubWVkaXVtLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY3JX0ubWVkaXVtLTd7d2lkdGg6NTguMzMzMzMlfS5tZWRpdW0tcHVzaC03e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NTguMzMzMzMlfS5tZWRpdW0tcHVsbC03e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTU4LjMzMzMzJX0ubWVkaXVtLW9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0ubWVkaXVtLTh7d2lkdGg6NjYuNjY2NjclfS5tZWRpdW0tcHVzaC04e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NjYuNjY2NjclfS5tZWRpdW0tcHVsbC04e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTY2LjY2NjY3JX0ubWVkaXVtLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzJX0ubWVkaXVtLTl7d2lkdGg6NzUlfS5tZWRpdW0tcHVzaC05e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NzUlfS5tZWRpdW0tcHVsbC05e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTc1JX0ubWVkaXVtLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY3JX0ubWVkaXVtLTEwe3dpZHRoOjgzLjMzMzMzJX0ubWVkaXVtLXB1c2gtMTB7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo4My4zMzMzMyV9Lm1lZGl1bS1wdWxsLTEwe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTgzLjMzMzMzJX0ubWVkaXVtLW9mZnNldC05e21hcmdpbi1sZWZ0Ojc1JX0ubWVkaXVtLTExe3dpZHRoOjkxLjY2NjY3JX0ubWVkaXVtLXB1c2gtMTF7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo5MS42NjY2NyV9Lm1lZGl1bS1wdWxsLTExe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTkxLjY2NjY3JX0ubWVkaXVtLW9mZnNldC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMyV9Lm1lZGl1bS0xMnt3aWR0aDoxMDAlfS5tZWRpdW0tb2Zmc2V0LTExe21hcmdpbi1sZWZ0OjkxLjY2NjY3JX0ubWVkaXVtLXVwLTE+LmNvbHVtbiwubWVkaXVtLXVwLTE+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoxMDAlfS5tZWRpdW0tdXAtMT4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwubWVkaXVtLXVwLTE+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9Lm1lZGl1bS11cC0xPi5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksLm1lZGl1bS11cC0xPi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpe2NsZWFyOmJvdGh9Lm1lZGl1bS11cC0xPi5jb2x1bW46bGFzdC1jaGlsZCwubWVkaXVtLXVwLTE+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5tZWRpdW0tdXAtMj4uY29sdW1uLC5tZWRpdW0tdXAtMj4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjUwJX0ubWVkaXVtLXVwLTI+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLm1lZGl1bS11cC0yPi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5tZWRpdW0tdXAtMj4uY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLC5tZWRpdW0tdXAtMj4uY29sdW1uczpudGgtb2YtdHlwZSgybisxKXtjbGVhcjpib3RofS5tZWRpdW0tdXAtMj4uY29sdW1uOmxhc3QtY2hpbGQsLm1lZGl1bS11cC0yPi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0ubWVkaXVtLXVwLTM+LmNvbHVtbiwubWVkaXVtLXVwLTM+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDozMy4zMzMzMyV9Lm1lZGl1bS11cC0zPi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5tZWRpdW0tdXAtMz4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0ubWVkaXVtLXVwLTM+LmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwubWVkaXVtLXVwLTM+LmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSl7Y2xlYXI6Ym90aH0ubWVkaXVtLXVwLTM+LmNvbHVtbjpsYXN0LWNoaWxkLC5tZWRpdW0tdXAtMz4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9Lm1lZGl1bS11cC00Pi5jb2x1bW4sLm1lZGl1bS11cC00Pi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MjUlfS5tZWRpdW0tdXAtND4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwubWVkaXVtLXVwLTQ+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9Lm1lZGl1bS11cC00Pi5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksLm1lZGl1bS11cC00Pi5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpe2NsZWFyOmJvdGh9Lm1lZGl1bS11cC00Pi5jb2x1bW46bGFzdC1jaGlsZCwubWVkaXVtLXVwLTQ+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5tZWRpdW0tdXAtNT4uY29sdW1uLC5tZWRpdW0tdXAtNT4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjIwJX0ubWVkaXVtLXVwLTU+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLm1lZGl1bS11cC01Pi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5tZWRpdW0tdXAtNT4uY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLC5tZWRpdW0tdXAtNT4uY29sdW1uczpudGgtb2YtdHlwZSg1bisxKXtjbGVhcjpib3RofS5tZWRpdW0tdXAtNT4uY29sdW1uOmxhc3QtY2hpbGQsLm1lZGl1bS11cC01Pi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0ubWVkaXVtLXVwLTY+LmNvbHVtbiwubWVkaXVtLXVwLTY+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoxNi42NjY2NyV9Lm1lZGl1bS11cC02Pi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5tZWRpdW0tdXAtNj4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0ubWVkaXVtLXVwLTY+LmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwubWVkaXVtLXVwLTY+LmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSl7Y2xlYXI6Ym90aH0ubWVkaXVtLXVwLTY+LmNvbHVtbjpsYXN0LWNoaWxkLC5tZWRpdW0tdXAtNj4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9Lm1lZGl1bS11cC03Pi5jb2x1bW4sLm1lZGl1bS11cC03Pi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MTQuMjg1NzElfS5tZWRpdW0tdXAtNz4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwubWVkaXVtLXVwLTc+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9Lm1lZGl1bS11cC03Pi5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksLm1lZGl1bS11cC03Pi5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpe2NsZWFyOmJvdGh9Lm1lZGl1bS11cC03Pi5jb2x1bW46bGFzdC1jaGlsZCwubWVkaXVtLXVwLTc+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5tZWRpdW0tdXAtOD4uY29sdW1uLC5tZWRpdW0tdXAtOD4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjEyLjUlfS5tZWRpdW0tdXAtOD4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwubWVkaXVtLXVwLTg+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9Lm1lZGl1bS11cC04Pi5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksLm1lZGl1bS11cC04Pi5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpe2NsZWFyOmJvdGh9Lm1lZGl1bS11cC04Pi5jb2x1bW46bGFzdC1jaGlsZCwubWVkaXVtLXVwLTg+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5tZWRpdW0tY29sbGFwc2U+LmNvbHVtbiwubWVkaXVtLWNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0ubWVkaXVtLWNvbGxhcHNlIC5yb3d7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uZXhwYW5kZWQucm93IC5tZWRpdW0tY29sbGFwc2Uucm93e21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9Lm1lZGl1bS11bmNvbGxhcHNlPi5jb2x1bW4sLm1lZGl1bS11bmNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6LjkzNzVyZW07cGFkZGluZy1sZWZ0Oi45Mzc1cmVtfS5tZWRpdW0tY2VudGVyZWR7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0b30ubWVkaXVtLWNlbnRlcmVkLC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtmbG9hdDpub25lO2NsZWFyOmJvdGh9Lm1lZGl1bS11bmNlbnRlcmVkLC5tZWRpdW0tcHVzaC0wLC5tZWRpdW0tcHVsbC0we3Bvc2l0aW9uOnN0YXRpYzttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5tZWRpdW0tdW5jZW50ZXJlZCwubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwubWVkaXVtLXB1c2gtMCwubWVkaXVtLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5tZWRpdW0tcHVsbC0wLC5tZWRpdW0tcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7ZmxvYXQ6bGVmdDtjbGVhcjpub25lfS5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5tZWRpdW0tcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksLm1lZGl1bS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtmbG9hdDpyaWdodH19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5sYXJnZS0xe3dpZHRoOjguMzMzMzMlfS5sYXJnZS1wdXNoLTF7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo4LjMzMzMzJX0ubGFyZ2UtcHVsbC0xe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTguMzMzMzMlfS5sYXJnZS1vZmZzZXQtMHttYXJnaW4tbGVmdDowJX0ubGFyZ2UtMnt3aWR0aDoxNi42NjY2NyV9LmxhcmdlLXB1c2gtMntwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjE2LjY2NjY3JX0ubGFyZ2UtcHVsbC0ye3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTE2LjY2NjY3JX0ubGFyZ2Utb2Zmc2V0LTF7bWFyZ2luLWxlZnQ6OC4zMzMzMyV9LmxhcmdlLTN7d2lkdGg6MjUlfS5sYXJnZS1wdXNoLTN7cG9zaXRpb246cmVsYXRpdmU7bGVmdDoyNSV9LmxhcmdlLXB1bGwtM3twb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi0yNSV9LmxhcmdlLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY3JX0ubGFyZ2UtNHt3aWR0aDozMy4zMzMzMyV9LmxhcmdlLXB1c2gtNHtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjMzLjMzMzMzJX0ubGFyZ2UtcHVsbC00e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTMzLjMzMzMzJX0ubGFyZ2Utb2Zmc2V0LTN7bWFyZ2luLWxlZnQ6MjUlfS5sYXJnZS01e3dpZHRoOjQxLjY2NjY3JX0ubGFyZ2UtcHVzaC01e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NDEuNjY2NjclfS5sYXJnZS1wdWxsLTV7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotNDEuNjY2NjclfS5sYXJnZS1vZmZzZXQtNHttYXJnaW4tbGVmdDozMy4zMzMzMyV9LmxhcmdlLTZ7d2lkdGg6NTAlfS5sYXJnZS1wdXNoLTZ7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo1MCV9LmxhcmdlLXB1bGwtNntwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi01MCV9LmxhcmdlLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY3JX0ubGFyZ2UtN3t3aWR0aDo1OC4zMzMzMyV9LmxhcmdlLXB1c2gtN3twb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjU4LjMzMzMzJX0ubGFyZ2UtcHVsbC03e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTU4LjMzMzMzJX0ubGFyZ2Utb2Zmc2V0LTZ7bWFyZ2luLWxlZnQ6NTAlfS5sYXJnZS04e3dpZHRoOjY2LjY2NjY3JX0ubGFyZ2UtcHVzaC04e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NjYuNjY2NjclfS5sYXJnZS1wdWxsLTh7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotNjYuNjY2NjclfS5sYXJnZS1vZmZzZXQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMyV9LmxhcmdlLTl7d2lkdGg6NzUlfS5sYXJnZS1wdXNoLTl7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo3NSV9LmxhcmdlLXB1bGwtOXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi03NSV9LmxhcmdlLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY3JX0ubGFyZ2UtMTB7d2lkdGg6ODMuMzMzMzMlfS5sYXJnZS1wdXNoLTEwe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6ODMuMzMzMzMlfS5sYXJnZS1wdWxsLTEwe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTgzLjMzMzMzJX0ubGFyZ2Utb2Zmc2V0LTl7bWFyZ2luLWxlZnQ6NzUlfS5sYXJnZS0xMXt3aWR0aDo5MS42NjY2NyV9LmxhcmdlLXB1c2gtMTF7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo5MS42NjY2NyV9LmxhcmdlLXB1bGwtMTF7cG9zaXRpb246cmVsYXRpdmU7bGVmdDotOTEuNjY2NjclfS5sYXJnZS1vZmZzZXQtMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMlfS5sYXJnZS0xMnt3aWR0aDoxMDAlfS5sYXJnZS1vZmZzZXQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjclfS5sYXJnZS11cC0xPi5jb2x1bW4sLmxhcmdlLXVwLTE+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoxMDAlfS5sYXJnZS11cC0xPi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5sYXJnZS11cC0xPi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5sYXJnZS11cC0xPi5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksLmxhcmdlLXVwLTE+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSl7Y2xlYXI6Ym90aH0ubGFyZ2UtdXAtMT4uY29sdW1uOmxhc3QtY2hpbGQsLmxhcmdlLXVwLTE+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5sYXJnZS11cC0yPi5jb2x1bW4sLmxhcmdlLXVwLTI+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDo1MCV9LmxhcmdlLXVwLTI+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLmxhcmdlLXVwLTI+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LmxhcmdlLXVwLTI+LmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwubGFyZ2UtdXAtMj4uY29sdW1uczpudGgtb2YtdHlwZSgybisxKXtjbGVhcjpib3RofS5sYXJnZS11cC0yPi5jb2x1bW46bGFzdC1jaGlsZCwubGFyZ2UtdXAtMj4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LmxhcmdlLXVwLTM+LmNvbHVtbiwubGFyZ2UtdXAtMz4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjMzLjMzMzMzJX0ubGFyZ2UtdXAtMz4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwubGFyZ2UtdXAtMz4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0ubGFyZ2UtdXAtMz4uY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLC5sYXJnZS11cC0zPi5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpe2NsZWFyOmJvdGh9LmxhcmdlLXVwLTM+LmNvbHVtbjpsYXN0LWNoaWxkLC5sYXJnZS11cC0zPi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0ubGFyZ2UtdXAtND4uY29sdW1uLC5sYXJnZS11cC00Pi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MjUlfS5sYXJnZS11cC00Pi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5sYXJnZS11cC00Pi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5sYXJnZS11cC00Pi5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksLmxhcmdlLXVwLTQ+LmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSl7Y2xlYXI6Ym90aH0ubGFyZ2UtdXAtND4uY29sdW1uOmxhc3QtY2hpbGQsLmxhcmdlLXVwLTQ+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5sYXJnZS11cC01Pi5jb2x1bW4sLmxhcmdlLXVwLTU+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoyMCV9LmxhcmdlLXVwLTU+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLmxhcmdlLXVwLTU+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LmxhcmdlLXVwLTU+LmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwubGFyZ2UtdXAtNT4uY29sdW1uczpudGgtb2YtdHlwZSg1bisxKXtjbGVhcjpib3RofS5sYXJnZS11cC01Pi5jb2x1bW46bGFzdC1jaGlsZCwubGFyZ2UtdXAtNT4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LmxhcmdlLXVwLTY+LmNvbHVtbiwubGFyZ2UtdXAtNj4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjE2LjY2NjY3JX0ubGFyZ2UtdXAtNj4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwubGFyZ2UtdXAtNj4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0ubGFyZ2UtdXAtNj4uY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLC5sYXJnZS11cC02Pi5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpe2NsZWFyOmJvdGh9LmxhcmdlLXVwLTY+LmNvbHVtbjpsYXN0LWNoaWxkLC5sYXJnZS11cC02Pi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0ubGFyZ2UtdXAtNz4uY29sdW1uLC5sYXJnZS11cC03Pi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MTQuMjg1NzElfS5sYXJnZS11cC03Pi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC5sYXJnZS11cC03Pi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS5sYXJnZS11cC03Pi5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksLmxhcmdlLXVwLTc+LmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSl7Y2xlYXI6Ym90aH0ubGFyZ2UtdXAtNz4uY29sdW1uOmxhc3QtY2hpbGQsLmxhcmdlLXVwLTc+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS5sYXJnZS11cC04Pi5jb2x1bW4sLmxhcmdlLXVwLTg+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoxMi41JX0ubGFyZ2UtdXAtOD4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwubGFyZ2UtdXAtOD4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0ubGFyZ2UtdXAtOD4uY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLC5sYXJnZS11cC04Pi5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpe2NsZWFyOmJvdGh9LmxhcmdlLXVwLTg+LmNvbHVtbjpsYXN0LWNoaWxkLC5sYXJnZS11cC04Pi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0ubGFyZ2UtY29sbGFwc2U+LmNvbHVtbiwubGFyZ2UtY29sbGFwc2U+LmNvbHVtbnN7cGFkZGluZy1yaWdodDowO3BhZGRpbmctbGVmdDowfS5sYXJnZS1jb2xsYXBzZSAucm93e21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9LmV4cGFuZGVkLnJvdyAubGFyZ2UtY29sbGFwc2Uucm93e21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9LmxhcmdlLXVuY29sbGFwc2U+LmNvbHVtbiwubGFyZ2UtdW5jb2xsYXBzZT4uY29sdW1uc3twYWRkaW5nLXJpZ2h0Oi45Mzc1cmVtO3BhZGRpbmctbGVmdDouOTM3NXJlbX0ubGFyZ2UtY2VudGVyZWR7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0b30ubGFyZ2UtY2VudGVyZWQsLmxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7ZmxvYXQ6bm9uZTtjbGVhcjpib3RofS5sYXJnZS11bmNlbnRlcmVkLC5sYXJnZS1wdXNoLTAsLmxhcmdlLXB1bGwtMHtwb3NpdGlvbjpzdGF0aWM7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0ubGFyZ2UtdW5jZW50ZXJlZCwubGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5sYXJnZS1wdXNoLTAsLmxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5sYXJnZS1wdWxsLTAsLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpe2Zsb2F0OmxlZnQ7Y2xlYXI6bm9uZX0ubGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwubGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7ZmxvYXQ6cmlnaHR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pey54bGFyZ2UtMXt3aWR0aDo4LjMzMzMzJX0ueGxhcmdlLXB1c2gtMXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjguMzMzMzMlfS54bGFyZ2UtcHVsbC0xe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTguMzMzMzMlfS54bGFyZ2Utb2Zmc2V0LTB7bWFyZ2luLWxlZnQ6MCV9LnhsYXJnZS0ye3dpZHRoOjE2LjY2NjY3JX0ueGxhcmdlLXB1c2gtMntwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjE2LjY2NjY3JX0ueGxhcmdlLXB1bGwtMntwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0Oi0xNi42NjY2NyV9LnhsYXJnZS1vZmZzZXQtMXttYXJnaW4tbGVmdDo4LjMzMzMzJX0ueGxhcmdlLTN7d2lkdGg6MjUlfS54bGFyZ2UtcHVzaC0ze3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MjUlfS54bGFyZ2UtcHVsbC0ze3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTI1JX0ueGxhcmdlLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY3JX0ueGxhcmdlLTR7d2lkdGg6MzMuMzMzMzMlfS54bGFyZ2UtcHVzaC00e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6MzMuMzMzMzMlfS54bGFyZ2UtcHVsbC00e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTMzLjMzMzMzJX0ueGxhcmdlLW9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0ueGxhcmdlLTV7d2lkdGg6NDEuNjY2NjclfS54bGFyZ2UtcHVzaC01e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NDEuNjY2NjclfS54bGFyZ2UtcHVsbC01e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTQxLjY2NjY3JX0ueGxhcmdlLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzJX0ueGxhcmdlLTZ7d2lkdGg6NTAlfS54bGFyZ2UtcHVzaC02e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NTAlfS54bGFyZ2UtcHVsbC02e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTUwJX0ueGxhcmdlLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY3JX0ueGxhcmdlLTd7d2lkdGg6NTguMzMzMzMlfS54bGFyZ2UtcHVzaC03e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NTguMzMzMzMlfS54bGFyZ2UtcHVsbC03e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTU4LjMzMzMzJX0ueGxhcmdlLW9mZnNldC02e21hcmdpbi1sZWZ0OjUwJX0ueGxhcmdlLTh7d2lkdGg6NjYuNjY2NjclfS54bGFyZ2UtcHVzaC04e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NjYuNjY2NjclfS54bGFyZ2UtcHVsbC04e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTY2LjY2NjY3JX0ueGxhcmdlLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzJX0ueGxhcmdlLTl7d2lkdGg6NzUlfS54bGFyZ2UtcHVzaC05e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6NzUlfS54bGFyZ2UtcHVsbC05e3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTc1JX0ueGxhcmdlLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY3JX0ueGxhcmdlLTEwe3dpZHRoOjgzLjMzMzMzJX0ueGxhcmdlLXB1c2gtMTB7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo4My4zMzMzMyV9LnhsYXJnZS1wdWxsLTEwe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTgzLjMzMzMzJX0ueGxhcmdlLW9mZnNldC05e21hcmdpbi1sZWZ0Ojc1JX0ueGxhcmdlLTExe3dpZHRoOjkxLjY2NjY3JX0ueGxhcmdlLXB1c2gtMTF7cG9zaXRpb246cmVsYXRpdmU7bGVmdDo5MS42NjY2NyV9LnhsYXJnZS1wdWxsLTExe3Bvc2l0aW9uOnJlbGF0aXZlO2xlZnQ6LTkxLjY2NjY3JX0ueGxhcmdlLW9mZnNldC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMyV9LnhsYXJnZS0xMnt3aWR0aDoxMDAlfS54bGFyZ2Utb2Zmc2V0LTExe21hcmdpbi1sZWZ0OjkxLjY2NjY3JX0ueGxhcmdlLXVwLTE+LmNvbHVtbiwueGxhcmdlLXVwLTE+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoxMDAlfS54bGFyZ2UtdXAtMT4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwueGxhcmdlLXVwLTE+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LnhsYXJnZS11cC0xPi5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksLnhsYXJnZS11cC0xPi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpe2NsZWFyOmJvdGh9LnhsYXJnZS11cC0xPi5jb2x1bW46bGFzdC1jaGlsZCwueGxhcmdlLXVwLTE+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS54bGFyZ2UtdXAtMj4uY29sdW1uLC54bGFyZ2UtdXAtMj4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjUwJX0ueGxhcmdlLXVwLTI+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLnhsYXJnZS11cC0yPi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS54bGFyZ2UtdXAtMj4uY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLC54bGFyZ2UtdXAtMj4uY29sdW1uczpudGgtb2YtdHlwZSgybisxKXtjbGVhcjpib3RofS54bGFyZ2UtdXAtMj4uY29sdW1uOmxhc3QtY2hpbGQsLnhsYXJnZS11cC0yPi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0ueGxhcmdlLXVwLTM+LmNvbHVtbiwueGxhcmdlLXVwLTM+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDozMy4zMzMzMyV9LnhsYXJnZS11cC0zPi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC54bGFyZ2UtdXAtMz4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0ueGxhcmdlLXVwLTM+LmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwueGxhcmdlLXVwLTM+LmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSl7Y2xlYXI6Ym90aH0ueGxhcmdlLXVwLTM+LmNvbHVtbjpsYXN0LWNoaWxkLC54bGFyZ2UtdXAtMz4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LnhsYXJnZS11cC00Pi5jb2x1bW4sLnhsYXJnZS11cC00Pi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MjUlfS54bGFyZ2UtdXAtND4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwueGxhcmdlLXVwLTQ+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LnhsYXJnZS11cC00Pi5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksLnhsYXJnZS11cC00Pi5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpe2NsZWFyOmJvdGh9LnhsYXJnZS11cC00Pi5jb2x1bW46bGFzdC1jaGlsZCwueGxhcmdlLXVwLTQ+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS54bGFyZ2UtdXAtNT4uY29sdW1uLC54bGFyZ2UtdXAtNT4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjIwJX0ueGxhcmdlLXVwLTU+LmNvbHVtbjpudGgtb2YtdHlwZSgxbiksLnhsYXJnZS11cC01Pi5jb2x1bW5zOm50aC1vZi10eXBlKDFuKXtjbGVhcjpub25lfS54bGFyZ2UtdXAtNT4uY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLC54bGFyZ2UtdXAtNT4uY29sdW1uczpudGgtb2YtdHlwZSg1bisxKXtjbGVhcjpib3RofS54bGFyZ2UtdXAtNT4uY29sdW1uOmxhc3QtY2hpbGQsLnhsYXJnZS11cC01Pi5jb2x1bW5zOmxhc3QtY2hpbGR7ZmxvYXQ6bGVmdH0ueGxhcmdlLXVwLTY+LmNvbHVtbiwueGxhcmdlLXVwLTY+LmNvbHVtbnN7ZmxvYXQ6bGVmdDt3aWR0aDoxNi42NjY2NyV9LnhsYXJnZS11cC02Pi5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLC54bGFyZ2UtdXAtNj4uY29sdW1uczpudGgtb2YtdHlwZSgxbil7Y2xlYXI6bm9uZX0ueGxhcmdlLXVwLTY+LmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwueGxhcmdlLXVwLTY+LmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSl7Y2xlYXI6Ym90aH0ueGxhcmdlLXVwLTY+LmNvbHVtbjpsYXN0LWNoaWxkLC54bGFyZ2UtdXAtNj4uY29sdW1uczpsYXN0LWNoaWxke2Zsb2F0OmxlZnR9LnhsYXJnZS11cC03Pi5jb2x1bW4sLnhsYXJnZS11cC03Pi5jb2x1bW5ze2Zsb2F0OmxlZnQ7d2lkdGg6MTQuMjg1NzElfS54bGFyZ2UtdXAtNz4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwueGxhcmdlLXVwLTc+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LnhsYXJnZS11cC03Pi5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksLnhsYXJnZS11cC03Pi5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpe2NsZWFyOmJvdGh9LnhsYXJnZS11cC03Pi5jb2x1bW46bGFzdC1jaGlsZCwueGxhcmdlLXVwLTc+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS54bGFyZ2UtdXAtOD4uY29sdW1uLC54bGFyZ2UtdXAtOD4uY29sdW1uc3tmbG9hdDpsZWZ0O3dpZHRoOjEyLjUlfS54bGFyZ2UtdXAtOD4uY29sdW1uOm50aC1vZi10eXBlKDFuKSwueGxhcmdlLXVwLTg+LmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pe2NsZWFyOm5vbmV9LnhsYXJnZS11cC04Pi5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksLnhsYXJnZS11cC04Pi5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpe2NsZWFyOmJvdGh9LnhsYXJnZS11cC04Pi5jb2x1bW46bGFzdC1jaGlsZCwueGxhcmdlLXVwLTg+LmNvbHVtbnM6bGFzdC1jaGlsZHtmbG9hdDpsZWZ0fS54bGFyZ2UtY29sbGFwc2U+LmNvbHVtbiwueGxhcmdlLWNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0ueGxhcmdlLWNvbGxhcHNlIC5yb3d7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uZXhwYW5kZWQucm93IC54bGFyZ2UtY29sbGFwc2Uucm93e21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9LnhsYXJnZS11bmNvbGxhcHNlPi5jb2x1bW4sLnhsYXJnZS11bmNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6LjkzNzVyZW07cGFkZGluZy1sZWZ0Oi45Mzc1cmVtfS54bGFyZ2UtY2VudGVyZWR7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0b30ueGxhcmdlLWNlbnRlcmVkLC54bGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtmbG9hdDpub25lO2NsZWFyOmJvdGh9LnhsYXJnZS11bmNlbnRlcmVkLC54bGFyZ2UtcHVzaC0wLC54bGFyZ2UtcHVsbC0we3Bvc2l0aW9uOnN0YXRpYzttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS54bGFyZ2UtdW5jZW50ZXJlZCwueGxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwueGxhcmdlLXB1c2gtMCwueGxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC54bGFyZ2UtcHVsbC0wLC54bGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCl7ZmxvYXQ6bGVmdDtjbGVhcjpub25lfS54bGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLC54bGFyZ2UtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksLnhsYXJnZS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKXtmbG9hdDpyaWdodH19LmNvbHVtbi1ibG9ja3ttYXJnaW4tYm90dG9tOjEuMjVyZW19LmNvbHVtbi1ibG9jaz46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5jb2x1bW4tYmxvY2t7bWFyZ2luLWJvdHRvbToxLjg3NXJlbX0uY29sdW1uLWJsb2NrPjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH19ZGl2LGRsLGR0LGRkLHVsLG9sLGxpLGgxLGgyLGgzLGg0LGg1LGg2LHByZSxmb3JtLHAsYmxvY2txdW90ZSx0aCx0ZHttYXJnaW46MDtwYWRkaW5nOjB9cHttYXJnaW4tYm90dG9tOjFyZW07Zm9udC1zaXplOmluaGVyaXQ7bGluZS1oZWlnaHQ6MS42O3RleHQtcmVuZGVyaW5nOm9wdGltaXplTGVnaWJpbGl0eX1lbSxpe2ZvbnQtc3R5bGU6aXRhbGljO2xpbmUtaGVpZ2h0OmluaGVyaXR9c3Ryb25nLGJ7Zm9udC13ZWlnaHQ6Ym9sZDtsaW5lLWhlaWdodDppbmhlcml0fXNtYWxse2ZvbnQtc2l6ZTo4MCU7bGluZS1oZWlnaHQ6aW5oZXJpdH1oMSwuaDEsaDIsLmgyLGgzLC5oMyxoNCwuaDQsaDUsLmg1LGg2LC5oNntmb250LWZhbWlseTpcIkhlbHZldGljYSBOZXVlXCIsSGVsdmV0aWNhLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtjb2xvcjppbmhlcml0O3RleHQtcmVuZGVyaW5nOm9wdGltaXplTGVnaWJpbGl0eX1oMSBzbWFsbCwuaDEgc21hbGwsaDIgc21hbGwsLmgyIHNtYWxsLGgzIHNtYWxsLC5oMyBzbWFsbCxoNCBzbWFsbCwuaDQgc21hbGwsaDUgc21hbGwsLmg1IHNtYWxsLGg2IHNtYWxsLC5oNiBzbWFsbHtsaW5lLWhlaWdodDowO2NvbG9yOmdyYXl9aDEsLmgxe2ZvbnQtc2l6ZTozLjc1cmVtO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouNXJlbX1oMiwuaDJ7Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MS40O21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOi41cmVtfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXtoMSwuaDF7Zm9udC1zaXplOjMuNzVyZW19aDIsLmgye2ZvbnQtc2l6ZToxLjI1cmVtfX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7aDEsLmgxe2ZvbnQtc2l6ZTo4cmVtfWgyLC5oMntmb250LXNpemU6Mi41cmVtfX1he2xpbmUtaGVpZ2h0OmluaGVyaXQ7Y29sb3I6I2QyZGM2YTt0ZXh0LWRlY29yYXRpb246bm9uZTtjdXJzb3I6cG9pbnRlcn1hOmhvdmVyLGE6Zm9jdXN7Y29sb3I6I2M3ZDM0NX1hIGltZ3tib3JkZXI6MH1ocntjbGVhcjpib3RoO21heC13aWR0aDo3OS4xMjVyZW07aGVpZ2h0OjA7bWFyZ2luOjEuMjVyZW0gYXV0bztib3JkZXItdG9wOjA7Ym9yZGVyLXJpZ2h0OjA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgZ3JheTtib3JkZXItbGVmdDowfXVsLG9sLGRse21hcmdpbi1ib3R0b206MXJlbTtsaXN0LXN0eWxlLXBvc2l0aW9uOm91dHNpZGU7bGluZS1oZWlnaHQ6MS42fWxpe2ZvbnQtc2l6ZTppbmhlcml0fXVse21hcmdpbi1sZWZ0OjEuMjVyZW07bGlzdC1zdHlsZS10eXBlOmRpc2N9b2x7bWFyZ2luLWxlZnQ6MS4yNXJlbX11bCB1bCxvbCB1bCx1bCBvbCxvbCBvbHttYXJnaW4tbGVmdDoxLjI1cmVtO21hcmdpbi1ib3R0b206MH1kbHttYXJnaW4tYm90dG9tOjFyZW19ZGwgZHR7bWFyZ2luLWJvdHRvbTouM3JlbTtmb250LXdlaWdodDpib2xkfWJsb2NrcXVvdGV7bWFyZ2luOjAgMCAxcmVtO3BhZGRpbmc6LjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtib3JkZXItbGVmdDoxcHggc29saWQgZ3JheX1ibG9ja3F1b3RlLGJsb2NrcXVvdGUgcHtsaW5lLWhlaWdodDoxLjY7Y29sb3I6IzRjNGM0Y31jaXRle2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOiM0YzRjNGN9Y2l0ZTpiZWZvcmV7Y29udGVudDpcIuKAlCBcIn1hYmJyLGFiYnJbdGl0bGVde2JvcmRlci1ib3R0b206MXB4IGRvdHRlZCAjMDAwO2N1cnNvcjpoZWxwO3RleHQtZGVjb3JhdGlvbjpub25lfWZpZ3VyZXttYXJnaW46MH1jb2Rle3BhZGRpbmc6LjEyNXJlbSAuMzEyNXJlbSAuMDYyNXJlbTtib3JkZXI6MXB4IHNvbGlkIGdyYXk7YmFja2dyb3VuZC1jb2xvcjpncmF5O2ZvbnQtZmFtaWx5OkNvbnNvbGFzLFwiTGliZXJhdGlvbiBNb25vXCIsQ291cmllcixtb25vc3BhY2U7Zm9udC13ZWlnaHQ6bm9ybWFsO2NvbG9yOiMwMDB9a2Jke21hcmdpbjowO3BhZGRpbmc6LjEyNXJlbSAuMjVyZW0gMDtiYWNrZ3JvdW5kLWNvbG9yOmdyYXk7Zm9udC1mYW1pbHk6Q29uc29sYXMsXCJMaWJlcmF0aW9uIE1vbm9cIixDb3VyaWVyLG1vbm9zcGFjZTtjb2xvcjojMDAwfS5zdWJoZWFkZXJ7bWFyZ2luLXRvcDouMnJlbTttYXJnaW4tYm90dG9tOi41cmVtO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsaW5lLWhlaWdodDoxLjQ7Y29sb3I6IzRjNGM0Y30ubGVhZHtmb250LXNpemU6MTI1JTtsaW5lLWhlaWdodDoxLjZ9LnN0YXR7Zm9udC1zaXplOjIuNXJlbTtsaW5lLWhlaWdodDoxfXArLnN0YXR7bWFyZ2luLXRvcDotMXJlbX11bC5uby1idWxsZXQsb2wubm8tYnVsbGV0e21hcmdpbi1sZWZ0OjA7bGlzdC1zdHlsZTpub25lfS50ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS50ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LnRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS50ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVkaXVtLXRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9Lm1lZGl1bS10ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9Lm1lZGl1bS10ZXh0LWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0ubWVkaXVtLXRleHQtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnl9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsubGFyZ2UtdGV4dC1sZWZ0e3RleHQtYWxpZ246bGVmdH0ubGFyZ2UtdGV4dC1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0fS5sYXJnZS10ZXh0LWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0ubGFyZ2UtdGV4dC1qdXN0aWZ5e3RleHQtYWxpZ246anVzdGlmeX19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSl7LnhsYXJnZS10ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS54bGFyZ2UtdGV4dC1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0fS54bGFyZ2UtdGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnhsYXJnZS10ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5fX0uc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9QG1lZGlhIHByaW50eyp7YmFja2dyb3VuZDp0cmFuc3BhcmVudCAhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O2NvbG9yOmJsYWNrICFpbXBvcnRhbnQ7dGV4dC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50fS5zaG93LWZvci1wcmludHtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnR9LmhpZGUtZm9yLXByaW50e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fXRhYmxlLnNob3ctZm9yLXByaW50e2Rpc3BsYXk6dGFibGUgIWltcG9ydGFudH10aGVhZC5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50fXRib2R5LnNob3ctZm9yLXByaW50e2Rpc3BsYXk6dGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnR9dHIuc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTp0YWJsZS1yb3cgIWltcG9ydGFudH10ZC5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlLWNlbGwgIWltcG9ydGFudH10aC5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlLWNlbGwgIWltcG9ydGFudH1hLGE6dmlzaXRlZHt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWFbaHJlZl06YWZ0ZXJ7Y29udGVudDpcIiAoXCIgYXR0cihocmVmKSBcIilcIn0uaXIgYTphZnRlcixhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLGFbaHJlZl49JyMnXTphZnRlcntjb250ZW50OicnfWFiYnJbdGl0bGVdOmFmdGVye2NvbnRlbnQ6XCIgKFwiIGF0dHIodGl0bGUpIFwiKVwifXByZSxibG9ja3F1b3Rle2JvcmRlcjoxcHggc29saWQgIzRjNGM0YztwYWdlLWJyZWFrLWluc2lkZTphdm9pZH10aGVhZHtkaXNwbGF5OnRhYmxlLWhlYWRlci1ncm91cH10cixpbWd7cGFnZS1icmVhay1pbnNpZGU6YXZvaWR9aW1ne21heC13aWR0aDoxMDAlICFpbXBvcnRhbnR9QHBhZ2V7bWFyZ2luOjAuNWNtfXAsaDIsaDN7b3JwaGFuczozO3dpZG93czozfWgyLGgze3BhZ2UtYnJlYWstYWZ0ZXI6YXZvaWR9LnByaW50LWJyZWFrLWluc2lkZXtwYWdlLWJyZWFrLWluc2lkZTphdXRvfX0uYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW46MCAwIDFyZW0gMDtwYWRkaW5nOjAuODVlbSAxZW07Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LGNvbG9yIDAuMjVzIGVhc2Utb3V0O2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjAuOXJlbTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtsaW5lLWhlaWdodDoxO3RleHQtYWxpZ246Y2VudGVyO2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6I2QyZGM2YTtjb2xvcjojZmZmfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9ue291dGxpbmU6MH0uYnV0dG9uOmhvdmVyLC5idXR0b246Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojYzZkMzQyO2NvbG9yOiNmZmZ9LmJ1dHRvbi50aW55e2ZvbnQtc2l6ZTouNnJlbX0uYnV0dG9uLnNtYWxse2ZvbnQtc2l6ZTouNzVyZW19LmJ1dHRvbi5sYXJnZXtmb250LXNpemU6MS4yNXJlbX0uYnV0dG9uLmV4cGFuZGVke2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5idXR0b24ucHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiNkMmRjNmE7Y29sb3I6IzAwMH0uYnV0dG9uLnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5wcmltYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2MyZDAzNTtjb2xvcjojMDAwfS5idXR0b24uc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6IzAwMDtjb2xvcjojZmZmfS5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uc2Vjb25kYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzAwMDtjb2xvcjojZmZmfS5idXR0b24uc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiMzYWRiNzY7Y29sb3I6IzAwMH0uYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsLmJ1dHRvbi5zdWNjZXNzOmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzIyYmI1Yjtjb2xvcjojMDAwfS5idXR0b24ud2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmFlMDA7Y29sb3I6IzAwMH0uYnV0dG9uLndhcm5pbmc6aG92ZXIsLmJ1dHRvbi53YXJuaW5nOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2NjOGIwMDtjb2xvcjojMDAwfS5idXR0b24uYWxlcnR7YmFja2dyb3VuZC1jb2xvcjojY2M0YjM3O2NvbG9yOiMwMDB9LmJ1dHRvbi5hbGVydDpob3ZlciwuYnV0dG9uLmFsZXJ0OmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2E1M2IyYTtjb2xvcjojMDAwfS5idXR0b24uZGlzYWJsZWQsLmJ1dHRvbltkaXNhYmxlZF17b3BhY2l0eTouMjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idXR0b24uZGlzYWJsZWQsLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwuYnV0dG9uLmRpc2FibGVkOmZvY3VzLC5idXR0b25bZGlzYWJsZWRdLC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLC5idXR0b25bZGlzYWJsZWRdOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2QyZGM2YTtjb2xvcjojZmZmfS5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5e29wYWNpdHk6LjI1O2N1cnNvcjpub3QtYWxsb3dlZH0uYnV0dG9uLmRpc2FibGVkLnByaW1hcnksLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNkMmRjNmE7Y29sb3I6IzAwMH0uYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnl7b3BhY2l0eTouMjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzAwMDtjb2xvcjojZmZmfS5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNze29wYWNpdHk6LjI1O2N1cnNvcjpub3QtYWxsb3dlZH0uYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiMzYWRiNzY7Y29sb3I6IzAwMH0uYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZ3tvcGFjaXR5Oi4yNTtjdXJzb3I6bm90LWFsbG93ZWR9LmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZmZhZTAwO2NvbG9yOiMwMDB9LmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwuYnV0dG9uW2Rpc2FibGVkXS5hbGVydHtvcGFjaXR5Oi4yNTtjdXJzb3I6bm90LWFsbG93ZWR9LmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmhvdmVyLC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojY2M0YjM3O2NvbG9yOiMwMDB9LmJ1dHRvbi5ob2xsb3d7Ym9yZGVyOjFweCBzb2xpZCAjZDJkYzZhO2NvbG9yOiNkMmRjNmF9LmJ1dHRvbi5ob2xsb3csLmJ1dHRvbi5ob2xsb3c6aG92ZXIsLmJ1dHRvbi5ob2xsb3c6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uaG9sbG93OmhvdmVyLC5idXR0b24uaG9sbG93OmZvY3Vze2JvcmRlci1jb2xvcjojN2I4NDFmO2NvbG9yOiM3Yjg0MWZ9LmJ1dHRvbi5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5ob2xsb3c6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICNkMmRjNmE7Y29sb3I6I2QyZGM2YX0uYnV0dG9uLmhvbGxvdy5wcmltYXJ5e2JvcmRlcjoxcHggc29saWQgI2QyZGM2YTtjb2xvcjojZDJkYzZhfS5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c3tib3JkZXItY29sb3I6IzdiODQxZjtjb2xvcjojN2I4NDFmfS5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICNkMmRjNmE7Y29sb3I6I2QyZGM2YX0uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnl7Ym9yZGVyOjFweCBzb2xpZCAjMDAwO2NvbG9yOiMwMDB9LmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c3tib3JkZXItY29sb3I6IzAwMDtjb2xvcjojMDAwfS5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRde2JvcmRlcjoxcHggc29saWQgIzAwMDtjb2xvcjojMDAwfS5idXR0b24uaG9sbG93LnN1Y2Nlc3N7Ym9yZGVyOjFweCBzb2xpZCAjM2FkYjc2O2NvbG9yOiMzYWRiNzZ9LmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3Vze2JvcmRlci1jb2xvcjojMTU3NTM5O2NvbG9yOiMxNTc1Mzl9LmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRde2JvcmRlcjoxcHggc29saWQgIzNhZGI3Njtjb2xvcjojM2FkYjc2fS5idXR0b24uaG9sbG93Lndhcm5pbmd7Ym9yZGVyOjFweCBzb2xpZCAjZmZhZTAwO2NvbG9yOiNmZmFlMDB9LmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3Vze2JvcmRlci1jb2xvcjojODA1NzAwO2NvbG9yOiM4MDU3MDB9LmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRde2JvcmRlcjoxcHggc29saWQgI2ZmYWUwMDtjb2xvcjojZmZhZTAwfS5idXR0b24uaG9sbG93LmFsZXJ0e2JvcmRlcjoxcHggc29saWQgI2NjNGIzNztjb2xvcjojY2M0YjM3fS5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3Vze2JvcmRlci1jb2xvcjojNjcyNTFhO2NvbG9yOiM2NzI1MWF9LmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICNjYzRiMzc7Y29sb3I6I2NjNGIzN30uYnV0dG9uLmNsZWFye2JvcmRlcjoxcHggc29saWQgI2QyZGM2YTtjb2xvcjojZDJkYzZhfS5idXR0b24uY2xlYXIsLmJ1dHRvbi5jbGVhcjpob3ZlciwuYnV0dG9uLmNsZWFyOmZvY3Vze2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uYnV0dG9uLmNsZWFyOmhvdmVyLC5idXR0b24uY2xlYXI6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM3Yjg0MWY7Y29sb3I6IzdiODQxZn0uYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyOjFweCBzb2xpZCAjZDJkYzZhO2NvbG9yOiNkMmRjNmF9LmJ1dHRvbi5jbGVhciwuYnV0dG9uLmNsZWFyLmRpc2FibGVkLC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXI6aG92ZXIsLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyOmZvY3VzLC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uY2xlYXIucHJpbWFyeXtib3JkZXI6MXB4IHNvbGlkICNkMmRjNmE7Y29sb3I6I2QyZGM2YX0uYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3Vze2JvcmRlci1jb2xvcjojN2I4NDFmO2NvbG9yOiM3Yjg0MWZ9LmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyOjFweCBzb2xpZCAjZDJkYzZhO2NvbG9yOiNkMmRjNmF9LmJ1dHRvbi5jbGVhci5wcmltYXJ5LC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uY2xlYXIuc2Vjb25kYXJ5e2JvcmRlcjoxcHggc29saWQgIzAwMDtjb2xvcjojMDAwfS5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3Vze2JvcmRlci1jb2xvcjojMDAwO2NvbG9yOiMwMDB9LmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICMwMDA7Y29sb3I6IzAwMH0uYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci5zdWNjZXNze2JvcmRlcjoxcHggc29saWQgIzNhZGI3Njtjb2xvcjojM2FkYjc2fS5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXN7Ym9yZGVyLWNvbG9yOiMxNTc1Mzk7Y29sb3I6IzE1NzUzOX0uYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICMzYWRiNzY7Y29sb3I6IzNhZGI3Nn0uYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci53YXJuaW5ne2JvcmRlcjoxcHggc29saWQgI2ZmYWUwMDtjb2xvcjojZmZhZTAwfS5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM4MDU3MDA7Y29sb3I6IzgwNTcwMH0uYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXXtib3JkZXI6MXB4IHNvbGlkICNmZmFlMDA7Y29sb3I6I2ZmYWUwMH0uYnV0dG9uLmNsZWFyLndhcm5pbmcsLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5jbGVhci5hbGVydHtib3JkZXI6MXB4IHNvbGlkICNjYzRiMzc7Y29sb3I6I2NjNGIzN30uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM2NzI1MWE7Y29sb3I6IzY3MjUxYX0uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyOjFweCBzb2xpZCAjY2M0YjM3O2NvbG9yOiNjYzRiMzd9LmJ1dHRvbi5jbGVhci5hbGVydCwuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24uZHJvcGRvd246OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgLjRlbTtjb250ZW50OicnO2JvcmRlci1ib3R0b20td2lkdGg6MDtib3JkZXItdG9wLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowLjRlbTtkaXNwbGF5OmlubGluZS1ibG9jaztmbG9hdDpyaWdodDttYXJnaW4tbGVmdDoxZW19LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVye2JvcmRlci10b3AtY29sb3I6I2QyZGM2YX0uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciwuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVye2JvcmRlci10b3AtY29sb3I6I2QyZGM2YX0uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlcntib3JkZXItdG9wLWNvbG9yOiMwMDB9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIsLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlcntib3JkZXItdG9wLWNvbG9yOiMzYWRiNzZ9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlcntib3JkZXItdG9wLWNvbG9yOiNmZmFlMDB9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVye2JvcmRlci10b3AtY29sb3I6I2NjNGIzN30uYnV0dG9uLmFycm93LW9ubHk6OmFmdGVye3RvcDotMC4xZW07ZmxvYXQ6bm9uZTttYXJnaW4tbGVmdDowfWEuYnV0dG9uOmhvdmVyLGEuYnV0dG9uOmZvY3Vze3RleHQtZGVjb3JhdGlvbjpub25lfVt0eXBlPSd0ZXh0J10sW3R5cGU9J3Bhc3N3b3JkJ10sW3R5cGU9J2RhdGUnXSxbdHlwZT0nZGF0ZXRpbWUnXSxbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxbdHlwZT0nbW9udGgnXSxbdHlwZT0nd2VlayddLFt0eXBlPSdlbWFpbCddLFt0eXBlPSdudW1iZXInXSxbdHlwZT0nc2VhcmNoJ10sW3R5cGU9J3RlbCddLFt0eXBlPSd0aW1lJ10sW3R5cGU9J3VybCddLFt0eXBlPSdjb2xvciddLHRleHRhcmVhe2Rpc3BsYXk6YmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOjEwMCU7aGVpZ2h0OjIuNDM3NXJlbTttYXJnaW46MCAwIDFyZW07cGFkZGluZzouNXJlbTtib3JkZXI6MXB4IHNvbGlkIGdyYXk7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93Omluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6MXJlbTtmb250LXdlaWdodDpub3JtYWw7bGluZS1oZWlnaHQ6MS41O2NvbG9yOiMwMDA7dHJhbnNpdGlvbjpib3gtc2hhZG93IDAuNXMsYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O2FwcGVhcmFuY2U6bm9uZX1bdHlwZT0ndGV4dCddOmZvY3VzLFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLFt0eXBlPSdkYXRlJ106Zm9jdXMsW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsW3R5cGU9J21vbnRoJ106Zm9jdXMsW3R5cGU9J3dlZWsnXTpmb2N1cyxbdHlwZT0nZW1haWwnXTpmb2N1cyxbdHlwZT0nbnVtYmVyJ106Zm9jdXMsW3R5cGU9J3NlYXJjaCddOmZvY3VzLFt0eXBlPSd0ZWwnXTpmb2N1cyxbdHlwZT0ndGltZSddOmZvY3VzLFt0eXBlPSd1cmwnXTpmb2N1cyxbdHlwZT0nY29sb3InXTpmb2N1cyx0ZXh0YXJlYTpmb2N1c3tvdXRsaW5lOm5vbmU7Ym9yZGVyOjFweCBzb2xpZCAjNGM0YzRjO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93OjAgMCA1cHggZ3JheTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgMC41cyxib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXR9dGV4dGFyZWF7bWF4LXdpZHRoOjEwMCV9dGV4dGFyZWFbcm93c117aGVpZ2h0OmF1dG99aW5wdXQ6ZGlzYWJsZWQsaW5wdXRbcmVhZG9ubHldLHRleHRhcmVhOmRpc2FibGVkLHRleHRhcmVhW3JlYWRvbmx5XXtiYWNrZ3JvdW5kLWNvbG9yOmdyYXk7Y3Vyc29yOm5vdC1hbGxvd2VkfVt0eXBlPSdzdWJtaXQnXSxbdHlwZT0nYnV0dG9uJ117YXBwZWFyYW5jZTpub25lO2JvcmRlci1yYWRpdXM6MH1pbnB1dFt0eXBlPSdzZWFyY2gnXXtib3gtc2l6aW5nOmJvcmRlci1ib3h9OjpwbGFjZWhvbGRlcntjb2xvcjpncmF5fVt0eXBlPSdmaWxlJ10sW3R5cGU9J2NoZWNrYm94J10sW3R5cGU9J3JhZGlvJ117bWFyZ2luOjAgMCAxcmVtfVt0eXBlPSdjaGVja2JveCddK2xhYmVsLFt0eXBlPSdyYWRpbyddK2xhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO21hcmdpbi1sZWZ0Oi41cmVtO21hcmdpbi1yaWdodDoxcmVtO21hcmdpbi1ib3R0b206MH1bdHlwZT0nY2hlY2tib3gnXStsYWJlbFtmb3JdLFt0eXBlPSdyYWRpbyddK2xhYmVsW2Zvcl17Y3Vyc29yOnBvaW50ZXJ9bGFiZWw+W3R5cGU9J2NoZWNrYm94J10sbGFiZWw+W3R5cGU9J3JhZGlvJ117bWFyZ2luLXJpZ2h0Oi41cmVtfVt0eXBlPSdmaWxlJ117d2lkdGg6MTAwJX1sYWJlbHtkaXNwbGF5OmJsb2NrO21hcmdpbjowO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsaW5lLWhlaWdodDoxLjg7Y29sb3I6IzAwMH1sYWJlbC5taWRkbGV7bWFyZ2luOjAgMCAxcmVtO3BhZGRpbmc6LjU2MjVyZW0gMH0uaGVscC10ZXh0e21hcmdpbi10b3A6LS41cmVtO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXN0eWxlOml0YWxpYztjb2xvcjojMDAwfS5pbnB1dC1ncm91cHtkaXNwbGF5OmZsZXg7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjFyZW07YWxpZ24taXRlbXM6c3RyZXRjaH0uaW5wdXQtZ3JvdXA+OmZpcnN0LWNoaWxkLC5pbnB1dC1ncm91cD46Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uPip7Ym9yZGVyLXJhZGl1czowIDAgMCAwfS5pbnB1dC1ncm91cD46bGFzdC1jaGlsZCwuaW5wdXQtZ3JvdXA+Omxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uPip7Ym9yZGVyLXJhZGl1czowIDAgMCAwfS5pbnB1dC1ncm91cC1sYWJlbCwuaW5wdXQtZ3JvdXAtZmllbGQsLmlucHV0LWdyb3VwLWJ1dHRvbiwuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCwuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbiwuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVse21hcmdpbjowO3doaXRlLXNwYWNlOm5vd3JhcH0uaW5wdXQtZ3JvdXAtbGFiZWx7cGFkZGluZzowIDFyZW07Ym9yZGVyOjFweCBzb2xpZCBncmF5O2JhY2tncm91bmQ6Z3JheTtjb2xvcjojMDAwO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDtkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0bzthbGlnbi1pdGVtczpjZW50ZXJ9LmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxke2JvcmRlci1yaWdodDowfS5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxke2JvcmRlci1sZWZ0OjB9LmlucHV0LWdyb3VwLWZpZWxke2JvcmRlci1yYWRpdXM6MDtmbGV4OjEgMSAwcHg7bWluLXdpZHRoOjB9LmlucHV0LWdyb3VwLWJ1dHRvbntwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjA7dGV4dC1hbGlnbjpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXg6MCAwIGF1dG99LmlucHV0LWdyb3VwLWJ1dHRvbiBhLC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbHthbGlnbi1zZWxmOnN0cmV0Y2g7aGVpZ2h0OmF1dG87cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO2ZvbnQtc2l6ZToxcmVtfWZpZWxkc2V0e21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MH1sZWdlbmR7bWF4LXdpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbTouNXJlbX0uZmllbGRzZXR7bWFyZ2luOjEuMTI1cmVtIDA7cGFkZGluZzoxLjI1cmVtO2JvcmRlcjoxcHggc29saWQgZ3JheX0uZmllbGRzZXQgbGVnZW5ke21hcmdpbjowO21hcmdpbi1sZWZ0Oi0uMTg3NXJlbTtwYWRkaW5nOjAgLjE4NzVyZW19c2VsZWN0e2hlaWdodDoyLjQzNzVyZW07bWFyZ2luOjAgMCAxcmVtO3BhZGRpbmc6LjVyZW07YXBwZWFyYW5jZTpub25lO2JvcmRlcjoxcHggc29saWQgZ3JheTtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6bm9ybWFsO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojMDAwO2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjg3NiwgNzYsIDc2JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO2JhY2tncm91bmQtb3JpZ2luOmNvbnRlbnQtYm94O2JhY2tncm91bmQtcG9zaXRpb246cmlnaHQgLTFyZW0gY2VudGVyO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6OXB4IDZweDtwYWRkaW5nLXJpZ2h0OjEuNXJlbTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgMC41cyxib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCl7c2VsZWN0e2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKX19c2VsZWN0OmZvY3Vze291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM0YzRjNGM7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JveC1zaGFkb3c6MCAwIDVweCBncmF5O3RyYW5zaXRpb246Ym94LXNoYWRvdyAwLjVzLGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dH1zZWxlY3Q6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjpncmF5O2N1cnNvcjpub3QtYWxsb3dlZH1zZWxlY3Q6Oi1tcy1leHBhbmR7ZGlzcGxheTpub25lfXNlbGVjdFttdWx0aXBsZV17aGVpZ2h0OmF1dG87YmFja2dyb3VuZC1pbWFnZTpub25lfS5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpe2JvcmRlci1jb2xvcjojY2M0YjM3O2JhY2tncm91bmQtY29sb3I6I2ZhZWRlYn0uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXJ7Y29sb3I6I2NjNGIzN30uaXMtaW52YWxpZC1sYWJlbHtjb2xvcjojY2M0YjM3fS5mb3JtLWVycm9ye2Rpc3BsYXk6bm9uZTttYXJnaW4tdG9wOi0uNXJlbTttYXJnaW4tYm90dG9tOjFyZW07Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDpib2xkO2NvbG9yOiNjYzRiMzd9LmZvcm0tZXJyb3IuaXMtdmlzaWJsZXtkaXNwbGF5OmJsb2NrfS5hY2NvcmRpb257bWFyZ2luLWxlZnQ6MDtiYWNrZ3JvdW5kOiNmZmY7bGlzdC1zdHlsZS10eXBlOm5vbmV9LmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZXtjdXJzb3I6bm90LWFsbG93ZWR9LmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkPjpmaXJzdC1jaGlsZHtib3JkZXItcmFkaXVzOjAgMCAwIDB9LmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQ+Omxhc3QtY2hpbGR7Ym9yZGVyLXJhZGl1czowIDAgMCAwfS5hY2NvcmRpb24tdGl0bGV7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjEuMjVyZW0gMXJlbTtib3JkZXI6MXB4IHNvbGlkIGdyYXk7Ym9yZGVyLWJvdHRvbTowO2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MTtjb2xvcjojZDJkYzZhfTpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKT4uYWNjb3JkaW9uLXRpdGxle2JvcmRlci1ib3R0b206MXB4IHNvbGlkIGdyYXk7Ym9yZGVyLXJhZGl1czowIDAgMCAwfS5hY2NvcmRpb24tdGl0bGU6aG92ZXIsLmFjY29yZGlvbi10aXRsZTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOmdyYXl9LmFjY29yZGlvbi10aXRsZTo6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7cmlnaHQ6MXJlbTttYXJnaW4tdG9wOi0wLjVyZW07Y29udGVudDonKyd9LmlzLWFjdGl2ZT4uYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmV7Y29udGVudDonXFwyMDEzJ30uYWNjb3JkaW9uLWNvbnRlbnR7ZGlzcGxheTpub25lO3BhZGRpbmc6MXJlbTtib3JkZXI6MXB4IHNvbGlkIGdyYXk7Ym9yZGVyLWJvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtjb2xvcjojMDAwfTpsYXN0LWNoaWxkPi5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206MXB4IHNvbGlkIGdyYXl9LmFjY29yZGlvbi1tZW51IGxpe3dpZHRoOjEwMCV9LmFjY29yZGlvbi1tZW51IGF7cGFkZGluZzowLjdyZW0gMXJlbX0uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51IGF7cGFkZGluZzowLjdyZW0gMXJlbX0uYWNjb3JkaW9uLW1lbnUgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudXttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDoxcmVtfS5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51e21hcmdpbi1yaWdodDoxcmVtO21hcmdpbi1sZWZ0OjB9LmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpPmF7cG9zaXRpb246cmVsYXRpdmV9LmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpPmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLWJvdHRvbS13aWR0aDowO2JvcmRlci10b3Atc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOiNkMmRjNmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTttYXJnaW4tdG9wOi0zcHg7cmlnaHQ6MXJlbX0uYWNjb3JkaW9uLW1lbnUuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50PmE6OmFmdGVye3JpZ2h0OjFyZW07bGVmdDphdXRvfS5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50PmE6OmFmdGVye3JpZ2h0OmF1dG87bGVmdDoxcmVtfS5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXT5hOjphZnRlcnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtLW9yaWdpbjo1MCUgNTAlfS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnR7cG9zaXRpb246cmVsYXRpdmV9Lmhhcy1zdWJtZW51LXRvZ2dsZT5he21hcmdpbi1yaWdodDo0MHB4fS5zdWJtZW51LXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7Y3Vyc29yOnBvaW50ZXJ9LnN1Ym1lbnUtdG9nZ2xlOjphZnRlcntkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IDZweDtjb250ZW50OicnO2JvcmRlci1ib3R0b20td2lkdGg6MDtib3JkZXItdG9wLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZDJkYzZhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3RvcDowO2JvdHRvbTowO21hcmdpbjphdXRvfS5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVye3RyYW5zZm9ybTpzY2FsZVkoLTEpO3RyYW5zZm9ybS1vcmlnaW46NTAlIDUwJX0uc3VibWVudS10b2dnbGUtdGV4dHtwb3NpdGlvbjphYnNvbHV0ZSAhaW1wb3J0YW50O3dpZHRoOjFweDtoZWlnaHQ6MXB4O3BhZGRpbmc6MDtvdmVyZmxvdzpoaWRkZW47Y2xpcDpyZWN0KDAsIDAsIDAsIDApO3doaXRlLXNwYWNlOm5vd3JhcDtib3JkZXI6MH0uYnV0dG9uLWdyb3Vwe21hcmdpbi1ib3R0b206MXJlbTtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOm5vd3JhcDthbGlnbi1pdGVtczpzdHJldGNofS5idXR0b24tZ3JvdXA6OmJlZm9yZSwuYnV0dG9uLWdyb3VwOjphZnRlcntkaXNwbGF5OnRhYmxlO2NvbnRlbnQ6JyAnO2ZsZXgtYmFzaXM6MDtvcmRlcjoxfS5idXR0b24tZ3JvdXA6OmFmdGVye2NsZWFyOmJvdGh9LmJ1dHRvbi1ncm91cCAuYnV0dG9ue21hcmdpbjowO21hcmdpbi1yaWdodDoxcHg7bWFyZ2luLWJvdHRvbToxcHg7Zm9udC1zaXplOjAuOXJlbTtmbGV4OjAgMCBhdXRvfS5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9ue2ZvbnQtc2l6ZTouNnJlbX0uYnV0dG9uLWdyb3VwLnNtYWxsIC5idXR0b257Zm9udC1zaXplOi43NXJlbX0uYnV0dG9uLWdyb3VwLmxhcmdlIC5idXR0b257Zm9udC1zaXplOjEuMjVyZW19LmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9ue2ZsZXg6MSAxIDBweH0uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiNkMmRjNmE7Y29sb3I6IzAwMH0uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpob3ZlciwuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNjMmQwMzU7Y29sb3I6IzAwMH0uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9ue2JhY2tncm91bmQtY29sb3I6IzAwMDtjb2xvcjojZmZmfS5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7Y29sb3I6I2ZmZn0uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiMzYWRiNzY7Y29sb3I6IzAwMH0uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiMyMmJiNWI7Y29sb3I6IzAwMH0uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiNmZmFlMDA7Y29sb3I6IzAwMH0uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpob3ZlciwuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNjYzhiMDA7Y29sb3I6IzAwMH0uYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b257YmFja2dyb3VuZC1jb2xvcjojY2M0YjM3O2NvbG9yOiMwMDB9LmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNhNTNiMmE7Y29sb3I6IzAwMH0uYnV0dG9uLWdyb3VwLnN0YWNrZWQsLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCwuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bXtmbGV4LXdyYXA6d3JhcH0uYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbiwuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbntmbGV4OjAgMCAxMDAlfS5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbiwuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24sLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbntmbGV4OjEgMSAwcHh9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbntmbGV4OjAgMCBhdXRvO21hcmdpbi1ib3R0b206MH19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b257ZmxleDowIDAgYXV0bzttYXJnaW4tYm90dG9tOjB9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pey5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWR7ZGlzcGxheTpibG9ja30uYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b257ZGlzcGxheTpibG9jazttYXJnaW4tcmlnaHQ6MH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSl7LmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWR7ZGlzcGxheTpibG9ja30uYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXJpZ2h0OjB9fS5tZW51e3BhZGRpbmc6MDttYXJnaW46MDtsaXN0LXN0eWxlOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaXtvdXRsaW5lOjB9Lm1lbnUgYSwubWVudSAuYnV0dG9ue2xpbmUtaGVpZ2h0OjE7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjAuN3JlbSAxcmVtfS5tZW51IGlucHV0LC5tZW51IHNlbGVjdCwubWVudSBhLC5tZW51IGJ1dHRvbnttYXJnaW4tYm90dG9tOjB9Lm1lbnUgaW5wdXR7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lm1lbnUsLm1lbnUuaG9yaXpvbnRhbHtmbGV4LXdyYXA6d3JhcDtmbGV4LWRpcmVjdGlvbjpyb3d9Lm1lbnUudmVydGljYWx7ZmxleC13cmFwOm5vd3JhcDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lm1lbnUuZXhwYW5kZWQgbGl7ZmxleDoxIDEgMHB4fS5tZW51LnNpbXBsZXthbGlnbi1pdGVtczpjZW50ZXJ9Lm1lbnUuc2ltcGxlIGxpK2xpe21hcmdpbi1sZWZ0OjFyZW19Lm1lbnUuc2ltcGxlIGF7cGFkZGluZzowfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVudS5tZWRpdW0taG9yaXpvbnRhbHtmbGV4LXdyYXA6d3JhcDtmbGV4LWRpcmVjdGlvbjpyb3d9Lm1lbnUubWVkaXVtLXZlcnRpY2Fse2ZsZXgtd3JhcDpub3dyYXA7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaXtmbGV4OjEgMSAwcHh9Lm1lbnUubWVkaXVtLXNpbXBsZSBsaXtmbGV4OjEgMSAwcHh9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsubWVudS5sYXJnZS1ob3Jpem9udGFse2ZsZXgtd3JhcDp3cmFwO2ZsZXgtZGlyZWN0aW9uOnJvd30ubWVudS5sYXJnZS12ZXJ0aWNhbHtmbGV4LXdyYXA6bm93cmFwO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWVudS5sYXJnZS1leHBhbmRlZCBsaXtmbGV4OjEgMSAwcHh9Lm1lbnUubGFyZ2Utc2ltcGxlIGxpe2ZsZXg6MSAxIDBweH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSl7Lm1lbnUueGxhcmdlLWhvcml6b250YWx7ZmxleC13cmFwOndyYXA7ZmxleC1kaXJlY3Rpb246cm93fS5tZW51LnhsYXJnZS12ZXJ0aWNhbHtmbGV4LXdyYXA6bm93cmFwO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWVudS54bGFyZ2UtZXhwYW5kZWQgbGl7ZmxleDoxIDEgMHB4fS5tZW51LnhsYXJnZS1zaW1wbGUgbGl7ZmxleDoxIDEgMHB4fX0ubWVudS5uZXN0ZWR7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MXJlbX0ubWVudS5pY29ucyBhe2Rpc3BsYXk6ZmxleH0ubWVudS5pY29uLXRvcCBhLC5tZW51Lmljb24tcmlnaHQgYSwubWVudS5pY29uLWJvdHRvbSBhLC5tZW51Lmljb24tbGVmdCBhe2Rpc3BsYXk6ZmxleH0ubWVudS5pY29uLWxlZnQgbGkgYXtmbGV4LWZsb3c6cm93IG5vd3JhcH0ubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSwubWVudS5pY29uLWxlZnQgbGkgYSBzdmd7bWFyZ2luLXJpZ2h0Oi4yNXJlbX0ubWVudS5pY29uLXJpZ2h0IGxpIGF7ZmxleC1mbG93OnJvdyBub3dyYXB9Lm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZywubWVudS5pY29uLXJpZ2h0IGxpIGEgaSwubWVudS5pY29uLXJpZ2h0IGxpIGEgc3Zne21hcmdpbi1sZWZ0Oi4yNXJlbX0ubWVudS5pY29uLXRvcCBsaSBhe2ZsZXgtZmxvdzpjb2x1bW4gbm93cmFwfS5tZW51Lmljb24tdG9wIGxpIGEgaW1nLC5tZW51Lmljb24tdG9wIGxpIGEgaSwubWVudS5pY29uLXRvcCBsaSBhIHN2Z3thbGlnbi1zZWxmOnN0cmV0Y2g7bWFyZ2luLWJvdHRvbTouMjVyZW07dGV4dC1hbGlnbjpjZW50ZXJ9Lm1lbnUuaWNvbi1ib3R0b20gbGkgYXtmbGV4LWZsb3c6Y29sdW1uIG5vd3JhcH0ubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZywubWVudS5pY29uLWJvdHRvbSBsaSBhIGksLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBzdmd7YWxpZ24tc2VsZjpzdHJldGNoO21hcmdpbi1ib3R0b206LjI1cmVtO3RleHQtYWxpZ246Y2VudGVyfS5tZW51IC5pcy1hY3RpdmU+YXtiYWNrZ3JvdW5kOiNkMmRjNmE7Y29sb3I6I2ZmZn0ubWVudSAuYWN0aXZlPmF7YmFja2dyb3VuZDojZDJkYzZhO2NvbG9yOiNmZmZ9Lm1lbnUuYWxpZ24tbGVmdHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubWVudS5hbGlnbi1yaWdodCBsaXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5tZW51LmFsaWduLXJpZ2h0IGxpIC5zdWJtZW51IGxpe2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpe2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpyaWdodH0ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSAuc3VibWVudSBsaXt0ZXh0LWFsaWduOnJpZ2h0fS5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWR7bWFyZ2luLXJpZ2h0OjFyZW07bWFyZ2luLWxlZnQ6MH0ubWVudS5hbGlnbi1jZW50ZXIgbGl7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lm1lbnUuYWxpZ24tY2VudGVyIGxpIC5zdWJtZW51IGxpe2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5tZW51IC5tZW51LXRleHR7cGFkZGluZzowLjdyZW0gMXJlbTtmb250LXdlaWdodDpib2xkO2xpbmUtaGVpZ2h0OjE7Y29sb3I6aW5oZXJpdH0ubWVudS1jZW50ZXJlZD4ubWVudXtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZW51LWNlbnRlcmVkPi5tZW51IGxpe2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5tZW51LWNlbnRlcmVkPi5tZW51IGxpIC5zdWJtZW51IGxpe2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVse2Rpc3BsYXk6bm9uZX0ubWVudS1pY29ue3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoyMHB4O2hlaWdodDoxNnB4O2N1cnNvcjpwb2ludGVyfS5tZW51LWljb246OmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjJweDtiYWNrZ3JvdW5kOiNmZmY7Ym94LXNoYWRvdzowIDdweCAwICNmZmYsMCAxNHB4IDAgI2ZmZjtjb250ZW50OicnfS5tZW51LWljb246aG92ZXI6OmFmdGVye2JhY2tncm91bmQ6Z3JheTtib3gtc2hhZG93OjAgN3B4IDAgZ3JheSwwIDE0cHggMCBncmF5fS5tZW51LWljb24uZGFya3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6MjBweDtoZWlnaHQ6MTZweDtjdXJzb3I6cG9pbnRlcn0ubWVudS1pY29uLmRhcms6OmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjJweDtiYWNrZ3JvdW5kOiMwMDA7Ym94LXNoYWRvdzowIDdweCAwICMwMDAsMCAxNHB4IDAgIzAwMDtjb250ZW50OicnfS5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXJ7YmFja2dyb3VuZDojNGM0YzRjO2JveC1zaGFkb3c6MCA3cHggMCAjNGM0YzRjLDAgMTRweCAwICM0YzRjNGN9LmlzLWRyaWxsZG93bntwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59LmlzLWRyaWxsZG93biBsaXtkaXNwbGF5OmJsb2NrfS5pcy1kcmlsbGRvd24uYW5pbWF0ZS1oZWlnaHR7dHJhbnNpdGlvbjpoZWlnaHQgMC41c30uZHJpbGxkb3duIGF7cGFkZGluZzowLjdyZW0gMXJlbTtiYWNrZ3JvdW5kOiNmZmZ9LmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnV7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDoxMDAlO3otaW5kZXg6LTE7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOiNmZmY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMC4xNXMgbGluZWFyfS5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZXt6LWluZGV4OjE7ZGlzcGxheTpibG9jazt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9LmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZ3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX0uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSBhe3BhZGRpbmc6MC43cmVtIDFyZW19LmRyaWxsZG93biAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51e21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9LmRyaWxsZG93biAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXN7bWluLWhlaWdodDoxMDAlfS5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudD5he3Bvc2l0aW9uOnJlbGF0aXZlfS5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudD5hOjphZnRlcntkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IDZweDtjb250ZW50OicnO2JvcmRlci1yaWdodC13aWR0aDowO2JvcmRlci1sZWZ0LXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZDJkYzZhO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bWFyZ2luLXRvcDotNnB4O3JpZ2h0OjFyZW19LmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQ+YTo6YWZ0ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCA2cHg7Y29udGVudDonJztib3JkZXItcmlnaHQtd2lkdGg6MDtib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2QyZGM2YTtyaWdodDoxcmVtO2xlZnQ6YXV0b30uZHJpbGxkb3duLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQ+YTo6YWZ0ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCA2cHg7Y29udGVudDonJztib3JkZXItbGVmdC13aWR0aDowO2JvcmRlci1yaWdodC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgI2QyZGM2YSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtyaWdodDphdXRvO2xlZnQ6MXJlbX0uZHJpbGxkb3duIC5qcy1kcmlsbGRvd24tYmFjaz5hOjpiZWZvcmV7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCA2cHg7Y29udGVudDonJztib3JkZXItbGVmdC13aWR0aDowO2JvcmRlci1yaWdodC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgI2QyZGM2YSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luLXJpZ2h0OjAuNzVyZW19LmRyb3Bkb3duLXBhbmV7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDtkaXNwbGF5Om5vbmU7d2lkdGg6MzAwcHg7cGFkZGluZzoxcmVtO3Zpc2liaWxpdHk6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgZ3JheTtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2ZvbnQtc2l6ZToxcmVtfS5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmd7ZGlzcGxheTpibG9ja30uZHJvcGRvd24tcGFuZS5pcy1vcGVue2Rpc3BsYXk6YmxvY2s7dmlzaWJpbGl0eTp2aXNpYmxlfS5kcm9wZG93bi1wYW5lLnRpbnl7d2lkdGg6MTAwcHh9LmRyb3Bkb3duLXBhbmUuc21hbGx7d2lkdGg6MjAwcHh9LmRyb3Bkb3duLXBhbmUubGFyZ2V7d2lkdGg6NDAwcHh9LmRyb3Bkb3duLm1lbnU+bGkub3BlbnMtbGVmdD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDowO2xlZnQ6YXV0b30uZHJvcGRvd24ubWVudT5saS5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24ubWVudT5saS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudD5he3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmctcmlnaHQ6MS41cmVtfS5kcm9wZG93bi5tZW51PmxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50PmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLWJvdHRvbS13aWR0aDowO2JvcmRlci10b3Atc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOiNkMmRjNmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7cmlnaHQ6NXB4O2xlZnQ6YXV0bzttYXJnaW4tdG9wOi0zcHh9W2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5kcm9wZG93bi5tZW51IGF7b3V0bGluZTowfS5kcm9wZG93bi5tZW51PmxpPmF7cGFkZGluZzowLjdyZW0gMXJlbX0uZHJvcGRvd24ubWVudT5saS5pcy1hY3RpdmU+YXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiNkMmRjNmF9Lm5vLWpzIC5kcm9wZG93bi5tZW51IHVse2Rpc3BsYXk6bm9uZX0uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnV7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uZHJvcGRvd24ubWVudS52ZXJ0aWNhbD5saSAuaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MH0uZHJvcGRvd24ubWVudS52ZXJ0aWNhbD5saS5vcGVucy1sZWZ0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDowO3JpZ2h0OjEwMCU7bGVmdDphdXRvfS5kcm9wZG93bi5tZW51LnZlcnRpY2FsPmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OmF1dG87bGVmdDoxMDAlfS5kcm9wZG93bi5tZW51LnZlcnRpY2FsPmxpPmE6OmFmdGVye3JpZ2h0OjE0cHh9LmRyb3Bkb3duLm1lbnUudmVydGljYWw+bGkub3BlbnMtbGVmdD5hOjphZnRlcntkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IDZweDtjb250ZW50OicnO2JvcmRlci1sZWZ0LXdpZHRoOjA7Ym9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCAjZDJkYzZhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3JpZ2h0OmF1dG87bGVmdDo1cHh9LmRyb3Bkb3duLm1lbnUudmVydGljYWw+bGkub3BlbnMtcmlnaHQ+YTo6YWZ0ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCA2cHg7Y29udGVudDonJztib3JkZXItcmlnaHQtd2lkdGg6MDtib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2QyZGM2YX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7LmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWw+bGkub3BlbnMtbGVmdD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDowO2xlZnQ6YXV0b30uZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbD5saS5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbD5saS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudD5he3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmctcmlnaHQ6MS41cmVtfS5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsPmxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50PmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLWJvdHRvbS13aWR0aDowO2JvcmRlci10b3Atc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOiNkMmRjNmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7cmlnaHQ6NXB4O2xlZnQ6YXV0bzttYXJnaW4tdG9wOi0zcHh9LmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsPmxpIC5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDowfS5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbD5saS5vcGVucy1sZWZ0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDowO3JpZ2h0OjEwMCU7bGVmdDphdXRvfS5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbD5saS5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudXtyaWdodDphdXRvO2xlZnQ6MTAwJX0uZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWw+bGk+YTo6YWZ0ZXJ7cmlnaHQ6MTRweH0uZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWw+bGkub3BlbnMtbGVmdD5hOjphZnRlcntkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IDZweDtjb250ZW50OicnO2JvcmRlci1sZWZ0LXdpZHRoOjA7Ym9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCAjZDJkYzZhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3JpZ2h0OmF1dG87bGVmdDo1cHh9LmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsPmxpLm9wZW5zLXJpZ2h0PmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLXJpZ2h0LXdpZHRoOjA7Ym9yZGVyLWxlZnQtc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkMmRjNmF9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsPmxpLm9wZW5zLWxlZnQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7dG9wOjEwMCU7cmlnaHQ6MDtsZWZ0OmF1dG99LmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbD5saS5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudXt0b3A6MTAwJTtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsPmxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50PmF7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1yaWdodDoxLjVyZW19LmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbD5saS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudD5hOjphZnRlcntkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IDZweDtjb250ZW50OicnO2JvcmRlci1ib3R0b20td2lkdGg6MDtib3JkZXItdG9wLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZDJkYzZhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3JpZ2h0OjVweDtsZWZ0OmF1dG87bWFyZ2luLXRvcDotM3B4fS5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsPmxpIC5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDowfS5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsPmxpLm9wZW5zLWxlZnQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7dG9wOjA7cmlnaHQ6MTAwJTtsZWZ0OmF1dG99LmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWw+bGkub3BlbnMtcmlnaHQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7cmlnaHQ6YXV0bztsZWZ0OjEwMCV9LmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWw+bGk+YTo6YWZ0ZXJ7cmlnaHQ6MTRweH0uZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbD5saS5vcGVucy1sZWZ0PmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLWxlZnQtd2lkdGg6MDtib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICNkMmRjNmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7cmlnaHQ6YXV0bztsZWZ0OjVweH0uZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbD5saS5vcGVucy1yaWdodD5hOjphZnRlcntkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IDZweDtjb250ZW50OicnO2JvcmRlci1yaWdodC13aWR0aDowO2JvcmRlci1sZWZ0LXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZDJkYzZhfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKXsuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbD5saS5vcGVucy1sZWZ0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDoxMDAlO3JpZ2h0OjA7bGVmdDphdXRvfS5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsPmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3RvcDoxMDAlO3JpZ2h0OmF1dG87bGVmdDowfS5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsPmxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50PmF7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1yaWdodDoxLjVyZW19LmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWw+bGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ+YTo6YWZ0ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCA2cHg7Y29udGVudDonJztib3JkZXItYm90dG9tLXdpZHRoOjA7Ym9yZGVyLXRvcC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6I2QyZGM2YSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtyaWdodDo1cHg7bGVmdDphdXRvO21hcmdpbi10b3A6LTNweH0uZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWw+bGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnV7dG9wOjB9LmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsPmxpLm9wZW5zLWxlZnQ+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7dG9wOjA7cmlnaHQ6MTAwJTtsZWZ0OmF1dG99LmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsPmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OmF1dG87bGVmdDoxMDAlfS5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbD5saT5hOjphZnRlcntyaWdodDoxNHB4fS5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbD5saS5vcGVucy1sZWZ0PmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLWxlZnQtd2lkdGg6MDtib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICNkMmRjNmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7cmlnaHQ6YXV0bztsZWZ0OjVweH0uZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWw+bGkub3BlbnMtcmlnaHQ+YTo6YWZ0ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCA2cHg7Y29udGVudDonJztib3JkZXItcmlnaHQtd2lkdGg6MDtib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2QyZGM2YX19LmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3Vie3RvcDoxMDAlO3JpZ2h0OjA7bGVmdDphdXRvfS5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2Fse3dpZHRoOjEwMHB4fS5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0e2Zsb2F0OnJpZ2h0fS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudHtwb3NpdGlvbjpyZWxhdGl2ZX0uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDo1cHg7bGVmdDphdXRvO21hcmdpbi10b3A6LTZweH0uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXI+LmlzLWRyb3Bkb3duLXN1Ym1lbnV7dG9wOjEwMCU7bGVmdDphdXRvfS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0Pi5pcy1kcm9wZG93bi1zdWJtZW51e3JpZ2h0OjEwMCU7bGVmdDphdXRvfS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudXtyaWdodDphdXRvO2xlZnQ6MTAwJX0uaXMtZHJvcGRvd24tc3VibWVudXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjEwMCU7ei1pbmRleDoxO2Rpc3BsYXk6bm9uZTttaW4td2lkdGg6MjAwcHg7Ym9yZGVyOjFweCBzb2xpZCBncmF5O2JhY2tncm91bmQ6I2ZmZn0uZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYXtwYWRkaW5nOjAuN3JlbSAxcmVtfS5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudD5hOjphZnRlcntyaWdodDoxNHB4fS5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0PmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLWxlZnQtd2lkdGg6MDtib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICNkMmRjNmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7cmlnaHQ6YXV0bztsZWZ0OjVweH0uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQ+YTo6YWZ0ZXJ7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCA2cHg7Y29udGVudDonJztib3JkZXItcmlnaHQtd2lkdGg6MDtib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2QyZGM2YX0uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudXttYXJnaW4tdG9wOi0xcHh9LmlzLWRyb3Bkb3duLXN1Ym1lbnU+bGl7d2lkdGg6MTAwJX0uaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmV7ZGlzcGxheTpibG9ja30ucmVzcG9uc2l2ZS1lbWJlZCwuZmxleC12aWRlb3twb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MDttYXJnaW4tYm90dG9tOjFyZW07cGFkZGluZy1ib3R0b206NzUlO292ZXJmbG93OmhpZGRlbn0ucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LC5yZXNwb25zaXZlLWVtYmVkIGVtYmVkLC5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLC5mbGV4LXZpZGVvIGlmcmFtZSwuZmxleC12aWRlbyBvYmplY3QsLmZsZXgtdmlkZW8gZW1iZWQsLmZsZXgtdmlkZW8gdmlkZW97cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbiwuZmxleC12aWRlby53aWRlc2NyZWVue3BhZGRpbmctYm90dG9tOjU2LjI1JX0uc3RpY2t5LWNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZX0uc3RpY2t5e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwgMCwgMCl9LnN0aWNreS5pcy1zdHVja3twb3NpdGlvbjpmaXhlZDt6LWluZGV4OjU7d2lkdGg6MTAwJX0uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LXRvcHt0b3A6MH0uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbXtib3R0b206MH0uc3RpY2t5LmlzLWFuY2hvcmVke3Bvc2l0aW9uOnJlbGF0aXZlO3JpZ2h0OmF1dG87bGVmdDphdXRvfS5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9te2JvdHRvbTowfWh0bWwuaXMtcmV2ZWFsLW9wZW57cG9zaXRpb246Zml4ZWQ7d2lkdGg6MTAwJTtvdmVyZmxvdy15OmhpZGRlbn1odG1sLmlzLXJldmVhbC1vcGVuLnpmLWhhcy1zY3JvbGx7b3ZlcmZsb3cteTpzY3JvbGx9aHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5e292ZXJmbG93LXk6aGlkZGVufS5yZXZlYWwtb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt6LWluZGV4OjEwMDU7ZGlzcGxheTpub25lO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjQ1KTtvdmVyZmxvdy15OmF1dG99LnJldmVhbHt6LWluZGV4OjEwMDY7YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTpub25lO3BhZGRpbmc6MXJlbTtib3JkZXI6MXB4IHNvbGlkIGdyYXk7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MTAwcHg7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0bztvdmVyZmxvdy15OmF1dG99W2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWx7b3V0bGluZTowfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsucmV2ZWFse21pbi1oZWlnaHQ6MH19LnJldmVhbCAuY29sdW1uLC5yZXZlYWwgLmNvbHVtbnN7bWluLXdpZHRoOjB9LnJldmVhbD46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5yZXZlYWx7d2lkdGg6MTAwdnc7bWF4LXdpZHRoOjc5LjEyNXJlbX19LnJldmVhbC5jb2xsYXBzZXtwYWRkaW5nOjB9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5yZXZlYWwudGlueXt3aWR0aDozMCU7bWF4LXdpZHRoOjc5LjEyNXJlbX19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5yZXZlYWwuc21hbGx7d2lkdGg6NTAlO21heC13aWR0aDo3OS4xMjVyZW19fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsucmV2ZWFsLmxhcmdle3dpZHRoOjkwJTttYXgtd2lkdGg6NzkuMTI1cmVtfX0ucmV2ZWFsLmZ1bGx7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7d2lkdGg6MTAwJTttYXgtd2lkdGg6bm9uZTtoZWlnaHQ6MTAwJTttaW4taGVpZ2h0OjEwMCU7bWFyZ2luLWxlZnQ6MDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjB9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSl7LnJldmVhbHt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDt3aWR0aDoxMDAlO21heC13aWR0aDpub25lO2hlaWdodDoxMDAlO21pbi1oZWlnaHQ6MTAwJTttYXJnaW4tbGVmdDowO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MH19LnJldmVhbC53aXRob3V0LW92ZXJsYXl7cG9zaXRpb246Zml4ZWR9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO3dpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbToxcmVtO2JvcmRlci1yYWRpdXM6MH10YWJsZSB0aGVhZCx0YWJsZSB0Ym9keSx0YWJsZSB0Zm9vdHtib3JkZXI6MXB4IHNvbGlkICNmMmYyZjI7YmFja2dyb3VuZC1jb2xvcjojZmZmfXRhYmxlIGNhcHRpb257cGFkZGluZzouNXJlbSAuNjI1cmVtIC42MjVyZW07Zm9udC13ZWlnaHQ6Ym9sZH10YWJsZSB0aGVhZHtiYWNrZ3JvdW5kOiNmOWY5Zjk7Y29sb3I6IzAwMH10YWJsZSB0Zm9vdHtiYWNrZ3JvdW5kOiNmMmYyZjI7Y29sb3I6IzAwMH10YWJsZSB0aGVhZCB0cix0YWJsZSB0Zm9vdCB0cntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fXRhYmxlIHRoZWFkIHRoLHRhYmxlIHRoZWFkIHRkLHRhYmxlIHRmb290IHRoLHRhYmxlIHRmb290IHRke3BhZGRpbmc6LjVyZW0gLjYyNXJlbSAuNjI1cmVtO2ZvbnQtd2VpZ2h0OmJvbGQ7dGV4dC1hbGlnbjpsZWZ0fXRhYmxlIHRib2R5IHRoLHRhYmxlIHRib2R5IHRke3BhZGRpbmc6LjVyZW0gLjYyNXJlbSAuNjI1cmVtfXRhYmxlIHRib2R5IHRyOm50aC1jaGlsZChldmVuKXtib3JkZXItYm90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZjJmMmYyfXRhYmxlLnVuc3RyaXBlZCB0Ym9keXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9dGFibGUudW5zdHJpcGVkIHRib2R5IHRye2JvcmRlci1ib3R0b206MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZjJmMmYyO2JhY2tncm91bmQtY29sb3I6I2ZmZn1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKXt0YWJsZS5zdGFjayB0aGVhZHtkaXNwbGF5Om5vbmV9dGFibGUuc3RhY2sgdGZvb3R7ZGlzcGxheTpub25lfXRhYmxlLnN0YWNrIHRyLHRhYmxlLnN0YWNrIHRoLHRhYmxlLnN0YWNrIHRke2Rpc3BsYXk6YmxvY2t9dGFibGUuc3RhY2sgdGR7Ym9yZGVyLXRvcDowfX10YWJsZS5zY3JvbGx7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO292ZXJmbG93LXg6YXV0b310YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmNGY0ZjR9dGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWRlZGVkfXRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2ZhZmFmYX10YWJsZS5ob3Zlcjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWRlZGVkfS50YWJsZS1zY3JvbGx7b3ZlcmZsb3cteDphdXRvfS50aXRsZS1iYXJ7cGFkZGluZzouNXJlbTtiYWNrZ3JvdW5kOiMwMDA7Y29sb3I6I2ZmZjtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6Y2VudGVyfS50aXRsZS1iYXIgLm1lbnUtaWNvbnttYXJnaW4tbGVmdDouMjVyZW07bWFyZ2luLXJpZ2h0Oi4yNXJlbX0udGl0bGUtYmFyLWxlZnQsLnRpdGxlLWJhci1yaWdodHtmbGV4OjEgMSAwcHh9LnRpdGxlLWJhci1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0fS50aXRsZS1iYXItdGl0bGV7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2ZvbnQtd2VpZ2h0OmJvbGR9Lmhhcy10aXB7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLWJvdHRvbTpkb3R0ZWQgMXB4ICM0YzRjNGM7Zm9udC13ZWlnaHQ6Ym9sZDtjdXJzb3I6aGVscH0udG9vbHRpcHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6Y2FsYygxMDAlICsgLjY0OTVyZW0pO3otaW5kZXg6MTIwMDttYXgtd2lkdGg6MTByZW07cGFkZGluZzouNzVyZW07Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQtY29sb3I6IzAwMDtmb250LXNpemU6ODAlO2NvbG9yOiNmZmZ9LnRvb2x0aXA6OmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZX0udG9vbHRpcC5ib3R0b206OmJlZm9yZXtkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IC43NXJlbTtjb250ZW50OicnO2JvcmRlci10b3Atd2lkdGg6MDtib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDAwO2JvdHRvbToxMDAlfS50b29sdGlwLmJvdHRvbS5hbGlnbi1jZW50ZXI6OmJlZm9yZXtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0udG9vbHRpcC50b3A6OmJlZm9yZXtkaXNwbGF5OmJsb2NrO3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOmluc2V0IC43NXJlbTtjb250ZW50OicnO2JvcmRlci1ib3R0b20td2lkdGg6MDtib3JkZXItdG9wLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3RvcDoxMDAlO2JvdHRvbTphdXRvfS50b29sdGlwLnRvcC5hbGlnbi1jZW50ZXI6OmJlZm9yZXtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX0udG9vbHRpcC5sZWZ0OjpiZWZvcmV7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCAuNzVyZW07Y29udGVudDonJztib3JkZXItcmlnaHQtd2lkdGg6MDtib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDtsZWZ0OjEwMCV9LnRvb2x0aXAubGVmdC5hbGlnbi1jZW50ZXI6OmJlZm9yZXtib3R0b206YXV0bzt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS50b29sdGlwLnJpZ2h0OjpiZWZvcmV7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlcjppbnNldCAuNzVyZW07Y29udGVudDonJztib3JkZXItbGVmdC13aWR0aDowO2JvcmRlci1yaWdodC1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgIzAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtyaWdodDoxMDAlO2xlZnQ6YXV0b30udG9vbHRpcC5yaWdodC5hbGlnbi1jZW50ZXI6OmJlZm9yZXtib3R0b206YXV0bzt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS50b29sdGlwLmFsaWduLXRvcDo6YmVmb3Jle2JvdHRvbTphdXRvO3RvcDoxMCV9LnRvb2x0aXAuYWxpZ24tYm90dG9tOjpiZWZvcmV7Ym90dG9tOjEwJTt0b3A6YXV0b30udG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmV7bGVmdDoxMCU7cmlnaHQ6YXV0b30udG9vbHRpcC5hbGlnbi1yaWdodDo6YmVmb3Jle2xlZnQ6YXV0bztyaWdodDoxMCV9LnRvcC1iYXJ7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDpub3dyYXA7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6LjVyZW07ZmxleC13cmFwOndyYXB9LnRvcC1iYXIsLnRvcC1iYXIgdWx7YmFja2dyb3VuZC1jb2xvcjpncmF5fS50b3AtYmFyIGlucHV0e21heC13aWR0aDoyMDBweDttYXJnaW4tcmlnaHQ6MXJlbX0udG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGR7d2lkdGg6MTAwJTttYXJnaW4tcmlnaHQ6MH0udG9wLWJhciBpbnB1dC5idXR0b257d2lkdGg6YXV0b30udG9wLWJhciAudG9wLWJhci1sZWZ0LC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0e2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey50b3AtYmFye2ZsZXgtd3JhcDpub3dyYXB9LnRvcC1iYXIgLnRvcC1iYXItbGVmdHtmbGV4OjEgMSBhdXRvO21hcmdpbi1yaWdodDphdXRvfS50b3AtYmFyIC50b3AtYmFyLXJpZ2h0e2ZsZXg6MCAxIGF1dG87bWFyZ2luLWxlZnQ6YXV0b319QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSl7LnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVte2ZsZXgtd3JhcDp3cmFwfS50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodHtmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKXsudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZXtmbGV4LXdyYXA6d3JhcH0udG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0e2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5Ljk5ODc1ZW0pey50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZXtmbGV4LXdyYXA6d3JhcH0udG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItbGVmdCwudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItcmlnaHR7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX19LnRvcC1iYXItdGl0bGV7ZmxleDowIDAgYXV0bzttYXJnaW46MC41cmVtIDFyZW0gMC41cmVtIDB9LnRvcC1iYXItbGVmdCwudG9wLWJhci1yaWdodHtmbGV4OjAgMCBhdXRvfS5oaWRle2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fS5pbnZpc2libGV7dmlzaWJpbGl0eTpoaWRkZW59QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSl7LmhpZGUtZm9yLXNtYWxsLW9ubHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7LnNob3ctZm9yLXNtYWxsLW9ubHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsuaGlkZS1mb3ItbWVkaXVte2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKXsuc2hvdy1mb3ItbWVkaXVte2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSl7LmhpZGUtZm9yLW1lZGl1bS1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsuc2hvdy1mb3ItbWVkaXVtLW9ubHl7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsuaGlkZS1mb3ItbGFyZ2V7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pey5zaG93LWZvci1sYXJnZXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pey5oaWRlLWZvci1sYXJnZS1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKXsuc2hvdy1mb3ItbGFyZ2Utb25seXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSl7LmhpZGUtZm9yLXhsYXJnZXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSl7LnNob3ctZm9yLXhsYXJnZXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5Ljk5ODc1ZW0pey5oaWRlLWZvci14bGFyZ2Utb25seXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSl7LnNob3ctZm9yLXhsYXJnZS1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX0uc2hvdy1mb3Itc3IsLnNob3ctb24tZm9jdXN7cG9zaXRpb246YWJzb2x1dGUgIWltcG9ydGFudDt3aWR0aDoxcHg7aGVpZ2h0OjFweDtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVuO2NsaXA6cmVjdCgwLCAwLCAwLCAwKTt3aGl0ZS1zcGFjZTpub3dyYXA7Ym9yZGVyOjB9LnNob3ctb24tZm9jdXM6YWN0aXZlLC5zaG93LW9uLWZvY3VzOmZvY3Vze3Bvc2l0aW9uOnN0YXRpYyAhaW1wb3J0YW50O3dpZHRoOmF1dG87aGVpZ2h0OmF1dG87b3ZlcmZsb3c6dmlzaWJsZTtjbGlwOmF1dG87d2hpdGUtc3BhY2U6bm9ybWFsfS5zaG93LWZvci1sYW5kc2NhcGUsLmhpZGUtZm9yLXBvcnRyYWl0e2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSl7LnNob3ctZm9yLWxhbmRzY2FwZSwuaGlkZS1mb3ItcG9ydHJhaXR7ZGlzcGxheTpibG9jayAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KXsuc2hvdy1mb3ItbGFuZHNjYXBlLC5oaWRlLWZvci1wb3J0cmFpdHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19LmhpZGUtZm9yLWxhbmRzY2FwZSwuc2hvdy1mb3ItcG9ydHJhaXR7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpey5oaWRlLWZvci1sYW5kc2NhcGUsLnNob3ctZm9yLXBvcnRyYWl0e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KXsuaGlkZS1mb3ItbGFuZHNjYXBlLC5zaG93LWZvci1wb3J0cmFpdHtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnR9fS5hbGlnbi1sZWZ0e2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5hbGlnbi1yaWdodHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LmFsaWduLWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5hbGlnbi1qdXN0aWZ5e2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5hbGlnbi1zcGFjZWR7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZH0uYWxpZ24tbGVmdC52ZXJ0aWNhbC5tZW51PmxpPmF7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9LmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnU+bGk+YXtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51PmxpPmF7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uYWxpZ24tdG9we2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LmFsaWduLXNlbGYtdG9we2FsaWduLXNlbGY6ZmxleC1zdGFydH0uYWxpZ24tYm90dG9te2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5hbGlnbi1zZWxmLWJvdHRvbXthbGlnbi1zZWxmOmZsZXgtZW5kfS5hbGlnbi1taWRkbGV7YWxpZ24taXRlbXM6Y2VudGVyfS5hbGlnbi1zZWxmLW1pZGRsZXthbGlnbi1zZWxmOmNlbnRlcn0uYWxpZ24tc3RyZXRjaHthbGlnbi1pdGVtczpzdHJldGNofS5hbGlnbi1zZWxmLXN0cmV0Y2h7YWxpZ24tc2VsZjpzdHJldGNofS5hbGlnbi1jZW50ZXItbWlkZGxle2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLWNvbnRlbnQ6Y2VudGVyfS5zbWFsbC1vcmRlci0xe29yZGVyOjF9LnNtYWxsLW9yZGVyLTJ7b3JkZXI6Mn0uc21hbGwtb3JkZXItM3tvcmRlcjozfS5zbWFsbC1vcmRlci00e29yZGVyOjR9LnNtYWxsLW9yZGVyLTV7b3JkZXI6NX0uc21hbGwtb3JkZXItNntvcmRlcjo2fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVkaXVtLW9yZGVyLTF7b3JkZXI6MX0ubWVkaXVtLW9yZGVyLTJ7b3JkZXI6Mn0ubWVkaXVtLW9yZGVyLTN7b3JkZXI6M30ubWVkaXVtLW9yZGVyLTR7b3JkZXI6NH0ubWVkaXVtLW9yZGVyLTV7b3JkZXI6NX0ubWVkaXVtLW9yZGVyLTZ7b3JkZXI6Nn19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5sYXJnZS1vcmRlci0xe29yZGVyOjF9LmxhcmdlLW9yZGVyLTJ7b3JkZXI6Mn0ubGFyZ2Utb3JkZXItM3tvcmRlcjozfS5sYXJnZS1vcmRlci00e29yZGVyOjR9LmxhcmdlLW9yZGVyLTV7b3JkZXI6NX0ubGFyZ2Utb3JkZXItNntvcmRlcjo2fX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKXsueGxhcmdlLW9yZGVyLTF7b3JkZXI6MX0ueGxhcmdlLW9yZGVyLTJ7b3JkZXI6Mn0ueGxhcmdlLW9yZGVyLTN7b3JkZXI6M30ueGxhcmdlLW9yZGVyLTR7b3JkZXI6NH0ueGxhcmdlLW9yZGVyLTV7b3JkZXI6NX0ueGxhcmdlLW9yZGVyLTZ7b3JkZXI6Nn19LmZsZXgtY29udGFpbmVye2Rpc3BsYXk6ZmxleH0uZmxleC1jaGlsZC1hdXRve2ZsZXg6MSAxIGF1dG99LmZsZXgtY2hpbGQtZ3Jvd3tmbGV4OjEgMCBhdXRvfS5mbGV4LWNoaWxkLXNocmlua3tmbGV4OjAgMSBhdXRvfS5mbGV4LWRpci1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5mbGV4LWRpci1yb3ctcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZX0uZmxleC1kaXItY29sdW1ue2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZmxleC1kaXItY29sdW1uLXJldmVyc2V7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tZmxleC1jb250YWluZXJ7ZGlzcGxheTpmbGV4fS5tZWRpdW0tZmxleC1jaGlsZC1hdXRve2ZsZXg6MSAxIGF1dG99Lm1lZGl1bS1mbGV4LWNoaWxkLWdyb3d7ZmxleDoxIDAgYXV0b30ubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5re2ZsZXg6MCAxIGF1dG99Lm1lZGl1bS1mbGV4LWRpci1yb3d7ZmxleC1kaXJlY3Rpb246cm93fS5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2V7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9Lm1lZGl1bS1mbGV4LWRpci1jb2x1bW57ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2V7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2V9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsubGFyZ2UtZmxleC1jb250YWluZXJ7ZGlzcGxheTpmbGV4fS5sYXJnZS1mbGV4LWNoaWxkLWF1dG97ZmxleDoxIDEgYXV0b30ubGFyZ2UtZmxleC1jaGlsZC1ncm93e2ZsZXg6MSAwIGF1dG99LmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5re2ZsZXg6MCAxIGF1dG99LmxhcmdlLWZsZXgtZGlyLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5sYXJnZS1mbGV4LWRpci1jb2x1bW57ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSl7LnhsYXJnZS1mbGV4LWNvbnRhaW5lcntkaXNwbGF5OmZsZXh9LnhsYXJnZS1mbGV4LWNoaWxkLWF1dG97ZmxleDoxIDEgYXV0b30ueGxhcmdlLWZsZXgtY2hpbGQtZ3Jvd3tmbGV4OjEgMCBhdXRvfS54bGFyZ2UtZmxleC1jaGlsZC1zaHJpbmt7ZmxleDowIDEgYXV0b30ueGxhcmdlLWZsZXgtZGlyLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LnhsYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZX0ueGxhcmdlLWZsZXgtZGlyLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnhsYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX19LnNsaWRlLWluLWRvd24ubXVpLWVudGVye3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMDAlKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufS5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfS5zbGlkZS1pbi11cC5tdWktZW50ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTAwJSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59LnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfS5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59LnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfS5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59LnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwMCUpfS5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZle3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufS5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTAwJSl9LnNsaWRlLW91dC11cC5tdWktbGVhdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59LnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAwJSl9LnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfS5mYWRlLWluLm11aS1lbnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjtvcGFjaXR5OjA7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5fS5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZle29wYWNpdHk6MX0uZmFkZS1vdXQubXVpLWxlYXZle3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO29wYWNpdHk6MTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHl9LmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZle29wYWNpdHk6MH0uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVye3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTt0cmFuc2Zvcm0tb3JpZ2luOnRvcDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtvcGFjaXR5OjB9LmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtvcGFjaXR5OjF9LmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVye3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0O3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O29wYWNpdHk6MH0uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7b3BhY2l0eToxfS5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7dHJhbnNmb3JtLW9yaWdpbjpib3R0b207dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eTowfS5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7b3BhY2l0eToxfS5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVye3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO3RyYW5zZm9ybS1vcmlnaW46bGVmdDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtvcGFjaXR5OjB9LmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7b3BhY2l0eToxfS5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eTowfS5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtvcGFjaXR5OjF9LmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVye3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtvcGFjaXR5OjB9LmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO29wYWNpdHk6MX0uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7dHJhbnNmb3JtLW9yaWdpbjp0b3A7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eToxfS5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7b3BhY2l0eTowfS5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO3RyYW5zZm9ybS1vcmlnaW46cmlnaHQ7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eToxfS5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtvcGFjaXR5OjB9LmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O29wYWNpdHk6MX0uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtvcGFjaXR5OjB9LmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZle3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQ7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eToxfS5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtvcGFjaXR5OjB9LmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eToxfS5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtvcGFjaXR5OjB9LmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eToxfS5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtvcGFjaXR5OjB9LnNjYWxlLWluLXVwLm11aS1lbnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06c2NhbGUoLjUpO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O29wYWNpdHk6MH0uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmV7dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MX0uc2NhbGUtaW4tZG93bi5tdWktZW50ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnNjYWxlKDEuNSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sIG9wYWNpdHk7b3BhY2l0eTowfS5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZle3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9LnNjYWxlLW91dC11cC5tdWktbGVhdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O29wYWNpdHk6MX0uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZle3RyYW5zZm9ybTpzY2FsZSgxLjUpO29wYWNpdHk6MH0uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZle3RyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246bGluZWFyO3RyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtvcGFjaXR5OjF9LnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZle3RyYW5zZm9ybTpzY2FsZSguNSk7b3BhY2l0eTowfS5zcGluLWluLm11aS1lbnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06cm90YXRlKC0uNzV0dXJuKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtvcGFjaXR5OjB9LnNwaW4taW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmV7dHJhbnNmb3JtOnJvdGF0ZSgwKTtvcGFjaXR5OjF9LnNwaW4tb3V0Lm11aS1sZWF2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06cm90YXRlKDApO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O29wYWNpdHk6MX0uc3Bpbi1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmV7dHJhbnNmb3JtOnJvdGF0ZSguNzV0dXJuKTtvcGFjaXR5OjB9LnNwaW4taW4tY2N3Lm11aS1lbnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2Zvcm06cm90YXRlKC43NXR1cm4pO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLCBvcGFjaXR5O29wYWNpdHk6MH0uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmV7dHJhbnNmb3JtOnJvdGF0ZSgwKTtvcGFjaXR5OjF9LnNwaW4tb3V0LWNjdy5tdWktbGVhdmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7dHJhbnNmb3JtOnJvdGF0ZSgwKTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSwgb3BhY2l0eTtvcGFjaXR5OjF9LnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZXt0cmFuc2Zvcm06cm90YXRlKC0uNzV0dXJuKTtvcGFjaXR5OjB9LnNsb3d7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NTBtcyAhaW1wb3J0YW50fS5mYXN0e3RyYW5zaXRpb24tZHVyYXRpb246MjUwbXMgIWltcG9ydGFudH0ubGluZWFye3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhciAhaW1wb3J0YW50fS5lYXNle3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UgIWltcG9ydGFudH0uZWFzZS1pbnt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluICFpbXBvcnRhbnR9LmVhc2Utb3V0e3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0ICFpbXBvcnRhbnR9LmVhc2UtaW4tb3V0e3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0ICFpbXBvcnRhbnR9LmJvdW5jZS1pbnt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudH0uYm91bmNlLW91dHt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnR9LmJvdW5jZS1pbi1vdXR7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnR9LnNob3J0LWRlbGF5e3RyYW5zaXRpb24tZGVsYXk6MzAwbXMgIWltcG9ydGFudH0ubG9uZy1kZWxheXt0cmFuc2l0aW9uLWRlbGF5OjcwMG1zICFpbXBvcnRhbnR9LnNoYWtle2FuaW1hdGlvbi1uYW1lOnNoYWtlLTd9QGtleWZyYW1lcyBzaGFrZS03ezAlLDEwJSwyMCUsMzAlLDQwJSw1MCUsNjAlLDcwJSw4MCUsOTAle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDclKX01JSwxNSUsMjUlLDM1JSw0NSUsNTUlLDY1JSw3NSUsODUlLDk1JXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNyUpfX0uc3Bpbi1jd3thbmltYXRpb24tbmFtZTpzcGluLWN3LTF0dXJufUBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybnswJXt0cmFuc2Zvcm06cm90YXRlKC0xdHVybil9MTAwJXt0cmFuc2Zvcm06cm90YXRlKDApfX0uc3Bpbi1jY3d7YW5pbWF0aW9uLW5hbWU6c3Bpbi1jY3ctMXR1cm59QGtleWZyYW1lcyBzcGluLWNjdy0xdHVybnswJXt0cmFuc2Zvcm06cm90YXRlKDApfTEwMCV7dHJhbnNmb3JtOnJvdGF0ZSgtMXR1cm4pfX0ud2lnZ2xle2FuaW1hdGlvbi1uYW1lOndpZ2dsZS03ZGVnfUBrZXlmcmFtZXMgd2lnZ2xlLTdkZWd7NDAlLDUwJSw2MCV7dHJhbnNmb3JtOnJvdGF0ZSg3ZGVnKX0zNSUsNDUlLDU1JSw2NSV7dHJhbnNmb3JtOnJvdGF0ZSgtN2RlZyl9MCUsMzAlLDcwJSwxMDAle3RyYW5zZm9ybTpyb3RhdGUoMCl9fS5zaGFrZSwuc3Bpbi1jdywuc3Bpbi1jY3csLndpZ2dsZXthbmltYXRpb24tZHVyYXRpb246NTAwbXN9LmluZmluaXRle2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGV9LnNsb3d7YW5pbWF0aW9uLWR1cmF0aW9uOjc1MG1zICFpbXBvcnRhbnR9LmZhc3R7YW5pbWF0aW9uLWR1cmF0aW9uOjI1MG1zICFpbXBvcnRhbnR9LmxpbmVhcnthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhciAhaW1wb3J0YW50fS5lYXNle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZSAhaW1wb3J0YW50fS5lYXNlLWlue2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbiAhaW1wb3J0YW50fS5lYXNlLW91dHthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0ICFpbXBvcnRhbnR9LmVhc2UtaW4tb3V0e2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbi1vdXQgIWltcG9ydGFudH0uYm91bmNlLWlue2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnR9LmJvdW5jZS1vdXR7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnR9LmJvdW5jZS1pbi1vdXR7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudH0uc2hvcnQtZGVsYXl7YW5pbWF0aW9uLWRlbGF5OjMwMG1zICFpbXBvcnRhbnR9LmxvbmctZGVsYXl7YW5pbWF0aW9uLWRlbGF5OjcwMG1zICFpbXBvcnRhbnR9QGZvbnQtZmFjZXtmb250LWZhbWlseToncG9wcGlucy1leHRyYWJvbGQnO3NyYzp1cmwoXCIuLi9mb250cy9wb3BwaW5zLWV4dHJhYm9sZC13ZWJmb250LmVvdFwiKTtzcmM6dXJsKFwiLi4vZm9udHMvcG9wcGlucy1leHRyYWJvbGQtd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLHVybChcIi4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFib2xkLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcIi4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFib2xkLXdlYmZvbnQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLHVybChcIi4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFib2xkLXdlYmZvbnQuc3ZnI2ZvbnQtZmFtaWx5LXJlZ1wiKSBmb3JtYXQoXCJzdmdcIik7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3R5bGU6bm9ybWFsO3RleHQtcmVuZGVyaW5nOm9wdGltaXplTGVnaWJpbGl0eX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5Oidwb3BwaW5zLWV4dHJhbGlnaHQnO3NyYzp1cmwoXCIuLi9mb250cy9wb3BwaW5zLWV4dHJhbGlnaHQtd2ViZm9udC5lb3RcIik7c3JjOnVybChcIi4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFsaWdodC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiLi4vZm9udHMvcG9wcGlucy1leHRyYWxpZ2h0LXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcIi4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFsaWdodC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoXCIuLi9mb250cy9wb3BwaW5zLWV4dHJhbGlnaHQtd2ViZm9udC5zdmcjZm9udC1mYW1pbHktcmVnXCIpIGZvcm1hdChcInN2Z1wiKTtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHlsZTpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J3BvcHBpbnMtbWVkaXVtJztzcmM6dXJsKFwiLi4vZm9udHMvcG9wcGlucy1tZWRpdW0td2ViZm9udC5lb3RcIik7c3JjOnVybChcIi4uL2ZvbnRzL3BvcHBpbnMtbWVkaXVtLXdlYmZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSx1cmwoXCIuLi9mb250cy9wb3BwaW5zLW1lZGl1bS13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCIuLi9mb250cy9wb3BwaW5zLW1lZGl1bS13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoXCIuLi9mb250cy9wb3BwaW5zLW1lZGl1bS13ZWJmb250LnN2ZyNmb250LWZhbWlseS1yZWdcIikgZm9ybWF0KFwic3ZnXCIpO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0eWxlOm5vcm1hbDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHl9QGZvbnQtZmFjZXtmb250LWZhbWlseToncG9wcGlucy1yZWd1bGFyJztzcmM6dXJsKFwiLi4vZm9udHMvcG9wcGlucy1yZWd1bGFyLXdlYmZvbnQuZW90XCIpO3NyYzp1cmwoXCIuLi9mb250cy9wb3BwaW5zLXJlZ3VsYXItd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLHVybChcIi4uL2ZvbnRzL3BvcHBpbnMtcmVndWxhci13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCIuLi9mb250cy9wb3BwaW5zLXJlZ3VsYXItd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksdXJsKFwiLi4vZm9udHMvcG9wcGlucy1yZWd1bGFyLXdlYmZvbnQuc3ZnI2ZvbnQtZmFtaWx5LXJlZ1wiKSBmb3JtYXQoXCJzdmdcIik7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3R5bGU6bm9ybWFsO3RleHQtcmVuZGVyaW5nOm9wdGltaXplTGVnaWJpbGl0eX1ib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMDtsaW5lLWhlaWdodDoxLjJ9Ym9keS5pcy1yZXZlYWwtb3BlbntvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246Zml4ZWQ7d2lkdGg6MTAwJX1oMSwuaDF7Zm9udC1mYW1pbHk6XCJwb3BwaW5zLWV4dHJhbGlnaHRcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDpub3JtYWw7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW4tYm90dG9tOjA7aGVpZ2h0OmNhbGMoODB2aCAtIDcwcHgpfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pe2gxLC5oMXtoZWlnaHQ6NzB2d31oMSAuc2luZ2xlLXdvcmQtd3JhcHBlciwuaDEgLnNpbmdsZS13b3JkLXdyYXBwZXJ7bWFyZ2luLWJvdHRvbToxLjV2dyAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA1NjhweCl7aDEsLmgxe2hlaWdodDpjYWxjKDgwdmggLSA3MHB4KSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNDgwcHgpe2gxLC5oMXtoZWlnaHQ6Y2FsYyg4MHZoIC0gNzBweCkgIWltcG9ydGFudH19aDEgLnNpbmdsZS13b3JkLXdyYXBwZXIsLmgxIC5zaW5nbGUtd29yZC13cmFwcGVye292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tYm90dG9tOjEuNXZofWgxIC5zaW5nbGUtd29yZC13cmFwcGVyIC5zaW5nbGUtd29yZCwuaDEgLnNpbmdsZS13b3JkLXdyYXBwZXIgLnNpbmdsZS13b3Jke2Rpc3BsYXk6aW5saW5lLWJsb2NrfWgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmVpbnMsLmgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmVpbnN7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWcvd2lyLnN2Zyk7d2lkdGg6YXV0bztoZWlnaHQ6MTEwcHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0fWgxIC5zaW5nbGUtd29yZC13cmFwcGVyLnp3ZWksLmgxIC5zaW5nbGUtd29yZC13cmFwcGVyLnp3ZWl7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWcvbWFjaGVuLnN2Zyk7d2lkdGg6YXV0bztoZWlnaHQ6MTEwcHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0fWgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmRyZWksLmgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmRyZWl7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWcvbWFya2VuLnN2Zyk7d2lkdGg6YXV0bztoZWlnaHQ6MTEwcHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0fWgxIC5zaW5nbGUtd29yZC13cmFwcGVyLnZpZXIsLmgxIC5zaW5nbGUtd29yZC13cmFwcGVyLnZpZXJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWcvZXJsZWJiYXIuc3ZnKTt3aWR0aDphdXRvO2hlaWdodDoxMTBweDtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9aDEgLnNpbmdsZS13b3JkLXdyYXBwZXIuZnVlbmYsLmgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmZ1ZW5me2hlaWdodDoxMTBweCAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjAgIWltcG9ydGFudH1oMSAuc2luZ2xlLXdvcmQtd3JhcHBlci5mdWVuZiAuc2luZ2xlLXdvcmQuaWNuLW5leHQsLmgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmZ1ZW5mIC5zaW5nbGUtd29yZC5pY24tbmV4dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtaW1hZ2U6dXJsKC4uL2ltZy9hcnJvdy1uZXh0LnN2Zyk7bWFyZ2luLWxlZnQ6LTEwcHg7YmFja2dyb3VuZC1zaXplOjc1JSA3NSU7YmFja2dyb3VuZC1wb3NpdGlvbjowIDA7d2lkdGg6NjBweDtoZWlnaHQ6NjBweDtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDQxMHB4KXtoMSAuc2luZ2xlLXdvcmQtd3JhcHBlci5mdWVuZiAuc2luZ2xlLXdvcmQuaWNuLW5leHQsLmgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmZ1ZW5mIC5zaW5nbGUtd29yZC5pY24tbmV4dHt3aWR0aDo2MHB4O2hlaWdodDo2MCU7bWFyZ2luLWxlZnQ6LTE5cHh9fWgxIC5zaW5nbGUtd29yZC13cmFwcGVyLmZ1ZW5mIC5zaW5nbGUtd29yZC5pY24tbmV4dDpob3ZlciwuaDEgLnNpbmdsZS13b3JkLXdyYXBwZXIuZnVlbmYgLnNpbmdsZS13b3JkLmljbi1uZXh0OmhvdmVye2N1cnNvcjpwb2ludGVyfWgyLC5oMntmb250LWZhbWlseTpcInBvcHBpbnMtZXh0cmFib2xkXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZToyLjI1cmVtfWgzLC5oM3tmb250LWZhbWlseTpcInBvcHBpbnMtZXh0cmFib2xkXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZToxLjI1cmVtfXAsLmNvcHl7Zm9udC1mYW1pbHk6XCJwb3BwaW5zLXJlZ3VsYXJcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjIuMjVyZW07bGluZS1oZWlnaHQ6Mi43NXJlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKXtwLC5jb3B5e2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6MS44NzVyZW19fS5jb3B5LXNtYWxse2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNjI1cmVtO2ZvbnQtZmFtaWx5OlwicG9wcGlucy1yZWd1bGFyXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6bm9ybWFsfWIsc3Ryb25ne2ZvbnQtZmFtaWx5OlwicG9wcGlucy1leHRyYWJvbGRcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDpub3JtYWx9LmJnLXByaW1hcnl7YmFja2dyb3VuZC1jb2xvcjojZDJkYzZhfS5iZy1zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjojMDAwfS5iZy13aGl0ZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmJnLWJsYWNre2JhY2tncm91bmQtY29sb3I6IzAwMH0uYmctbWVkaXVtLWdyYXl7YmFja2dyb3VuZC1jb2xvcjpncmF5fS5iZy1kYXJrLWdyYXl7YmFja2dyb3VuZC1jb2xvcjojNGM0YzRjfS5oaWRkZW4tY29udGVudHtkaXNwbGF5Om5vbmV9LnRvZ2dsZS1tZW51e3Bvc2l0aW9uOnJlbGF0aXZlfS50b2dnbGUtbWVudSAuYWN0aW9uLWNsb3Nle2Rpc3BsYXk6bm9uZX0udG9nZ2xlLW1lbnUuYWN0aXZlIC5hY3Rpb24tb3BlbntkaXNwbGF5Om5vbmV9LnRvZ2dsZS1tZW51LmFjdGl2ZSAuYWN0aW9uLWNsb3Nle2Rpc3BsYXk6aW5saW5lLWJsb2NrfWh0bWwsYm9keXtoZWlnaHQ6MTAwJX1odG1sIC5wYWdlLXdyYXAsYm9keSAucGFnZS13cmFwe21pbi1oZWlnaHQ6MTAwJTttYXJnaW4tYm90dG9tOi0zLjEyNXJlbTtvdmVyZmxvdzpoaWRkZW59aHRtbCAucGFnZS13cmFwIC5wdXNoLGJvZHkgLnBhZ2Utd3JhcCAucHVzaHtoZWlnaHQ6My4xMjVyZW19LnBhZ2UtY29udGVudHtwYWRkaW5nOjEuODc1cmVtIC42MjVyZW0gMS44NzVyZW19LnBhZ2UtY29udGVudC53aXRoLXN0YWdle3BhZGRpbmctdG9wOjB9LnNpdGUtZm9vdGVye2hlaWdodDowfS5pY29uLmljb24tZXhhbXBsZXtiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2ltZy9pY29ucy9pY29uLWV4YW1wbGUucG5nXCIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrfUBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSl7Lmljb24uaWNvbi1leGFtcGxle2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiLi4vaW1nLzJ4L2ljb25zL2ljb24tZXhhbXBsZV8yeC5wbmdcIik7YmFja2dyb3VuZC1zaXplOjEwMCUgYXV0bztiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9fWZvcm0gLmljaGVja2JveHtiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2ltZy9pY29ucy9jaGVja2JveC5wbmdcIik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7ZGlzcGxheTppbmxpbmUtYmxvY2t9QG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKXtmb3JtIC5pY2hlY2tib3h7YmFja2dyb3VuZC1pbWFnZTp1cmwoXCIuLi9pbWcvMngvaWNvbnMvY2hlY2tib3hfMngucG5nXCIpO2JhY2tncm91bmQtc2l6ZToyMHB4IDEwMHB4O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdH19Zm9ybSAuaXJhZGlve2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiLi4vaW1nL2ljb25zL3JhZGlvLnBuZ1wiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtkaXNwbGF5OmlubGluZS1ibG9ja31AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpe2Zvcm0gLmlyYWRpb3tiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2ltZy8yeC9pY29ucy9yYWRpb18yeC5wbmdcIik7YmFja2dyb3VuZC1zaXplOjIwcHggMTAwcHg7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0fX1mb3JtIC5pY2hlY2tib3guaG92ZXIsZm9ybSAuaXJhZGlvLmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246MCAtMjBweH1mb3JtIC5pY2hlY2tib3guY2hlY2tlZCxmb3JtIC5pcmFkaW8uY2hlY2tlZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQwcHh9Zm9ybSAuaWNoZWNrYm94LmNoZWNrZWQuaG92ZXIsZm9ybSAuaXJhZGlvLmNoZWNrZWQuaG92ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02MHB4fWZvcm0gLmljaGVja2JveC5lcnJvcixmb3JtIC5pcmFkaW8uZXJyb3J7YmFja2dyb3VuZC1wb3NpdGlvbjowIC04MHB4fS5sb2dvLWJhcnt3aWR0aDoxMDAlO3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6MjA7cGFkZGluZzoxMHZoIDAgMTBweCAwfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pey5sb2dvLWJhcntwYWRkaW5nOjIwcHggMCAxMHB4IDB9fS5sb2dvLWJhciAubG9nb3twb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxOTBweDtoZWlnaHQ6NTBweDtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSl7LmxvZ28tYmFyIC5sb2dve2JhY2tncm91bmQtc2l6ZTo3NSUgNzUlfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogNzY4cHgpey5sb2dvLWJhciAubG9nb3tiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlfX0ubG9nby1iYXIgLmxvZ28ubG9nby13aGl0ZXtiYWNrZ3JvdW5kLWltYWdlOnVybCguLi9pbWcvbG9nby1zdGFuLXdoaXRlLnN2Zyk7b3BhY2l0eToxfS5sb2dvLWJhciAubG9nby5sb2dvLWdyZWVue2JhY2tncm91bmQtaW1hZ2U6dXJsKC4uL2ltZy9sb2dvLXN0YW4tZ3JlZW4uc3ZnKTtvcGFjaXR5OjB9LmxvZ28tYmFyLmxvZ28tYmFyLWJnLmRpc3BsYXl7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuOCl9QGtleWZyYW1lcyBwdWxzYXRlezAle3RyYW5zZm9ybTpzY2FsZSgwLjIsIDAuMik7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMC4yLCAwLjIpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDAuMiwgMC4yKTtvcGFjaXR5OjAuMH01MCV7b3BhY2l0eToxLjB9MTAwJXt0cmFuc2Zvcm06c2NhbGUoMS4yLCAxLjIpO29wYWNpdHk6MC4wOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEuMiwgMS4yKTtvcGFjaXR5OjAuMDstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjIsIDEuMik7b3BhY2l0eTowLjB9fUBrZXlmcmFtZXMgYXBwZWFye2Zyb217b3BhY2l0eTowfXRve29wYWNpdHk6MX19QGtleWZyYW1lcyBkaXNhcHBlYXJ7ZnJvbXtvcGFjaXR5OjF9dG97b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIGZseWluLWZyb21sZWZ0e2Zyb217b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTMwMHB4LCAwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTMwMHB4LCAwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUoLTMwMHB4LCAwKX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwLCAwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwgMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlKDAsIDApfX0uc2luZ2xlLXdvcmQtd3JhcHBlci5laW5zLmZseWlue29wYWNpdHk6MDthbmltYXRpb246Zmx5aW4tZnJvbWxlZnQgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmZseWluLWZyb21sZWZ0IDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjdzIDEgZWFzZS1vdXQgZm9yd2FyZHN9LnNpbmdsZS13b3JkLXdyYXBwZXIuendlaS5mbHlpbntvcGFjaXR5OjA7YW5pbWF0aW9uOmZseWluLWZyb21sZWZ0IDAuN3MgMC4zcyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmZseWluLWZyb21sZWZ0IDAuN3MgMC4zcyAxIGVhc2Utb3V0IGZvcndhcmRzfS5zaW5nbGUtd29yZC13cmFwcGVyLmRyZWkuZmx5aW57b3BhY2l0eTowO2FuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAxcyAwLjVzIDEgZWFzZS1vdXQgZm9yd2FyZHM7LXdlYmtpdC1hbmltYXRpb246Zmx5aW4tZnJvbWxlZnQgMXMgMC41cyAxIGVhc2Utb3V0IGZvcndhcmRzOy1tb3otYW5pbWF0aW9uOmZseWluLWZyb21sZWZ0IDFzIDAuNXMgMSBlYXNlLW91dCBmb3J3YXJkc30uc2luZ2xlLXdvcmQtd3JhcHBlci52aWVyLmZseWlue29wYWNpdHk6MDthbmltYXRpb246Zmx5aW4tZnJvbWxlZnQgMXMgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmZseWluLWZyb21sZWZ0IDFzIDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAxcyAwLjdzIDEgZWFzZS1vdXQgZm9yd2FyZHN9LnNpbmdsZS13b3JkLXdyYXBwZXIuZnVlbmYuZmx5aW57b3BhY2l0eTowO2FuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjVzIDEuNXMgMSBlYXNlLW91dCBmb3J3YXJkczstd2Via2l0LWFuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjVzIDEuNXMgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjVzIDEuNXMgMSBlYXNlLW91dCBmb3J3YXJkc30uY29weS1jb250YWN0LmZseWlue29wYWNpdHk6MDthbmltYXRpb246Zmx5aW4tZnJvbWxlZnQgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmZseWluLWZyb21sZWZ0IDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjdzIDEgZWFzZS1vdXQgZm9yd2FyZHN9LmNvcHktY29udGFjdC5mbHlvdXR7b3BhY2l0eTowO2FuaW1hdGlvbjpmbHlvdXQtdG9sZWZ0IDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkczstd2Via2l0LWFuaW1hdGlvbjpmbHlvdXQtdG9sZWZ0ICAwLjdzIDEgZWFzZS1vdXQgZm9yd2FyZHM7LW1vei1hbmltYXRpb246Zmx5b3V0LXRvbGVmdCAgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzfS5jb250YWN0LWRhdGEuZmx5aW57b3BhY2l0eTowO2FuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkczstd2Via2l0LWFuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjpmbHlpbi1mcm9tbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkc30uY29udGFjdC1kYXRhLmZseW91dHtvcGFjaXR5OjA7YW5pbWF0aW9uOmZseW91dC10b2xlZnQgMC43cyAwLjNzIDEgZWFzZS1vdXQgZm9yd2FyZHM7LXdlYmtpdC1hbmltYXRpb246Zmx5b3V0LXRvbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjpmbHlvdXQtdG9sZWZ0IDAuN3MgMC4zcyAxIGVhc2Utb3V0IGZvcndhcmRzfSNyZXZlYWwtaW1wcmludCwjcmV2ZWFsLXBvbGljeXtvcGFjaXR5OjA7YW5pbWF0aW9uOmFwcGVhciAwLjVzICAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmFwcGVhciAwLjVzICAxIGVhc2Utb3V0IGZvcndhcmRzOy1tb3otYW5pbWF0aW9uOmFwcGVhciAwLjVzICAxIGVhc2Utb3V0IGZvcndhcmRzfS5sb2dvLWdyZWVuLmFwcGVhciwubG9nby13aGl0ZS5hcHBlYXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7b3BhY2l0eTowO2FuaW1hdGlvbjphcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkczstd2Via2l0LWFuaW1hdGlvbjphcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjphcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkc30ubG9nby1ncmVlbi5kaXNhcHBlYXIsLmxvZ28td2hpdGUuZGlzYXBwZWFye2Rpc3BsYXk6bm9uZTtvcGFjaXR5OjA7YW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzOy1tb3otYW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzfS5pY24tYmFjay5hcHBlYXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7b3BhY2l0eTowO2FuaW1hdGlvbjphcHBlYXIgMXMgMC41cyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmFwcGVhciAxcyAwLjVzIDEgZWFzZS1vdXQgZm9yd2FyZHM7LW1vei1hbmltYXRpb246YXBwZWFyIDFzIDAuNXMgMSBlYXNlLW91dCBmb3J3YXJkc30uaWNuLWJhY2suZGlzYXBwZWFye2Rpc3BsYXk6bm9uZTtvcGFjaXR5OjA7YW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzOy1tb3otYW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzfS53cmFwcGVyLW1haW4uYXBwZWFyLWJsYWNrOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtiYWNrZ3JvdW5kOiMwMDA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLXNpemU6MTAwJSBhdXRvO2FuaW1hdGlvbjphcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkczstd2Via2l0LWFuaW1hdGlvbjphcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkczstbW96LWFuaW1hdGlvbjphcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkc30ud3JhcHBlci1tYWluLmRpc2FwcGVhci1ibGFjazo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDojMDAwO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzOy13ZWJraXQtYW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzOy1tb3otYW5pbWF0aW9uOmRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzfS53cmFwcGVyLW1haW57aGVpZ2h0OjEwMCU7bWluLWhlaWdodDozMjBweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7YmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYmctaW50cm8uanBnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO2JhY2tncm91bmQtc2l6ZToxMDAlIGF1dG87LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LW1vei1iYWNrZ3JvdW5kLXNpemU6Y292ZXI7LW8tYmFja2dyb3VuZC1zaXplOmNvdmVyO2JhY2tncm91bmQtc2l6ZTpjb3Zlcn1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKXsud3JhcHBlci1tYWlue2JhY2tncm91bmQtcG9zaXRpb24teDo3MCV9fXNlY3Rpb24uc2VjdGlvbi1pbnRyb3tkaXNwbGF5Om5vbmV9c2VjdGlvbi5zZWN0aW9uLWludHJvLmRpc3BsYXl7ZGlzcGxheTpibG9ja31AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKXtzZWN0aW9uLnNlY3Rpb24taW50cm8gLndyYXBwZXItc2VjdGlvbi1jb250ZW50e3BhZGRpbmctdG9wOmNhbGMoMzJ2aCl9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCl7c2VjdGlvbi5zZWN0aW9uLWludHJvIC53cmFwcGVyLXNlY3Rpb24tY29udGVudHtwYWRkaW5nLXRvcDpjYWxjKDI1dmgpICFpbXBvcnRhbnR9fXNlY3Rpb24uc2VjdGlvbi1jb250YWN0e2Rpc3BsYXk6bm9uZTt6LWluZGV4OjQ7cGFkZGluZy1ib3R0b206MTVweH1zZWN0aW9uLnNlY3Rpb24tY29udGFjdC5kaXNwbGF5e2Rpc3BsYXk6YmxvY2t9c2VjdGlvbi5zZWN0aW9uLWNvbnRhY3QgLndyYXBwZXItaWNuLWJhY2t7cG9zaXRpb246cmVsYXRpdmV9c2VjdGlvbi5zZWN0aW9uLWNvbnRhY3QgLndyYXBwZXItaWNuLWJhY2sgLmljbi1iYWNre3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1nL2Fycm93LWJhY2suc3ZnKTtiYWNrZ3JvdW5kLXNpemU6NzUlIDc1JTt3aWR0aDo2MHB4O2hlaWdodDo2MHB4O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtsZWZ0OjVweDt0b3A6MHB4fXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC53cmFwcGVyLWljbi1iYWNrIC5pY24tYmFjazpob3ZlcntjdXJzb3I6cG9pbnRlcn1zZWN0aW9uLnNlY3Rpb24tY29udGFjdCAuY29weS1jb250YWN0LHNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5jb250YWN0LWRhdGF7b3BhY2l0eTowfXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5jb3B5LWNvbnRhY3R7Y29sb3I6I2ZmZjtwb3NpdGlvbjpyZWxhdGl2ZX1zZWN0aW9uLnNlY3Rpb24tY29udGFjdCAuY29weS1jb250YWN0IC5jb3B5LWJyZWFre21hcmdpbi10b3A6MTBweDtkaXNwbGF5OmJsb2NrfXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5jb250YWN0LWRhdGF7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDoxMjBweH1zZWN0aW9uLnNlY3Rpb24tY29udGFjdCAuY29udGFjdC1kYXRhIC5jb250YWN0LWdyb3Vwe3Bvc2l0aW9uOnJlbGF0aXZlfXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5jb250YWN0LWRhdGEgLmNvbnRhY3QtZ3JvdXAgaHJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0zN3B4O2xlZnQ6LTMwcHg7d2lkdGg6NjBweDtib3JkZXItYm90dG9tOjNweCBzb2xpZCAjZmZmO2NvbG9yOiNmZmZ9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSl7c2VjdGlvbi5zZWN0aW9uLWNvbnRhY3QgLmNvbnRhY3QtZGF0YSAuY29udGFjdC1ncm91cCBocntsZWZ0Oi0yMnB4O3dpZHRoOjUwcHh9fXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5jb250YWN0LWRhdGEgLmNvbnRhY3QtZ3JvdXAgcHtjb2xvcjojZDJkYzZhO2ZvbnQtc2l6ZTouNjg3NXJlbTtsaW5lLWhlaWdodDouODEyNXJlbTtmb250LWZhbWlseTpcInBvcHBpbnMtbWVkaXVtXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6bm9ybWFsO21hcmdpbi10b3A6NXB4O21hcmdpbi1ib3R0b206NXB4fXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5jb250YWN0LWRhdGEgLmNvbnRhY3QtZ3JvdXAgcCBhOmhvdmVye2NvbG9yOiNmZmZ9c2VjdGlvbi5zZWN0aW9uLWNvbnRhY3QgLmNvbnRhY3QtZGF0YSAuY29udGFjdC1ncm91cCBwIC5waG9uZS1pbmRpY2F0b3J7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6NDBweH1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKXtzZWN0aW9uLnNlY3Rpb24tY29udGFjdCAuY29udGFjdC1kYXRhIC5jb250YWN0LWdyb3VwOmZpcnN0LWNoaWxke21hcmdpbi1ib3R0b206MjBweH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSl7c2VjdGlvbi5zZWN0aW9uLWNvbnRhY3QgLmNvbnRhY3QtZGF0YXtwYWRkaW5nLXRvcDo1dmh9fXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5saW5rbGlzdHttYXJnaW4tdG9wOi0yMHB4O2NvbG9yOmdyYXl9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSl7c2VjdGlvbi5zZWN0aW9uLWNvbnRhY3QgLmxpbmtsaXN0e21hcmdpbi10b3A6MH19c2VjdGlvbi5zZWN0aW9uLWNvbnRhY3QgLmxpbmtsaXN0IGF7Y29sb3I6Z3JheX1zZWN0aW9uLnNlY3Rpb24tY29udGFjdCAubGlua2xpc3QgYTpob3Zlcntjb2xvcjojZmZmfXNlY3Rpb24uc2VjdGlvbi1jb250YWN0IC5saW5rbGlzdCBhOmZvY3Vze2JvcmRlcjpub25lO291dGxpbmU6bm9uZX1zZWN0aW9uIC53cmFwcGVyLXNlY3Rpb24tY29udGVudHtwYWRkaW5nLXRvcDpjYWxjKDEwdmggKyA3MHB4KX1zZWN0aW9uIC5saW5rbGlzdHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4Ojk7bWFyZ2luOjA7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtZmFtaWx5OlwicG9wcGlucy1leHRyYWJvbGRcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDpub3JtYWw7ZmxvYXQ6cmlnaHR9c2VjdGlvbiAubGlua2xpc3Q6OmJlZm9yZSxzZWN0aW9uIC5saW5rbGlzdDo6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OicgJztmbGV4LWJhc2lzOjA7b3JkZXI6MX1zZWN0aW9uIC5saW5rbGlzdDo6YWZ0ZXJ7Y2xlYXI6Ym90aH1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKXtzZWN0aW9uIC5saW5rbGlzdHtmbG9hdDpsZWZ0fX1zZWN0aW9uIC5saW5rbGlzdCBsaXtsaXN0LXN0eWxlOm5vbmU7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnJldmVhbC1vdmVybGF5e2JhY2tncm91bmQtY29sb3I6I2ZmZjtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjMwfS5yZXZlYWwtb3ZlcmxheSAubG9nby1iYXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuOSl9LnJldmVhbC1vdmVybGF5IC5sb2dvLWJhciAubG9nby1ncmVlbi12aXNpYmxle2JhY2tncm91bmQtaW1hZ2U6dXJsKC4uL2ltZy9sb2dvLXN0YW4tZ3JlZW4uc3ZnKTt3aWR0aDoxOTBweDtoZWlnaHQ6NTBweDtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSl7LnJldmVhbC1vdmVybGF5IC5sb2dvLWJhciAubG9nby1ncmVlbi12aXNpYmxle2JhY2tncm91bmQtc2l6ZTo3NSUgNzUlfX1AbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogNzY4cHgpey5yZXZlYWwtb3ZlcmxheSAubG9nby1iYXIgLmxvZ28tZ3JlZW4tdmlzaWJsZXtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlfX0ucmV2ZWFsLW92ZXJsYXkgLmgye3BhZGRpbmctdG9wOmNhbGMoMTB2aCArIDcwcHgpO3Bvc2l0aW9uOnJlbGF0aXZlfS5yZXZlYWwtb3ZlcmxheSAuaDIgaHJ7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo1O2JvdHRvbTotMjVweDtsZWZ0Oi0zMHB4O3dpZHRoOjYwcHg7Ym9yZGVyLWJvdHRvbTozcHggc29saWQgI2QyZGM2YX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKXsucmV2ZWFsLW92ZXJsYXkgLmgyIGhye2xlZnQ6LTIycHg7d2lkdGg6NTBweH19LnJldmVhbC1vdmVybGF5IC5jb3B5LWltcHJpbnR7bWFyZ2luLXRvcDo0MHB4O2NvbG9yOiMwMDB9LnJldmVhbC1vdmVybGF5IC5saW5rbGlzdHtjb2xvcjojNGM0YzRjfS5yZXZlYWwtb3ZlcmxheSAubGlua2xpc3QgYXtjb2xvcjojNGM0YzRjfS5yZXZlYWwtb3ZlcmxheSAud3JhcHBlci1jbG9zZXt3aWR0aDoxMDAlO21heC13aWR0aDoxMzY2cHh9LnJldmVhbC1vdmVybGF5IC53cmFwcGVyLWNsb3NlIC5jbG9zZS1idXR0b257cGFkZGluZzoxMHB4IDA7ei1pbmRleDo0MDtwb3NpdGlvbjpmaXhlZDt0b3A6MTA1cHg7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtZmFtaWx5OlwicG9wcGlucy1leHRyYWJvbGRcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtmb250LXdlaWdodDpub3JtYWw7Y29sb3I6IzRjNGM0YztyaWdodDoxMHZ3fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pey5yZXZlYWwtb3ZlcmxheSAud3JhcHBlci1jbG9zZSAuY2xvc2UtYnV0dG9ue3JpZ2h0OjEwcHg7dG9wOjUwcHh9fS5yZXZlYWwtb3ZlcmxheSAud3JhcHBlci1jbG9zZSAuY2xvc2UtYnV0dG9uOmZvY3Vze291dGxpbmU6bm9uZX0ucmV2ZWFsLW92ZXJsYXkgLndyYXBwZXItY2xvc2UgLmNsb3NlLWJ1dHRvbjpob3ZlcntjdXJzb3I6cG9pbnRlcjtjb2xvcjojMDAwfS5yZXZlYWwtb3ZlcmxheSAubG9nb3twYWRkaW5nOjMwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuOSl9I3JldmVhbC1pbXByaW50LCNyZXZlYWwtcG9saWN5e21pbi1oZWlnaHQ6MTAwdmh9I3JldmVhbC1pbXByaW50OmZvY3VzLCNyZXZlYWwtcG9saWN5OmZvY3Vze291dGxpbmU6bm9uZX0jcmV2ZWFsLXBvbGljeXtwYWRkaW5nLWJvdHRvbToxMDBweH1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gLjAwMTI1O1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgfVxuICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cblxuLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4vLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG4vLyBUaGlzIHNob3VsZCBiZSBpbiB0aGUgc2FtZSBicmVha3BvaW50IHRoZW4gYEBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGhgXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcblxuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRyZXZlYWwtcGFkZGluZztcblxuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICAvLyBFeHRlbmRzIG11c3QgYmUgbWFkZSBvdXRzaWRlIG9mIGJyZWFrcG9pbnRzIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbmV3ZXIgU2FzcyB2ZXJzaW9ucyAobGlic2FzcyB2My41KVxuICBAZXh0ZW5kICVyZXZlYWwtY2VudGVyZWQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXNjcmVlbiBtb2RhbCwgd2hpY2ggc3RyZXRjaGVzIHRoZSBmdWxsIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIHdpbmRvdy5cbkBtaXhpbiByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbiB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcblxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmV2ZWFsIHtcblxuICAvLy8gRGlzYWJsZXMgdGhlIHNjcm9sbCB3aGVuIFJldmVhbCBpcyBzaG93biB0byBwcmV2ZW50IHRoZSBiYWNrZ3JvdW5kIGZyb20gc2hpZnRpbmdcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICAgICYuemYtaGFzLXNjcm9sbCB7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgfVxuXG4gICAgYm9keSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC8vIE92ZXJsYXlcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBAaW5jbHVkZSByZXZlYWwtb3ZlcmxheTtcbiAgfVxuXG4gIC8vIE1vZGFsIGNvbnRhaW5lclxuICAucmV2ZWFsIHtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoJHJldmVhbC13aWR0aCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMTAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW5vcm1hbGl6ZSgpIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8vIERvY3VtZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cblxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxuICB9XG5cbiAgLy8gU2VjdGlvbnNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAvLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLy8gR3JvdXBpbmcgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gIC8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAvLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyAvLyAxXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy9cclxuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxyXG4vL1xyXG4vLyAgIDEuIEdsb2JhbFxyXG4vLyAgIDIuIEJyZWFrcG9pbnRzXHJcbi8vICAgMy4gVGhlIEdyaWRcclxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gICA2LiBBYmlkZVxyXG4vLyAgIDcuIEFjY29yZGlvblxyXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XHJcbi8vICAgOS4gQmFkZ2VcclxuLy8gIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAgMTEuIEJ1dHRvblxyXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAgMTMuIENhbGxvdXRcclxuLy8gIDE0LiBDYXJkXHJcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vICAxNi4gRHJpbGxkb3duXHJcbi8vICAxNy4gRHJvcGRvd25cclxuLy8gIDE4LiBEcm9wZG93biBNZW51XHJcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcclxuLy8gIDIwLiBGb3Jtc1xyXG4vLyAgMjEuIExhYmVsXHJcbi8vICAyMi4gTWVkaWEgT2JqZWN0XHJcbi8vICAyMy4gTWVudVxyXG4vLyAgMjQuIE1ldGVyXHJcbi8vICAyNS4gT2ZmLWNhbnZhc1xyXG4vLyAgMjYuIE9yYml0XHJcbi8vICAyNy4gUGFnaW5hdGlvblxyXG4vLyAgMjguIFByb2dyZXNzIEJhclxyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XHJcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXHJcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcclxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXHJcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xyXG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxyXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXHJcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxyXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcclxuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXHJcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXHJcbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cclxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcclxuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXHJcbi8vICA0Ny4gUmV2ZWFsXHJcbi8vICA0OC4gU2xpZGVyXHJcbi8vICA0OS4gU3dpdGNoXHJcbi8vICA1MC4gVGFibGVcclxuLy8gIDUxLiBUYWJzXHJcbi8vICA1Mi4gVGh1bWJuYWlsXHJcbi8vICA1My4gVGl0bGUgQmFyXHJcbi8vICA1NC4gVG9vbHRpcFxyXG4vLyAgNTUuIFRvcCBCYXJcclxuLy8gIDU2LiBYeSBHcmlkXHJcblxyXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xyXG5cclxuLy8gMS4gR2xvYmFsXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XHJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyNjYpO1xyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcclxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxyXG4gIHByaW1hcnk6ICNkMmRjNmEsXHJcbiAgc2Vjb25kYXJ5OiAjMDAwMDAwLFxyXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXHJcbiAgd2FybmluZzogI2ZmYWUwMCxcclxuICBhbGVydDogI2NjNGIzNyxcclxuKTtcclxuJGxpZ2h0LWdyYXk6ICM4MDgwODA7XHJcbiRtZWRpdW0tZ3JheTogIzgwODA4MDtcclxuJGRhcmstZ3JheTogIzRjNGM0YztcclxuJGJsYWNrOiAjMDAwMDAwO1xyXG4kd2hpdGU6ICNmZmZmZmY7XHJcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xyXG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcclxuJGdsb2JhbC1tYXJnaW46IDFyZW07XHJcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbTtcclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XHJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XHJcbiRnbG9iYWwtcmFkaXVzOiAwO1xyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XHJcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XHJcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcclxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xyXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XHJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XHJcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcclxuXHJcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcclxuJHByaW50LWhyZWZzOiB0cnVlO1xyXG5cclxuLy8gMi4gQnJlYWtwb2ludHNcclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRicmVha3BvaW50czogKFxyXG4gIHNtYWxsOiAwLFxyXG4gIG1lZGl1bTogNjQwcHgsXHJcbiAgbGFyZ2U6IDEwMjRweCxcclxuICB4bGFyZ2U6IDEyMDBweCxcclxuICB4eGxhcmdlOiAxNDQwcHgsXHJcbik7XHJcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcclxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSB4bGFyZ2UpO1xyXG5cclxuLy8gMy4gVGhlIEdyaWRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcclxuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxyXG4gIHNtYWxsOiAyMHB4LFxyXG4gIG1lZGl1bTogMzBweCxcclxuKTtcclxuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XHJcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xyXG4kYmxvY2stZ3JpZC1tYXg6IDg7XHJcblxyXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcclxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XHJcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XHJcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJGhlYWRlci1zdHlsZXM6IChcclxuc21hbGw6IChcclxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNjApLFxyXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMClcclxuICApLFxyXG4gIG1lZGl1bTogKFxyXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA2MCksXHJcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKVxyXG4gICksXHJcbiAgbGFyZ2U6IChcclxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMTI4KSxcclxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApXHJcbiAgKSxcclxuKTtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kc21hbGwtZm9udC1zaXplOiA4MCU7XHJcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XHJcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XHJcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XHJcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XHJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcclxuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XHJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XHJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XHJcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xyXG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XHJcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcclxuXHJcbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xyXG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XHJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XHJcblxyXG4vLyA2LiBBYmlkZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGFiaWRlLWlucHV0czogdHJ1ZTtcclxuJGFiaWRlLWxhYmVsczogdHJ1ZTtcclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuXHJcbi8vIDcuIEFjY29yZGlvblxyXG4vLyAtLS0tLS0tLS0tLS1cclxuXHJcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XHJcblxyXG4vLyA4LiBBY2NvcmRpb24gTWVudVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XHJcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcclxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XHJcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcclxuXHJcbi8vIDkuIEJhZGdlXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xyXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XHJcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XHJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcclxuXHJcbi8vIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XHJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XHJcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XHJcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDExLiBCdXR0b25cclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcclxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtO1xyXG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XHJcbiRidXR0b24tZmlsbDogc29saWQ7XHJcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcclxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xyXG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4O1xyXG4kYnV0dG9uLXNpemVzOiAoXHJcbiAgdGlueTogMC42cmVtLFxyXG4gIHNtYWxsOiAwLjc1cmVtLFxyXG4gIGRlZmF1bHQ6IDAuOXJlbSxcclxuICBsYXJnZTogMS4yNXJlbSxcclxuKTtcclxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XHJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcclxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcclxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZTtcclxuXHJcbi8vIDEyLiBCdXR0b24gR3JvdXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcclxuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XHJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xyXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XHJcblxyXG4vLyAxMy4gQ2FsbG91dFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcclxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XHJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XHJcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xyXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcclxuXHJcbi8vIDE0LiBDYXJkXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG4kY2FyZC1zaGFkb3c6IG5vbmU7XHJcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG5cclxuLy8gMTUuIENsb3NlIEJ1dHRvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXHJcbiAgc21hbGw6IDAuNjZyZW0sXHJcbiAgbWVkaXVtOiAxcmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXHJcbiAgc21hbGw6IDAuMzNlbSxcclxuICBtZWRpdW06IDAuNXJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLXNpemU6IChcclxuICBzbWFsbDogMS41ZW0sXHJcbiAgbWVkaXVtOiAyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xyXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xyXG5cclxuLy8gMTYuIERyaWxsZG93blxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XHJcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XHJcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xyXG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XHJcblxyXG4vLyAxNy4gRHJvcGRvd25cclxuLy8gLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XHJcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XHJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZHJvcGRvd24tc2l6ZXM6IChcclxuICB0aW55OiAxMDBweCxcclxuICBzbWFsbDogMjAwcHgsXHJcbiAgbGFyZ2U6IDQwMHB4LFxyXG4pO1xyXG5cclxuLy8gMTguIERyb3Bkb3duIE1lbnVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xyXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcclxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XHJcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsO1xyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XHJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XHJcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xyXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcclxuXHJcbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcclxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcclxuXHJcbi8vIDIwLiBGb3Jtc1xyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XHJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XHJcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XHJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xyXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGlucHV0LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xyXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XHJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xyXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XHJcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcclxuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xyXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XHJcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XHJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIxLiBMYWJlbFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XHJcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcclxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIyLiBNZWRpYSBPYmplY3RcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xyXG5cclxuLy8gMjMuIE1lbnVcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRtZW51LW1hcmdpbjogMDtcclxuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XHJcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xyXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XHJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcclxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWU7XHJcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xyXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcclxuXHJcbi8vIDI0LiBNZXRlclxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRtZXRlci1oZWlnaHQ6IDFyZW07XHJcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XHJcblxyXG4vLyAyNS4gT2ZmLWNhbnZhc1xyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJG9mZmNhbnZhcy1zaXplczogKFxyXG4gIHNtYWxsOiAyNTBweCxcclxuKTtcclxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxyXG4gIHNtYWxsOiAyNTBweCxcclxuKTtcclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4O1xyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XHJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xyXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcclxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcclxuXHJcbi8vIDI2LiBPcmJpdFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xyXG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XHJcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XHJcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xyXG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xyXG5cclxuLy8gMjcuIFBhZ2luYXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XHJcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XHJcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XHJcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xyXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XHJcblxyXG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XHJcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXHJcbiAgZG93bixcclxuICB1cCxcclxuICByaWdodCxcclxuICBsZWZ0XHJcbik7XHJcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xyXG4kcHJvdG90eXBlLWFycm93LWNvbG9yOiAkYmxhY2s7XHJcblxyXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG5cclxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuXHJcbi8vIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1ib3JkZXJlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcclxuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XHJcbiRwcm90b3R5cGUtYm9yZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcblxyXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLWRpc3BsYXk6IChcclxuICBpbmxpbmUsXHJcbiAgaW5saW5lLWJsb2NrLFxyXG4gIGJsb2NrLFxyXG4gIHRhYmxlLFxyXG4gIHRhYmxlLWNlbGxcclxuKTtcclxuXHJcbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpO1xyXG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG5cclxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcclxuICBkaXNjLFxyXG4gIGNpcmNsZSxcclxuICBzcXVhcmVcclxuKTtcclxuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcclxuICBkZWNpbWFsLFxyXG4gIGxvd2VyLWFscGhhLFxyXG4gIGxvd2VyLWxhdGluLFxyXG4gIGxvd2VyLXJvbWFuLFxyXG4gIHVwcGVyLWFscGhhLFxyXG4gIHVwcGVyLWxhdGluLFxyXG4gIHVwcGVyLXJvbWFuXHJcbik7XHJcblxyXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLW92ZXJmbG93OiAoXHJcbiAgdmlzaWJsZSxcclxuICBoaWRkZW4sXHJcbiAgc2Nyb2xsXHJcbik7XHJcblxyXG4vLyAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtcG9zaXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoXHJcbiAgc3RhdGljLFxyXG4gIHJlbGF0aXZlLFxyXG4gIGFic29sdXRlLFxyXG4gIGZpeGVkXHJcbik7XHJcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xyXG5cclxuLy8gMzguIFByb3RvdHlwZSBSb3VuZGVkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1yb3VuZGVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcclxuXHJcbi8vIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNlcGFyYXRvci1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtO1xyXG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XHJcblxyXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAwIDJweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpO1xyXG5cclxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zaXppbmc6IChcclxuICB3aWR0aCxcclxuICBoZWlnaHRcclxuKTtcclxuJHByb3RvdHlwZS1zaXplczogKFxyXG4gIDI1OiAyNSUsXHJcbiAgNTA6IDUwJSxcclxuICA3NTogNzUlLFxyXG4gIDEwMDogMTAwJVxyXG4pO1xyXG5cclxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50OiAzO1xyXG5cclxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC1kZWNvcmF0aW9uOiAoXHJcbiAgb3ZlcmxpbmUsXHJcbiAgdW5kZXJsaW5lLFxyXG4gIGxpbmUtdGhyb3VnaFxyXG4pO1xyXG5cclxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxyXG4gIGxvd2VyY2FzZSxcclxuICB1cHBlcmNhc2UsXHJcbiAgY2FwaXRhbGl6ZVxyXG4pO1xyXG5cclxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xyXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcclxuICBkZWZhdWx0OiA0IGJ5IDMsXHJcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcclxuKTtcclxuXHJcbi8vIDQ3LiBSZXZlYWxcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRyZXZlYWwtd2lkdGg6IDEwMHZ3O1xyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xyXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xyXG5cclxuLy8gNDguIFNsaWRlclxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XHJcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XHJcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyA0OS4gU3dpdGNoXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcclxuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XHJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xyXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gNTAuIFRhYmxlXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcclxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XHJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XHJcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XHJcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtc3RyaXBlOiBldmVuO1xyXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XHJcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xyXG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xyXG5cclxuLy8gNTEuIFRhYnNcclxuLy8gLS0tLS0tLS1cclxuXHJcbiR0YWItbWFyZ2luOiAwO1xyXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xyXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuXHJcbi8vIDUyLiBUaHVtYm5haWxcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGU7XHJcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XHJcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xyXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XHJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDUzLiBUaXRsZSBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XHJcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xyXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xyXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xyXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xyXG5cclxuLy8gNTQuIFRvb2x0aXBcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XHJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyA1NS4gVG9wIEJhclxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XHJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XHJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xyXG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xyXG5cclxuLy8gNTYuIFh5IEdyaWRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiR4eS1ncmlkOiB0cnVlO1xyXG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XHJcbiRncmlkLWNvbHVtbnM6IDEyO1xyXG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxyXG4gIHNtYWxsOiAyMHB4LFxyXG4gIG1lZGl1bTogMzBweFxyXG4pO1xyXG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzO1xyXG4kZ3JpZC1jb250YWluZXItcGFkZGluZzogJGdyaWQtcGFkZGluZy1ndXR0ZXJzO1xyXG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xyXG4keHktYmxvY2stZ3JpZC1tYXg6IDg7XHJcblxyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIE91dHB1dHMgQ1NTIGNsYXNzZXMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIGZvdW5kYXRpb24tZ3JpZChcbiAgJHJvdzogJ3JvdycsXG4gICRjb2x1bW46ICdjb2x1bW4nLFxuICAkY29sdW1uLXJvdzogJ2NvbHVtbi1yb3cnLFxuICAkZ3V0dGVyOiAnZ3V0dGVyJyxcbiAgJHB1c2g6ICdwdXNoJyxcbiAgJHB1bGw6ICdwdWxsJyxcbiAgJGNlbnRlcjogJ2NlbnRlcmVkJyxcbiAgJHVuY2VudGVyOiAndW5jZW50ZXJlZCcsXG4gICRjb2xsYXBzZTogJ2NvbGxhcHNlJyxcbiAgJHVuY29sbGFwc2U6ICd1bmNvbGxhcHNlJyxcbiAgJG9mZnNldDogJ29mZnNldCcsXG4gICRlbmQ6ICdlbmQnLFxuICAkZXhwYW5kZWQ6ICdleHBhbmRlZCcsXG4gICRibG9jazogJ2Jsb2NrJ1xuKSB7XG4gIC8vIFJvd1xuICAuI3skcm93fSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAvLyBDb2xsYXBzaW5nXG4gICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cbiAgICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCAoZnVsbC13aWR0aCkgcm93XG4gICAgJi4jeyRleHBhbmRlZH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLiN7JGV4cGFuZGVkfSkgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgIEBpZiB0eXBlLW9mKCRncmlkLWNvbHVtbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgIC8vIFN0YXRpYyAodW5yZXNwb25zaXZlKSByb3cgZ3V0dGVyc1xuICAgICAgLy9cbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGdyaWQtY29sdW1uLWd1dHRlciB7XG4gICAgICAgICYuI3skZ3V0dGVyfS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLiN7JGNvbHVtbn0ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sO1xuXG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICYuI3skZW5kfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAuI3skcm93fSAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIENvbHVtbiB3aWR0aFxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICAgIEBpZiAkaSA8ICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLSRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LSN7JG9mZnNldH0tI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksICcuI3skY29sdW1ufScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9LFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC4jeyRjb2x1bW59LSN7JGJsb2NrfSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicgYW5kIGhhcy12YWx1ZSgkZ3JpZC1jb2x1bW4tYWxpYXMpIHtcbiAgICAuI3skZ3JpZC1jb2x1bW4tYWxpYXN9IHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBsaXN0IG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiAod2l0aG91dCBxdW90ZXMpIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIFBvc2l0aW9uXG4gIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhhdXRvKTtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIEl0IGNhbiBiZTpcbi8vLyAgICogQSBudW1iZXI6IFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50XG4vLy8gICAgIHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZVxuLy8vICAgICBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuXG4vLy8gICAqIGBjZW50ZXJgOiBDb2x1bW4gd2lsbCBiZSBjZW50ZXJlZFxuLy8vICAgKiBgYXV0b2A6IENvbHVtbiB3aWxsIGJlIHB1c2hlZCB0byB0aGUgbGVmdCAob3IgdG8gdGhlIHJpZ2h0IGZvciB0aGUgbGFzdCBjb2x1bW4pLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICAvLyBBdXRvIHBvc2l0aW9uaW5nXG4gIEBpZiAkcG9zaXRpb24gPT0gYXV0byB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHVzaC9wdWxsXG4gIEBlbHNlIGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgJG9mZnNldDogcGVyY2VudGFnZSgkcG9zaXRpb24gLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuXG4gIC8vIENlbnRlciBwb3NpdGlvbmluZ1xuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBcImNlbnRlclwiIG9yIFwiYXV0b1wiLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oYXV0byk7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jb2x1bW4nXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGd1dHRlclxuLy8vICAgVGhlIGd1dHRlciB0byBhcHBseSB0byBjaGlsZCBlbGVtZW50cy4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtICRncmlkLWNvbHVtbi1ndXR0ZXIgd2lsbCB1c2UgdGhlIHZhbHVlcyBpbiB0aGUgJGdyaWQtY29sdW1uLWd1dHRlciBtYXAsIGluY2x1ZGluZyBicmVha3BvaW50IHNpemVzLlxuLy8vICAgLSBBIGZpeGVkIG51bWVyaWMgdmFsdWUgd2lsbCBhcHBseSB0aGlzIGd1dHRlciB0byBhbGwgYnJlYWtwb2ludHMuXG5AbWl4aW4gZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJyxcbiAgJGd1dHRlcjogbnVsbFxuKSB7XG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICAvLyBJZiBhICRndXR0ZXIgdmFsdWUgaXMgcGFzc2VkXG4gICAgQGlmKCRndXR0ZXIpIHtcbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3V0dGVyIHtcbiAgICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAvIDI7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdudW1iZXInIGFuZCBzdHJpcC11bml0KCRndXR0ZXIpID4gMCB7XG4gICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkZ3V0dGVyKSAvIDI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoI3skbn1uKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBleHRyYSBDU1MgdG8gYmxvY2sgZ3JpZCBjaGlsZHJlbiBzbyB0aGUgbGFzdCBpdGVtcyBpbiB0aGUgcm93IGNlbnRlciBhdXRvbWF0aWNhbGx5LiBBcHBseSB0aGlzIHRvIHRoZSBjb2x1bW5zLCBub3QgdGhlIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBpdGVtcyB0aGF0IGFwcGVhciBpbiBlYWNoIHJvdy5cbkBtaXhpbiBncmlkLWxheW91dC1jZW50ZXItbGFzdCgkbikge1xuICBAZm9yICRpIGZyb20gMSB0byAkbiB7XG4gICAgQGlmICRpID09IDEge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gMTAwLyRuICogJGkpIC8gMiAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5cyBuZXh0IHRvIGFsbCBsaW5rcyB0aGVpciBcImhyZWZcIiB3aGVuIHByaW50ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICB0YWJsZS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB0aGVhZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRyLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB0ZC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAvLyBEaXNwbGF5IHRoZSBVUkwgb2YgYSBsaW5rIGFmdGVyIHRoZSB0ZXh0XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTt9XG4gICAgQGlmICRwcmludC1ocmVmcyB7XG4gICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuICAgIH1cblxuICAgIC8vIERvbid0IGRpc3BsYXkgdGhlIFVSTCBmb3IgaW1hZ2VzIG9yIEphdmFTY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICAgIGFbaHJlZl49JyMnXTphZnRlciB7IGNvbnRlbnQ6ICcnOyB9XG5cbiAgICAvLyBEaXNwbGF5IHdoYXQgYW4gYWJicmV2aWF0aW9uIHN0YW5kcyBmb3IgYWZ0ZXIgdGhlIHRleHRcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cih0aXRsZSkgJyknOyB9XG5cbiAgICAvLyBQcmV2ZW50IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgYSBibG9ja3F1b3RlIG9yIHByZWZvcm1hdHRlZCB0ZXh0IGJsb2NrXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBoNWJwLmNvbS90XG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBvcnBoYW5zOiAzO1xuICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIC8vIEF2b2lkIHBhZ2UgYnJlYWtzIGFmdGVyIGEgaGVhZGluZ1xuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgIC8vIEhlbHBlciB0byByZS1hbGxvdyBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGNlcnRhaW4gZWxlbWVudHMgKGUuZy4gcHJlLCBibG9ja3F1b3RlLCB0cilcbiAgICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgJixcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuXG4gIEBpZiAkc3R5bGUgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJHN0eWxlID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgQGlmICRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZCB7XG4gICAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBvbmx5KSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1vbmx5LWV4cGFuZGVkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBkb3duKSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWRvd24tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJysnO1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxMyc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb24tbWVudVxuLy8vL1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGFjY29yZGlvbiBtZW51cyBoYXZlIHRoZSBkZWZhdWx0IGFycm93IHN0eWxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gYm9yZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIExpc3RcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCBoZWlnaHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUsICRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMXJlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cbn1cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51IHtcblxuICAuYWNjb3JkaW9uLW1lbnUge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgICBib3JkZXItdG9wOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1yaWdodDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItbGVmdDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4sIHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgbGkge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgfVxuXG4gIC8vIFN1Ym1lbnUgdG9nZ2xlXG4gIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xuXG4gICAgd2lkdGg6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICAgIGhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0O1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI7XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFkZCB0aGUgYXJyb3cgdG8gdGhlIHRvZ2dsZVxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg2cHgsICRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcblxuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJvdGF0ZSB0aGUgYXJyb3cgd2hlbiBtZW51IGlzIG9wZW5cbiAgLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICB9XG5cbiAgLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBpdGVtcyBpbiBhIHBpbGwgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gbWFyZ2luIGZvciBpdGVtcyBpbiBhIHNpbXBsZSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGFuIGljb24gYW5kIHRleHQgaW4gYSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYG1lbnUtY2VudGVyZWRgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIHVzaW5nIGBpY29uLSpgIGNsYXNzZXMgd2l0aG91dCBgLmljb25zYCBjbGFzc2VzXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgdGhpcyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG5cbiAgYSxcbiAgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRtZW51LWl0ZW1zLXBhZGRpbmc7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWxpZ24gbWVudSBpdGVtcy5cbkBtaXhpbiBtZW51LWFsaWduKCRhbGlnbm1lbnQpIHtcbiAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGNlbnRlciB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudS4gVGhpcyBlZmZlY3RzIHRoZSBzaWRlIG9mIHRoZSBgPGxpPmAgdGhhdCByZWNlaXZlcyB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIFskbWVudS1zaW1wbGUtbWFyZ2luXSAtIFRoZSBtYXJnaW4gdG8gYXBwbHkgdG8gZWFjaCBgPGxpPmAuXG5AbWl4aW4gbWVudS1zaW1wbGUoJGRpcjogJGdsb2JhbC1sZWZ0LCAkbWFyZ2luOiAkbWVudS1zaW1wbGUtbWFyZ2luKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tI3skZGlyfTogJG1hcmdpbjtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkbWFyZ2luIFskbWVudS1uZXN0ZWQtbWFyZ2luXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG5lc3RlZC1hbGlnbm1lbnQgW2xlZnRdIC0gQWxpZ25tZW50IG9mIHRoZSBuZXN0ZWQgY2xhc3NcbkBtaXhpbiBtZW51LW5lc3RlZChcbiAgJG1hcmdpbjogJG1lbnUtbmVzdGVkLW1hcmdpbixcbiAgJG5lc3RlZC1hbGlnbm1lbnQ6IGxlZnRcbikge1xuICBAaWYgJG5lc3RlZC1hbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWFyZ2luO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG4gIH1cblxufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGljb25zIGluIG1lbnVzLlxuQG1peGluIG1lbnUtaWNvbnMoKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGltZyxcbiAgICBpLFxuICAgIHN2ZyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICArIHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBwb3NpdGlvbiBjbGFzc2VzIGZvciBpY29ucyB3aXRoaW4gYSBtZW51LlxuQG1peGluIG1lbnUtaWNvbi1wb3NpdGlvbigkcG9zaXRpb246IGxlZnQsICRzcGFjaW5nOiAkbWVudS1pY29uLXNwYWNpbmcpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmcgYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIG1lbnUtc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgY29sb3I6ICRtZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZW51IHtcbiAgLm1lbnUge1xuICAgIEBpbmNsdWRlIG1lbnUtYmFzZTtcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIG1vZGlmaWVyIGZvciBob3Jpem9udGFsIG9yaWVudGF0aW9uXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBTaW1wbGVcbiAgICAmLnNpbXBsZSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZTtcbiAgICB9XG5cbiAgICAvLyBCcmVha3BvaW50IHNwZWNpZmljIHZlcnNpb25zXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1zaW1wbGUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCYXNlIFN0eWxlc1xuICAgICYuaWNvbnMge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtaWNvbnMtYmFjay1jb21wYXQge1xuICAgICAgJi5pY29uLXRvcCxcbiAgICAgICYuaWNvbi1yaWdodCxcbiAgICAgICYuaWNvbi1ib3R0b20sXG4gICAgICAmLmljb24tbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWNvbiBMZWZ0XG4gICAgJi5pY29uLWxlZnQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEljb24gUmlnaHRcbiAgICAmLmljb24tcmlnaHQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHJpZ2h0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFRvcFxuICAgICYuaWNvbi10b3Age1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHRvcCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCb3R0b21cbiAgICAmLmljb24tYm90dG9tIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihib3R0b20pO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgIH1cbiAgICBcbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtc3RhdGUtYmFjay1jb21wYXQge1xuICAgICAgLmFjdGl2ZSA+IGEge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBsZWZ0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtbGVmdH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiByaWdodFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKHJpZ2h0KTtcblxuICAgICAgLm5lc3RlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRuZXN0ZWQtYWxpZ25tZW50OiByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY2VudGVyXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgIH1cblxuICAgIC5tZW51LXRleHQge1xuICAgICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdCB7XG4gICAgLm1lbnUtY2VudGVyZWQge1xuICAgICAgPiAubWVudSB7XG4gICAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC4gKE9ubHkgbmVlZGVkIHdoZW4gJGdsb2JhbC1mbGV4Ym94OiBmYWxzZTspXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERldGVybWluZXMgaWYgJGJ1dHRvbi1yYWRpdXMgaXMgYXBwbGllZCB0byBlYWNoIGJ1dHRvbiBvciB0aGUgYnV0dG9uIGdyb3VwIGFzIGEgd2hvbGUuIFVzZSAkZ2xvYmFsLXJhZGl1cyBpbiBfc2V0dGluZ3Muc2NzcyB0byBjaGFuZ2UgcmFkaXVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZCBzdHlsZXMgZm9yIGEgYnV0dG9uIGdyb3VwIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGNoaWxkLXNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmcgWyRidXR0b25ncm91cC1zcGFjaW5nXSAtIFNwYWNpbmcgYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cChcbiAgJGNoaWxkLXNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZ1xuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtbWFyZ2luO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuXG4gICN7JGNoaWxkLXNlbGVjdG9yfSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICB9XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC13aWR0aCBidXR0b24gZ3JvdXAsIG1ha2luZyBlYWNoIGJ1dHRvbiBlcXVhbCB3aWR0aC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmcgWyRidXR0b25ncm91cC1zcGFjaW5nXSAtIFNwYWNpbmcgYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1leHBhbmQoXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmcsXG4gICRjb3VudDogbnVsbFxuKSB7XG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogLSRzcGFjaW5nO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIE9uZSBjaGlsZFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUd28gb3IgbW9yZSBjaGlsZHJlZW5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXgge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgJiwgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3twZXJjZW50YWdlKDEgLyAkaSl9IC0gI3skc3BhY2luZ30pO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmcgKiAtJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwIHtcbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIEdyb3VwXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcblxuICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG5cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnUge1xuICAvLyBBcHBsaWVkIHRvIHRoZSBNZW51IGNvbnRhaW5lclxuICAuaXMtZHJpbGxkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuYW5pbWF0ZS1oZWlnaHQge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHRvcCBsZXZlbCA8dWw+XG4gIC5kcmlsbGRvd24ge1xuICAgIGEge1xuICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFwcGxpZWQgdG8gc3VibWVudSA8dWw+c1xuICAgIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1Ym1lbnUgaXRlbSBwYWRkaW5nXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJpbGxkb3duLW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtbGVmdCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW1cbiAgICA+IGxpID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW0gYWN0aXZlIHN0YXRlXG4gICAgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDE2KSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN0aWNreSB7XG4gIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLnN0aWNreS5pcy1zdHVjayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmlzLWF0LXRvcCB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdGlja3kuaXMtYW5jaG9yZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aXRsZS1iYXJcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBXZWlnaHRcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhciBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiB0aGUgbWVudSBpY29uIGFuZCB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRpdGxlLWJhciB7XG4gIC50aXRsZS1iYXIge1xuICAgIHBhZGRpbmc6ICR0aXRsZWJhci1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvb2x0aXBcbi8vLy9cblxuLy8vIERlZmF1bHQgY3Vyc29yIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhhcy10aXAtY3Vyc29yOiBoZWxwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIHRvb2x0aXAgdGV4dC4gQnkgZGVmYXVsdCwgd2UgcmVjb21tZW5kIGEgc21hbGxlciBmb250IHNpemUgdGhhbiB0aGUgYm9keSBjb3B5LlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgaGVpZ2h0IGZvciB0b29sdGlwcy4gVGhpcyBpcyBoZWxwZnVsIGZvciBjYWxjdWxhdGluZyB0aGUgZGlzdGFuY2Ugb2YgdGhlIHRvb2x0aXAgZnJvbSB0aGUgdG9vbHRpcCB3b3JkLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gIGZvbnQtd2VpZ2h0OiAkaGFzLXRpcC1mb250LXdlaWdodDtcbiAgY3Vyc29yOiAkaGFzLXRpcC1jdXJzb3I7XG59XG5cbkBtaXhpbiB0b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArICN7JHRvb2x0aXAtcGlwLWhlaWdodH0pO1xuICB6LWluZGV4OiAxMjAwO1xuXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYuYm90dG9tIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYudG9wIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgZG93bik7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBsZWZ0KTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tdG9wOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwJTtcbiAgfVxuXG4gICYuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b29sdGlwIHtcbiAgLmhhcy10aXAge1xuICAgIEBpbmNsdWRlIGhhcy10aXA7XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9wLWJhclxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0b3AgYmFyLiBUaGlzIGNvbG9yIGFsc28gY2FzY2FkZXMgdG8gbWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBzdWJtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuIFVzZWZ1bGwgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIHRyYW5zcGFyZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBmb3IgdGhlIHRvcCBiYXIgdGl0bGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBgPGlucHV0PmAgZWxlbWVudHMgaW5zaWRlIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHRvcCBiYXIgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0b3AgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiB0b3AtYmFyLWNvbnRhaW5lciB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgcGFkZGluZzogJHRvcGJhci1wYWRkaW5nO1xuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgZGlmZmVybnQgZnJvbSAkdG9wYmFyLWJhY2tncm91bmQtc3VibWVudVxuICBAaWYgKCR0b3BiYXItYmFja2dyb3VuZCAhPSAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZCkge1xuICAgIHVsIHVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RyYWluIHdpZHRoIG9mIGlucHV0cyBieSBkZWZhdWx0IHRvIG1ha2UgdGhlbSBlYXNpZXIgdG8gYXJyYW5nZVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAkdG9wYmFyLWlucHV0LXdpZHRoO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICB9XG5cbiAgLy8gVGhlIGFib3ZlIHN0eWxlcyBzaG91bGRuJ3QgYXBwbHkgdG8gaW5wdXQgZ3JvdXAgZmllbGRzXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gIH1cblxuICBpbnB1dC5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvcC1iYXIge1xuICAvLyBUb3AgYmFyIGNvbnRhaW5lclxuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgdG9wLWJhci1jb250YWluZXI7XG5cbiAgICAvLyBTdGFjayBvbiBzbWFsbCBzY3JlZW5zIGJ5IGRlZmF1bHRcbiAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0b3BiYXItdW5zdGFjay1icmVha3BvaW50KSB7XG4gICAgICBAaW5jbHVkZSB0b3AtYmFyLXVuc3RhY2s7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgY2xhc3NlcyBmb3Igc3RhY2tpbmcgb24gZWFjaCBzY3JlZW4gc2l6ZSAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzKVxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgJi5zdGFja2VkLWZvci0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3ViLXNlY3Rpb25zXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuXG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgYm90dG9tOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtanVzdGlmeSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgJi5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiQGZ1bmN0aW9uIC16Zi1mbGV4LWp1c3RpZnkoJHRleHQtZGlyZWN0aW9uKXtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgcGF1c2UtcXVldWUtY2xhc3M6ICdpcy1wYXVzZWQnLFxuICBhY3RpdmF0ZS1xdWV1ZS1jbGFzczogJ2lzLWFuaW1hdGluZycsXG4pICFkZWZhdWx0O1xuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1rZXlmcmFtZXMoJG5hbWUsICRlZmZlY3RzLi4uKSB7XG4gICRvYmo6IC1tdWktcHJvY2Vzcy1hcmdzKCRlZmZlY3RzLi4uKTtcbiAgJG9iajogbWFwLXJlbW92ZSgkb2JqLCBuYW1lKTtcblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAvLyBOb3cgaXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIEBlYWNoICRwY3QsICRwcm9wcyBpbiAkb2JqIHtcbiAgICAgICN7LW11aS1rZXlmcmFtZS1wY3QoJHBjdCl9IHtcbiAgICAgICAgLy8gTGFzdGx5LCBpdGVyYXRlIHRocm91Z2ggZWFjaCBDU1MgcHJvcGVydHkgd2l0aGluIGEgcGVyY2VudGFnZSBhbmQgcHJpbnQgaXQgb3V0XG4gICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJHByb3BzIHtcbiAgICAgICAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc3RyaW5nIGZvciBhIENTUyBrZXlmcmFtZSwgYnkgY29udmVydGluZyBhIGxpc3Qgb2YgbnVtYmVycyB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRpbnB1dCAtIExpc3Qgb2YgbnVtYmVycyB0byB1c2UuXG4vLy8gQHJldHVybiB7U3RyaW5nfSBBIHNldCBvZiBjb21tYS1zZXBhcmF0ZWQgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1wY3QoJGlucHV0KSB7XG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ251bWJlcicge1xuICAgICRvdXRwdXQ6ICgkaW5wdXQgKiAxJSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkaW5wdXQpID09ICdsaXN0JyB7XG4gICAgQGVhY2ggJGkgaW4gJGlucHV0IHtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAoJGkgKiAxJSksIGNvbW1hKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIFwiI3skb3V0cHV0fVwiO1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgLW11aS1pcy1mdW5jdGlvbigkbWFwKSB7XG4gICAgICAkbWFwOiAtbXVpLXNhZmUtY2FsbCgkbWFwKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNsaWRlIHRvLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuIEJ5IGRlZmF1bHQgYGxlZnRgIGFuZCBgcmlnaHRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbnVsbCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBsZWZ0LCByaWdodCkpO1xuICAkc2xpZGU6IHNsaWRlKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgLy8gQ1NTIE91dHB1dFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gT3BhY2l0eSB0byBlbmQgb24uIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IG51bGwsXG4gICR0bzogbnVsbCxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgZWZmZWN0IGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtudWxsXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuIEJ5IGRlZmF1bHQgYGZyb20tYmFja2AgYW5kIGBmcm9tLWZyb250YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbkBmdW5jdGlvbiBoaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogbnVsbFxuKSB7XG4gIC8vIFJvdGF0aW9uIGRpcmVjdGlvbnMgd2hlbiBoaW5naW5nIGZyb20gYmFjayB2cy4gZnJvbnRcbiAgJHJvdGF0aW9uLWFtb3VudDogOTBkZWc7XG4gICRyb3RhdGlvbnMtYmFjazogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICk7XG4gICRyb3RhdGlvbnMtZnJvbTogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICk7XG5cbiAgLy8gUm90YXRpb24gb3JpZ2luXG4gICR0dXJuLW9yaWdpbjogaWYoJHR1cm4tb3JpZ2luICE9IG51bGwsICR0dXJuLW9yaWdpbiwgaWYoJHN0YXRlID09IGluLCBmcm9tLWJhY2ssIGZyb20tZnJvbnQpKTtcbiAgJHJvdGF0aW9uOiAnJztcbiAgQGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWZyb250IHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1mcm9tLCAkZnJvbSk7XG4gIH0gQGVsc2UgaWYgJHR1cm4tb3JpZ2luID09IGZyb20tYmFjayB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtYmFjaywgJGZyb20pO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnJHR1cm4tb3JpZ2luIG11c3QgYmUgZWl0aGVyIFwiZnJvbS1iYWNrXCIgb3IgXCJmcm9tLWZyb250XCInO1xuICB9XG5cbiAgLy8gU3RhcnQgYW5kIGVuZCBzdGF0ZVxuICAkc3RhcnQ6ICcnO1xuICAkZW5kOiAnJztcbiAgQGlmICRzdGF0ZSA9PSBpbiB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgfSBAZWxzZSB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgfVxuXG4gIC8vIFR1cm4gYXhpc1xuICAkb3JpZ2luOiAnJztcbiAgQGlmICRheGlzID09IGVkZ2Uge1xuICAgICRvcmlnaW46ICRmcm9tO1xuICB9IEBlbHNlIHtcbiAgICAkb3JpZ2luOiBjZW50ZXI7XG4gIH1cblxuICAka2V5ZnJhbWVzOiAoXG4gICAgbmFtZTogLW11aS1zdHJpbmctc2FmZSgnaGluZ2UtI3skc3RhdGV9LSN7JGZyb219LSN7JGF4aXN9LSN7JHR1cm4tb3JpZ2lufScpLFxuICAgIDA6ICh0cmFuc2Zvcm06ICRzdGFydCwgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbiksXG4gICAgMTAwOiAodHJhbnNmb3JtOiAkZW5kKSxcbiAgKTtcblxuICBAcmV0dXJuICRrZXlmcmFtZXM7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkdHVybi1vcmlnaW46IGlmKCR0dXJuLW9yaWdpbiAhPSBudWxsLCAkdHVybi1vcmlnaW4sIGlmKCRzdGF0ZSA9PSBpbiwgZnJvbS1iYWNrLCBmcm9tLWZyb250KSk7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBTaXplIHRvIHN0YXJ0IGF0LiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gU2l6ZSB0byBlbmQgYXQuIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS4gQnkgZGVmYXVsdCBgY3dgIGFuZCBgY2N3YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgY3csIGNjdykpO1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiLy8gIFNpdGUgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIFBhdGhzXG4vLyAgIDIuIEZvbnRzXG4vLyAgIDMuIFBhZ2UgQ29udGVudFxuLy8gICA0LiBGb290ZXJcblxuLy8gMS4gUGF0aHNcbi8vIC0tLS0tLS0tLVxuXG4kaW1hZ2UtcGF0aDogXCIuLi9pbWdcIjtcbiRyZXRpbmEtaW1hZ2UtcGF0aDogXCIuLi9pbWcvMnhcIjtcblxuLy8gMi4gRm9udHNcbi8vIC0tLS0tLS0tLVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ3BvcHBpbnMtZXh0cmFib2xkJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvcG9wcGlucy1leHRyYWJvbGQtd2ViZm9udC5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvcG9wcGlucy1leHRyYWJvbGQtd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFib2xkLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFib2xkLXdlYmZvbnQuc3ZnI2ZvbnQtZmFtaWx5LXJlZycpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdwb3BwaW5zLWV4dHJhbGlnaHQnO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9wb3BwaW5zLWV4dHJhbGlnaHQtd2ViZm9udC5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvcG9wcGlucy1leHRyYWxpZ2h0LXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9wb3BwaW5zLWV4dHJhbGlnaHQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvcG9wcGlucy1leHRyYWxpZ2h0LXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3BvcHBpbnMtZXh0cmFsaWdodC13ZWJmb250LnN2ZyNmb250LWZhbWlseS1yZWcnKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAncG9wcGlucy1tZWRpdW0nO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9wb3BwaW5zLW1lZGl1bS13ZWJmb250LmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9wb3BwaW5zLW1lZGl1bS13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvcG9wcGlucy1tZWRpdW0td2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvcG9wcGlucy1tZWRpdW0td2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvcG9wcGlucy1tZWRpdW0td2ViZm9udC5zdmcjZm9udC1mYW1pbHktcmVnJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ3BvcHBpbnMtcmVndWxhcic7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL3BvcHBpbnMtcmVndWxhci13ZWJmb250LmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9wb3BwaW5zLXJlZ3VsYXItd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL3BvcHBpbnMtcmVndWxhci13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9wb3BwaW5zLXJlZ3VsYXItd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvcG9wcGlucy1yZWd1bGFyLXdlYmZvbnQuc3ZnI2ZvbnQtZmFtaWx5LXJlZycpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuXG4vLyAzLiBQYWdlIENvbnRlbnRcbi8vIC0tLS0tLS0tLVxuXG4kcGFnZWNvbnRlbnQtcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiRwYWdlY29udGVudC1wYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuJHBhZ2Vjb250ZW50LXBhZGRpbmctc2lkZTogcmVtLWNhbGMoMTApO1xuXG4vLyA0LiBGb290ZXJcbi8vIC0tLS0tLS0tLVxuXG4kZm9vdGVyLW1pbi1oZWlnaHQ6IHJlbS1jYWxjKDUwKTsiLCIvLyAgR2xvYmFsIFN0eWxlc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gSGVhZGVycyAmIENvcHlcbi8vICAgMi4gTGlua3MgYW5kIEJ1dHRvbnNcbi8vICAgMy4gQmFja2dyb3VuZC1Db2xvcnNcbi8vICAgNC4gSlMgVXRpbGl0aWVzXG5cblxuYm9keXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAmLmlzLXJldmVhbC1vcGVue1xuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgICAgICB3aWR0aDoxMDAlXG4gICAgfVxufVxuXG5cblxuLy8gMS4gSGVhZGVycyAmIENvcHlcbi8vIC0tLS0tLS0tLVxuXG5cbmgxLCAuaDEge1xuXG4gICAgQGluY2x1ZGUgZm9udC1leHRyYWxpZ2h0O1xuICAgIGRpc3BsYXk6IGZsZXg7IC8qIG9yIGlubGluZS1mbGV4ICovXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGhlaWdodDogY2FsYyg4MHZoIC0gNzBweCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pe1xuICAgICAgICBoZWlnaHQ6IDcwdnc7XG4gICAgICAgIC5zaW5nbGUtd29yZC13cmFwcGVye1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41dnchaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDU2OHB4KSB7XG4gICAgICAgIGhlaWdodDogY2FsYyg4MHZoIC0gNzBweCkhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA0ODBweCl7XG4gICAgICAgIGhlaWdodDogY2FsYyg4MHZoIC0gNzBweCkhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc2luZ2xlLXdvcmQtd3JhcHBlcntcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjV2aDtcbiAgICAgICAgLnNpbmdsZS13b3JkeyAgIFxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICYuZWluc3tcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93aXIuc3ZnKTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgICAgJi56d2Vpe1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL21hY2hlbi5zdmcpO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgICAgICAmLmRyZWl7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvbWFya2VuLnN2Zyk7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICAgICYudmllcntcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9lcmxlYmJhci5zdmcpO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgICAgICAmLmZ1ZW5me1xuICAgICAgICAgICAgaGVpZ2h0OiAxMTBweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDowIWltcG9ydGFudDtcbiAgICAgICAgICAgIC5zaW5nbGUtd29yZHtcbiAgICAgICAgICAgICAgICAmLmljbi1uZXh0e1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9hcnJvdy1uZXh0LnN2Zyk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3NSUgNzUlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA0MTBweCl7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAvKiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bil7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2dnc7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZ2dztcbiAgICAgICAgICAgIC5zaW5nbGUtd29yZC13cmFwcGVye1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTR2dztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjV2dztcbiAgICAgICAgICAgICAgICAuc2luZ2xlLXdvcmR7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSB1cCl7XG4gICAgICAgICAgICBmb250LXNpemU6IDEyOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTQwcHg7XG4gICAgICAgICAgICAuc2luZ2xlLXdvcmQtd3JhcHBlcntcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgLnNpbmdsZS13b3Jke1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNTgwcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZ2aCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZ2aCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAuc2luZ2xlLXdvcmQtd3JhcHBlcntcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0dmghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXZoIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAuc2luZ2xlLXdvcmR7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICBcbiAgICBcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDQ4MHB4KXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZ2aCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTZ2aCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAuc2luZ2xlLXdvcmQtd3JhcHBlcntcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0dmghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXZoIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAuc2luZ2xlLXdvcmR7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0qL1xufVxuXG5oMiwgLmgyIHtcbiAgICBAaW5jbHVkZSBmb250LWV4dHJhYm9sZDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbn1cblxuaDMsIC5oMyB7XG4gICAgQGluY2x1ZGUgZm9udC1leHRyYWJvbGQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG59XG5cbnAsIC5jb3B5e1xuICAgIEBpbmNsdWRlIGZvbnQtcmVndWxhcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDQpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKXsgIFxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG59XG4uY29weS1zbWFsbHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjYpO1xuICAgIEBpbmNsdWRlIGZvbnQtcmVndWxhcjtcbn1cblxuYiwgc3Ryb25ne1xuICAgIEBpbmNsdWRlIGZvbnQtZXh0cmFib2xkO1xufVxuXG5cbi8vIDIuIExpbmtzIGFuZCBCdXR0b25zXG4vLyAtLS0tLS0tLS1cblxuYSB7XG5cbn1cblxuYnV0dG9uLCAuYnV0dG9uIHtcblxufVxuXG5cbi8vIDMuIEJhY2tncm91bmQtQ29sb3JzXG4vLyAtLS0tLS0tLS1cblxuLmJnLXByaW1hcnl7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG59XG4uYmctc2Vjb25kYXJ5e1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG59XG4uYmctd2hpdGV7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuLmJnLWJsYWNre1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbn1cbi5iZy1tZWRpdW0tZ3JheXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG59XG4uYmctZGFyay1ncmF5e1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyYXk7XG59XG5cblxuLy8gNC4gSlMgVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS1cblxuLmhpZGRlbi1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4udG9nZ2xlLW1lbnUge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuXG4gICAgLmFjdGlvbi1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC5hY3Rpb24tb3BlbiB7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbi1jbG9zZSB7XG4gICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jazs7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8vICBNaXhpbnNcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEltYWdlc1xuLy8gICAyLiBQbGFjZWhvbGRlclxuLy8gICAzLiBGb250c1xuXG4vLyAxLiBJbWFnZXNcbi8vIC0tLS0tLS0tLVxuXG4vLyBNaXhpbiBmw7xyIFBORy1CaWxkL0ljb24gbWl0IFJldGluYWRhcnN0ZWxsdW5nXG4vLyBQYXJhbWV0ZXIgQmlsZHBmYWQsIEJyZWl0ZSB1bmQgSMO2aGUgKHZvbSBCaWxkYXVzc2Nobml0dCk7IG9wdGlvbmFsIEJyZWl0ZSB1bmQgSMO2aGUgdm9uIGRlciBnZXNhbXRlbiBHcmFmaWtcbi8vIEJlaXNwaWVsOiBAaW5jbHVkZSBpbWFnZS1wbmcoJ2xvZ28nLCAxNDBweCwgNDBweCk7XG5AbWl4aW4gaW1hZ2UtcG5nICgkaW1hZ2UsICR3aWR0aCwgJGhlaWdodCwgJHJldGluYVdpZHRoOiAxMDAlLCAkcmV0aW5hSGVpZ2h0OiBhdXRvKSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skaW1hZ2UtcGF0aH0vI3skaW1hZ2V9LnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSByZXRpbmEtaW1hZ2UtcG5nKCRpbWFnZSwgJHJldGluYVdpZHRoLCAkcmV0aW5hSGVpZ2h0KTtcbn1cblxuLy8gTWl4aW4gZsO8ciBKUEctQmlsZC9JY29uIG1pdCBSZXRpbmFkYXJzdGVsbHVuZ1xuLy8gUGFyYW1ldGVyIEJpbGRwZmFkZSwgQnJlaXRlLCBIw7ZoZVxuLy8gQmVpc3BpZWw6IEBpbmNsdWRlIGltYWdlLWpwZygnbG9nbycsIDE0MHB4LCA0MHB4KTtcbkBtaXhpbiBpbWFnZS1qcGcgKCRpbWFnZSwgJHdpZHRoLCAkaGVpZ2h0KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skaW1hZ2UtcGF0aH0vI3skaW1hZ2V9LmpwZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSByZXRpbmEtaW1hZ2UtanBnKCRpbWFnZSwgMTAwJSwgYXV0byk7XG59XG5cbi8vIE1peGluIGbDvHIgUmV0aW5hZGFyc3RlbGx1bmcgZsO8ciBQTkctQmlsZC9JY29uXG4vLyBQYXJhbWV0ZXIgQmlsZHBmYWRlLCBCcmVpdGUsIEjDtmhlXG4vLyBCZWlzcGllbDogQGluY2x1ZGUgcmV0aW5hLWltYWdlLXBuZygnbG9nbycsIDE0MHB4LCA0MHB4KTtcbkBtaXhpbiByZXRpbmEtaW1hZ2UtcG5nKCRpbWFnZSwgJHdpZHRoLCAkaGVpZ2h0KSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChyZXRpbmEpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZSA6dXJsKFwiI3skcmV0aW5hLWltYWdlLXBhdGh9LyN7JGltYWdlfV8yeC5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoICRoZWlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vLyBNaXhpbiBmw7xyIFJldGluYWRhcnN0ZWxsdW5nIGbDvHIgSlBHLUJpbGQvSWNvblxuLy8gUGFyYW1ldGVyIEJpbGRwZmFkZSwgQnJlaXRlLCBIw7ZoZVxuLy8gQmVpc3BpZWw6IEBpbmNsdWRlIHJldGluYS1pbWFnZS1qcGcoJ2xvZ28nLCAxNDBweCwgNDBweCk7XG5AbWl4aW4gcmV0aW5hLWltYWdlLWpwZyAoJGltYWdlLCAkd2lkdGgsICRoZWlnaHQpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHJldGluYSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRyZXRpbmEtaW1hZ2UtcGF0aH0vI3skaW1hZ2V9XzJ4LmpwZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi8vIDIuIFBsYWNlaG9sZGVyXG4vLyAtLS0tLS0tLS1cblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgICAmOjpwbGFjZWhvbGRlciAge0Bjb250ZW50fVxufVxuXG4vLyAzLiBGb250c1xuLy8gLS0tLS0tLS0tXG5cbiRmYWxsYmFja19mb250czogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuXG5AbWl4aW4gZm9udC1leHRyYWJvbGR7XG4gICAgZm9udC1mYW1pbHk6ICdwb3BwaW5zLWV4dHJhYm9sZCcsICRmYWxsYmFja19mb250cztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5AbWl4aW4gZm9udC1leHRyYWxpZ2h0e1xuICAgIGZvbnQtZmFtaWx5OiAncG9wcGlucy1leHRyYWxpZ2h0JywgJGZhbGxiYWNrX2ZvbnRzO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbkBtaXhpbiBmb250LW1lZGl1bXtcbiAgICBmb250LWZhbWlseTogJ3BvcHBpbnMtbWVkaXVtJywgJGZhbGxiYWNrX2ZvbnRzO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbkBtaXhpbiBmb250LXJlZ3VsYXJ7XG4gICAgZm9udC1mYW1pbHk6ICdwb3BwaW5zLXJlZ3VsYXInLCAkZmFsbGJhY2tfZm9udHM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn0iLCIvLyAgU2l0ZSBDb250YWluZXJzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWwgU2V0dXAgd2l0aCBTdGlja3kgRm9vdGVyXG4vLyAgIDIuIFBhZ2UgQ29udGVudFxuXG4vLyAxLiBHbG9iYWwgU2V0dXAgd2l0aCBTdGlja3kgRm9vdGVyXG4vLyAtLS0tLS0tLS1cblxuaHRtbCwgYm9keSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIFxuICAgIC5wYWdlLXdyYXAge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGZvb3Rlci1taW4taGVpZ2h0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBcbiAgICAgICAgLnB1c2gge1xuICAgICAgICAgICAgaGVpZ2h0OiAkZm9vdGVyLW1pbi1oZWlnaHQ7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuLy8gMi4gUGFnZSBDb250ZW50XG4vLyAtLS0tLS0tLS1cbi5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6ICRwYWdlY29udGVudC1wYWRkaW5nLXRvcCAkcGFnZWNvbnRlbnQtcGFkZGluZy1zaWRlICRwYWdlY29udGVudC1wYWRkaW5nLWJvdHRvbTtcbiAgICBcbiAgICAmLndpdGgtc3RhZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG59IiwiLy8gIFNpdGUgRm9vdGVyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnNpdGUtZm9vdGVyIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgLyogICAgbWluLWhlaWdodDogJGZvb3Rlci1taW4taGVpZ2h0OyovXG59IiwiLy8gIEljb25zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmljb24ge1xuICAgIFxuICAgICYuaWNvbi1leGFtcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgaW1hZ2UtcG5nKCdpY29ucy9pY29uLWV4YW1wbGUnLCAxMHB4LCAxMHB4KTtcbiAgICB9XG59IiwiLy8gIEZvcm1cbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIFRleHRmaWVsZC9UZXh0YXJlYVxuLy8gICAyLiBTZWxlY3QvQ2hvc2VuXG4vLyAgIDMuIGlDaGVja1xuXG5mb3JtIHtcbiAgICBcbiAgICAvLyAxLiBUZXh0ZmllbGQvVGV4dGFyZWFcbiAgICAvLyAtLS0tLS0tLS1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCB0ZXh0YXJlYSB7ICAgICBcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmVycm9yIHtcbiAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIDIuIFNlbGVjdC9DaG9zZW5cbiAgICAvLyAtLS0tLS0tLS1cbiAgICAgICAgXG4gICAgc2VsZWN0IHtcbiAgICAgICAgXG4gICAgICAgICYuZXJyb3Ige1xuICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gMy4gaUNoZWNrXG4gICAgLy8gLS0tLS0tLS0tXG4gICAgXG4gICAgLmljaGVja2JveCB7XG4gICAgICAgIEBpbmNsdWRlIGltYWdlLXBuZygnaWNvbnMvY2hlY2tib3gnLCAyMHB4LCAyMHB4LCAyMHB4LCAxMDBweCk7XG4gICAgfVxuICAgIFxuICAgIC5pcmFkaW8ge1xuICAgICAgICBAaW5jbHVkZSBpbWFnZS1wbmcoJ2ljb25zL3JhZGlvJywgMjBweCwgMjBweCwgMjBweCwgMTAwcHgpO1xuICAgIH1cbiAgICBcbiAgICAuaWNoZWNrYm94LCAuaXJhZGlvIHtcbiAgICAgICAgXG4gICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5jaGVja2VkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuY2hlY2tlZC5ob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLmVycm9yIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmxvZ28tYmFye1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiAyMDtcbiAgICBwYWRkaW5nOiAxMHZoIDAgMTBweCAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bil7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCAxMHB4IDA7XG4gICAgfVxuICAgIC5sb2dve1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzUlIDc1JTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogNzY4cHgpe1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgJi5sb2dvLXdoaXRle1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9sb2dvLXN0YW4td2hpdGUuc3ZnKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJi5sb2dvLWdyZWVue1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9sb2dvLXN0YW4tZ3JlZW4uc3ZnKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5sb2dvLWJhci1iZ3tcbiAgICAgICAgJi5kaXNwbGF5e1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIkBrZXlmcmFtZXMgcHVsc2F0ZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMiwgMC4yKTsgXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjIsIDAuMik7IFxuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMC4yLCAwLjIpOyBcbiAgICAgICAgb3BhY2l0eTogMC4wO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAxLjA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMiwgMS4yKTsgb3BhY2l0eTogMC4wO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4yLCAxLjIpOyBvcGFjaXR5OiAwLjA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjIsIDEuMik7IG9wYWNpdHk6IDAuMDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYXBwZWFye1xuICAgIGZyb20geyBcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgdG8gICB7IFxuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGRpc2FwcGVhcntcbiAgICBmcm9tIHsgXG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIHRvICAgeyBcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgIH1cbn1cblxuXG5Aa2V5ZnJhbWVzIGZseWluLWZyb21sZWZ0IHtcbiAgICBmcm9tIHsgXG4gICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTMwMHB4LCAwKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzAwcHgsIDApO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0zMDBweCwgMCk7XG4gICAgfVxuICAgIHRvICAgeyBcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcblxuICAgIH1cbn1cblxuXG4uc2luZ2xlLXdvcmQtd3JhcHBlcntcbiAgICAmLmVpbnN7XG4gICAgICAgICYuZmx5aW57XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAwLjdzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogZmx5aW4tZnJvbWxlZnQgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAgICAgLW1vei1hbmltYXRpb246IGZseWluLWZyb21sZWZ0IDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnp3ZWl7XG4gICAgICAgICYuZmx5aW57XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkcztcblxuICAgICAgICB9XG4gICAgfVxuICAgICYuZHJlaXtcbiAgICAgICAgJi5mbHlpbntcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBhbmltYXRpb246IGZseWluLWZyb21sZWZ0IDFzIDAuNXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAxcyAwLjVzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogZmx5aW4tZnJvbWxlZnQgMXMgMC41cyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgfVxuICAgICYudmllcntcbiAgICAgICAgJi5mbHlpbntcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBhbmltYXRpb246IGZseWluLWZyb21sZWZ0IDFzIDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAxcyAwLjdzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbjogZmx5aW4tZnJvbWxlZnQgMXMgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZnVlbmZ7XG4gICAgICAgICYuZmx5aW57XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAwLjVzIDEuNXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAwLjVzIDEuNXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgICAgIC1tb3otYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAwLjVzIDEuNXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uY29weS1jb250YWN0e1xuICAgICYuZmx5aW57XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGFuaW1hdGlvbjogZmx5aW4tZnJvbWxlZnQgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogZmx5aW4tZnJvbWxlZnQgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAtbW96LWFuaW1hdGlvbjogZmx5aW4tZnJvbWxlZnQgMC43cyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgIH1cbiAgICAmLmZseW91dHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgYW5pbWF0aW9uOiBmbHlvdXQtdG9sZWZ0IDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGZseW91dC10b2xlZnQgIDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgLW1vei1hbmltYXRpb246IGZseW91dC10b2xlZnQgIDAuN3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICB9XG59XG5cbi5jb250YWN0LWRhdGF7XG4gICAgJi5mbHlpbntcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgYW5pbWF0aW9uOiBmbHlpbi1mcm9tbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGZseWluLWZyb21sZWZ0IDAuN3MgMC4zcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAtbW96LWFuaW1hdGlvbjogZmx5aW4tZnJvbWxlZnQgMC43cyAwLjNzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgfVxuICAgICYuZmx5b3V0e1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBhbmltYXRpb246IGZseW91dC10b2xlZnQgMC43cyAwLjNzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmbHlvdXQtdG9sZWZ0IDAuN3MgMC4zcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAtbW96LWFuaW1hdGlvbjogZmx5b3V0LXRvbGVmdCAwLjdzIDAuM3MgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICB9XG59XG5cblxuI3JldmVhbC1pbXByaW50LCAjcmV2ZWFsLXBvbGljeXtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGFuaW1hdGlvbjogYXBwZWFyIDAuNXMgIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGFwcGVhciAwLjVzICAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgIC1tb3otYW5pbWF0aW9uOiBhcHBlYXIgMC41cyAgMSBlYXNlLW91dCBmb3J3YXJkcztcbn1cblxuLmxvZ28tZ3JlZW4sIC5sb2dvLXdoaXRle1xuICAgICYuYXBwZWFye1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGFuaW1hdGlvbjogYXBwZWFyIDFzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBhcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgLW1vei1hbmltYXRpb246IGFwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgIH1cbiAgICAmLmRpc2FwcGVhcntcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgYW5pbWF0aW9uOiBkaXNhcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAtbW96LWFuaW1hdGlvbjogZGlzYXBwZWFyIDFzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgfVxufVxuXG5cbi5pY24tYmFja3tcbiAgICAmLmFwcGVhcntcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBhbmltYXRpb246IGFwcGVhciAxcyAwLjVzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBhcHBlYXIgMXMgMC41cyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAtbW96LWFuaW1hdGlvbjogYXBwZWFyIDFzIDAuNXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICB9XG4gICAgJi5kaXNhcHBlYXJ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGFuaW1hdGlvbjogZGlzYXBwZWFyIDFzIDEgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBkaXNhcHBlYXIgMXMgMSBlYXNlLW91dCBmb3J3YXJkcztcbiAgICAgICAgLW1vei1hbmltYXRpb246IGRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgIH1cbn1cblxuXG5cblxuLndyYXBwZXItbWFpbntcbiAgICAmLmFwcGVhci1ibGFja3tcbiAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgICAgICAgICBhbmltYXRpb246IGFwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGFwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAgICAgLW1vei1hbmltYXRpb246IGFwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZGlzYXBwZWFyLWJsYWNre1xuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBhbmltYXRpb246IGRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICAgICAgLW1vei1hbmltYXRpb246IGRpc2FwcGVhciAxcyAxIGVhc2Utb3V0IGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIud3JhcHBlci1tYWlue1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAzMjBweDtcbiAgICAvKiAgICBtaW4taGVpZ2h0OiA0MDBweDsqL1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JnLWludHJvLmpwZ1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIC1vLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSBkb3duKXtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiA3MCU7XG4gICAgfVxufVxuc2VjdGlvbntcbiAgICAmLnNlY3Rpb24taW50cm97XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICYuZGlzcGxheXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC53cmFwcGVyLXNlY3Rpb24tY29udGVudHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIGRvd24pe1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDMydmgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoMjV2aCkhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgIH1cbiAgICAmLnNlY3Rpb24tY29udGFjdHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgJi5kaXNwbGF5e1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2tcbiAgICAgICAgfVxuICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgLndyYXBwZXItaWNuLWJhY2t7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAuaWNuLWJhY2t7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYXJyb3ctYmFjay5zdmcpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzUlIDc1JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29weS1jb250YWN0LCAuY29udGFjdC1kYXRhe1xuICAgICAgICAgICAgb3BhY2l0eTogMFxuICAgICAgICAgICAgICAgIDtcbiAgICAgICAgfVxuICAgICAgICAuY29weS1jb250YWN0e1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC5jb3B5LWJyZWFre1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRhY3QtZGF0YXtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgICAgICAgICAgIC5jb250YWN0LWdyb3Vwe1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBocntcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0zN3B4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMzBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpe1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTIycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwe1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTMpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LW1lZGl1bTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnBob25lLWluZGljYXRvcntcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBkb3duKXtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXZoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxpbmtsaXN0e1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bil7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6Zm9jdXN7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC53cmFwcGVyLXNlY3Rpb24tY29udGVudHtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoMTB2aCArIDcwcHgpO1xuICAgIH1cbiAgICAubGlua2xpc3R7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogOTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1leHRyYWJvbGQ7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKXtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIGxpe1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxufSIsIi5yZXZlYWwtb3ZlcmxheXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDMwO1xuICAgIC5sb2dvLWJhcntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuOSk7XG4gICAgICAgIC5sb2dvLWdyZWVuLXZpc2libGV7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2xvZ28tc3Rhbi1ncmVlbi5zdmcpO1xuICAgICAgICAgICAgd2lkdGg6IDE5MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pe1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNzUlIDc1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3NjhweCl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmgye1xuICAgICAgICBwYWRkaW5nLXRvcDogY2FsYygxMHZoICsgNzBweCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaHJ7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgYm90dG9tOiAtMjVweDtcbiAgICAgICAgICAgIGxlZnQ6IC0zMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KXtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjJweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29weS1pbXByaW50e1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICAubGlua2xpc3R7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICBhe1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud3JhcHBlci1jbG9zZXtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTM2NnB4O1xuICAgICAgICAuY2xvc2UtYnV0dG9ue1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgei1pbmRleDogNDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICB0b3A6IDEwNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LWV4dHJhYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgcmlnaHQ6IDEwdnc7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSBkb3duKXtcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmZvY3Vze1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxvZ297XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjkpO1xuICAgIH1cblxufVxuXG4jcmV2ZWFsLWltcHJpbnQsICNyZXZlYWwtcG9saWN5e1xuICAgICY6Zm9jdXN7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4jcmV2ZWFsLXBvbGljeXtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG59Il19 */
