/*!
Theme Name: Ciberseguras
Theme URI: https://www.ciberseguras.org
Author: Derechos Digitales
Author URI: https://www.derechosdigitales.org
Description: Theme para Ciberseguras
Version: 1.0
*//*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:0.67em 0}figcaption,figure{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}main{display:block}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}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}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button{overflow:visible}button,select{text-transform:none}button,html [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}input{overflow:visible}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{box-sizing:border-box;display:table;max-width:100%;padding:0;color:inherit;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}details{display:block}summary{display:list-item}menu{display:block}canvas{display:inline-block}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:"LatoWeb",Helvetica,Arial,sans-serif;font-weight:normal;line-height:1.5;color:#0a0a0a;-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:.5rem}select{box-sizing:border-box;width:100%;border-radius:.5rem}.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:.5rem;background:transparent;line-height:1}[data-whatinput='mouse'] button{outline:0}pre{overflow:auto}.is-visible{display:block !important}.is-hidden{display:none !important}.row{max-width:75rem;margin-right:auto;margin-left:auto;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.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}}.row .row.collapse{margin-right:0;margin-left:0}.row.expanded{max-width:none}.row.expanded .row{margin-right:auto;margin-left:auto}.row:not(.expanded) .row{max-width:none}.row.collapse>.column,.row.collapse>.columns{padding-right:0;padding-left:0}.row.is-collapse-child,.row.collapse>.column>.row,.row.collapse>.columns>.row{margin-right:0;margin-left:0}.column,.columns{-ms-flex:1 1 0px;flex:1 1 0px;padding-right:.625rem;padding-left:.625rem;min-width:initial}@media print, screen and (min-width: 40em){.column,.columns{padding-right:.9375rem;padding-left:.9375rem}}.column.row.row,.row.row.columns{float:none;display:block}.row .column.row.row,.row .row.row.columns{margin-right:0;margin-left:0;padding-right:0;padding-left:0}.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}.small-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.small-offset-0{margin-left:0%}.small-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-offset-2{margin-left:16.66667%}.small-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-offset-3{margin-left:25%}.small-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-offset-5{margin-left:41.66667%}.small-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.small-offset-6{margin-left:50%}.small-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.small-offset-8{margin-left:66.66667%}.small-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.small-offset-9{margin-left:75%}.small-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-offset-11{margin-left:91.66667%}.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}.small-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-1>.column,.small-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-2>.column,.small-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-3>.column,.small-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-4>.column,.small-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-5>.column,.small-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.small-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-6>.column,.small-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-7>.column,.small-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.small-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-8>.column,.small-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}.small-collapse>.column,.small-collapse>.columns{padding-right:0;padding-left:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-right:.625rem;padding-left:.625rem}@media print, screen and (min-width: 40em){.medium-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.medium-offset-0{margin-left:0%}.medium-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-offset-2{margin-left:16.66667%}.medium-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-offset-3{margin-left:25%}.medium-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-offset-5{margin-left:41.66667%}.medium-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.medium-offset-6{margin-left:50%}.medium-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.medium-offset-8{margin-left:66.66667%}.medium-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.medium-offset-9{margin-left:75%}.medium-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-offset-11{margin-left:91.66667%}.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}.medium-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-1>.column,.medium-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-2>.column,.medium-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-3>.column,.medium-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-4>.column,.medium-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-5>.column,.medium-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.medium-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-6>.column,.medium-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-7>.column,.medium-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.medium-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-8>.column,.medium-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media print, screen and (min-width: 40em) and (min-width: 40em){.medium-expand{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 40em){.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}.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}}.row.medium-unstack>.column,.row.medium-unstack>.columns{-ms-flex:0 0 100%;flex:0 0 100%}@media print, screen and (min-width: 40em){.row.medium-unstack>.column,.row.medium-unstack>.columns{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 40em){.medium-collapse>.column,.medium-collapse>.columns{padding-right:0;padding-left:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}@media print, screen and (min-width: 64em){.large-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.large-offset-0{margin-left:0%}.large-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-offset-2{margin-left:16.66667%}.large-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-offset-3{margin-left:25%}.large-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-offset-5{margin-left:41.66667%}.large-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.large-offset-6{margin-left:50%}.large-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.large-offset-8{margin-left:66.66667%}.large-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.large-offset-9{margin-left:75%}.large-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-offset-11{margin-left:91.66667%}.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}.large-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-1>.column,.large-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-2>.column,.large-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-3>.column,.large-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-4>.column,.large-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-5>.column,.large-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.large-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-6>.column,.large-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-7>.column,.large-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.large-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-8>.column,.large-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media print, screen and (min-width: 64em) and (min-width: 64em){.large-expand{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 64em){.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}.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}}.row.large-unstack>.column,.row.large-unstack>.columns{-ms-flex:0 0 100%;flex:0 0 100%}@media print, screen and (min-width: 64em){.row.large-unstack>.column,.row.large-unstack>.columns{-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 64em){.large-collapse>.column,.large-collapse>.columns{padding-right:0;padding-left:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}.shrink{-ms-flex:0 0 auto;flex:0 0 auto;max-width:100%}.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}}.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-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}}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,h2,h3,h4,h5,h6{font-family:"LatoWeb",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;color:inherit;text-rendering:optimizeLegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{line-height:0;color:#cacaca}h1{font-size:1.5rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h2{font-size:1.25rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h3{font-size:1.1875rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h4{font-size:1.125rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h5{font-size:1.0625rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}h6{font-size:1rem;line-height:1.4;margin-top:0;margin-bottom:.5rem}@media print, screen and (min-width: 40em){h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:1.9375rem}h4{font-size:1.5625rem}h5{font-size:1.25rem}h6{font-size:1rem}}a{line-height:inherit;color:#60c;text-decoration:none;cursor:pointer}a:hover,a:focus{color:#5800af}a img{border:0}hr{clear:both;max-width:75rem;height:0;margin:1.25rem auto;border-top:0;border-right:0;border-bottom:1px solid #cacaca;border-left:0}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 #cacaca}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:"— "}abbr{border-bottom:1px dotted #0a0a0a;color:#0a0a0a;cursor:help}figure{margin:0}code{padding:.125rem .3125rem .0625rem;border:1px solid #cacaca;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:normal;color:#0a0a0a}kbd{margin:0;padding:.125rem .25rem 0;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;color:#0a0a0a;border-radius:.5rem}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:normal;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media print, screen and (min-width: 40em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media print, screen and (min-width: 64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.show-for-print{display:none !important}@media print{*{background:transparent !important;box-shadow:none !important;color: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 #8a8a8a;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;-webkit-appearance:none;border:1px solid transparent;border-radius:.5rem;transition:background-color 0.25s ease-out,color 0.25s ease-out;font-size:0.9rem;line-height:1;text-align:center;cursor:pointer;background-color:#60c;color:#fefefe}[data-whatinput='mouse'] .button{outline:0}.button:hover,.button:focus{background-color:#420085;color:#fefefe}.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:#60c;color:#fefefe}.button.primary:hover,.button.primary:focus{background-color:#5200a3;color:#fefefe}.button.secondary{background-color:#F34213;color:#0a0a0a}.button.secondary:hover,.button.secondary:focus{background-color:#c7320a;color:#0a0a0a}.button.third{background-color:#F9B602;color:#0a0a0a}.button.third:hover,.button.third:focus{background-color:#c79202;color:#0a0a0a}.button.success{background-color:#3adb76;color:#0a0a0a}.button.success:hover,.button.success:focus{background-color:#22bb5b;color:#0a0a0a}.button.warning{background-color:#ffae00;color:#0a0a0a}.button.warning:hover,.button.warning:focus{background-color:#cc8b00;color:#0a0a0a}.button.alert{background-color:#cc4b37;color:#fefefe}.button.alert:hover,.button.alert:focus{background-color:#a53b2a;color:#fefefe}.button.hollow{border:1px solid #60c;color:#60c}.button.hollow,.button.hollow:hover,.button.hollow:focus{background-color:transparent}.button.hollow:hover,.button.hollow:focus{border-color:#306;color:#306}.button.hollow.primary{border:1px solid #60c;color:#60c}.button.hollow.primary:hover,.button.hollow.primary:focus{border-color:#306;color:#306}.button.hollow.secondary{border:1px solid #F34213;color:#F34213}.button.hollow.secondary:hover,.button.hollow.secondary:focus{border-color:#7d1f06;color:#7d1f06}.button.hollow.third{border:1px solid #F9B602;color:#F9B602}.button.hollow.third:hover,.button.hollow.third:focus{border-color:#7d5b01;color:#7d5b01}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:hover,.button.hollow.success:focus{border-color:#157539;color:#157539}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:hover,.button.hollow.warning:focus{border-color:#805700;color:#805700}.button.hollow.alert{border:1px solid #cc4b37;color:#cc4b37}.button.hollow.alert:hover,.button.hollow.alert:focus{border-color:#67251a;color:#67251a}.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:#60c;color:#fefefe}.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:#60c;color:#fefefe}.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:#F34213;color:#0a0a0a}.button.disabled.third,.button[disabled].third{opacity:.25;cursor:not-allowed}.button.disabled.third,.button.disabled.third:hover,.button.disabled.third:focus,.button[disabled].third,.button[disabled].third:hover,.button[disabled].third:focus{background-color:#F9B602;color:#0a0a0a}.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:#0a0a0a}.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:#0a0a0a}.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:#fefefe}.button.dropdown::after{display:block;width:0;height:0;border:inset .4em;content:'';border-bottom-width:0;border-top-style:solid;border-color:#fefefe transparent transparent;position:relative;top:0.4em;display:inline-block;float:right;margin-left:1em}.button.dropdown.hollow::after{border-top-color:#60c}.button.dropdown.hollow.primary::after{border-top-color:#60c}.button.dropdown.hollow.secondary::after{border-top-color:#F34213}.button.dropdown.hollow.third::after{border-top-color:#F9B602}.button.dropdown.hollow.success::after{border-top-color:#3adb76}.button.dropdown.hollow.warning::after{border-top-color:#ffae00}.button.dropdown.hollow.alert::after{border-top-color:#cc4b37}.button.arrow-only::after{top:-0.1em;float:none;margin-left:0}[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 #cacaca;border-radius:.5rem;background-color:#fefefe;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1);font-family:inherit;font-size:1rem;font-weight:normal;color:#0a0a0a;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 #8a8a8a;background-color:#fefefe;box-shadow:0 0 5px #cacaca;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#cacaca}input::placeholder,textarea::placeholder{color:#cacaca}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:not-allowed}[type='submit'],[type='button']{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.5rem}input[type='search']{box-sizing:border-box}[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:#0a0a0a}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#0a0a0a}.input-group{display:table;width:100%;margin-bottom:1rem}.input-group>:first-child{border-radius:.5rem 0 0 .5rem}.input-group>:last-child>*{border-radius:0 .5rem .5rem 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;display:table-cell;vertical-align:middle}.input-group-label{padding:0 1rem;border:1px solid #cacaca;background:#e6e6e6;color:#0a0a0a;text-align:center;white-space:nowrap;width:1%;height:100%}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;height:2.5rem}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;width:1%;height:100%}.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{height:2.5rem;padding-top:0;padding-bottom:0;font-size:1rem}.input-group .input-group-button{display:table-cell}fieldset{margin:0;padding:0;border:0}legend{max-width:100%;margin-bottom:.5rem}.fieldset{margin:1.125rem 0;padding:1.25rem;border:1px solid #cacaca}.fieldset legend{margin:0;margin-left:-.1875rem;padding:0 .1875rem;background:#fff}select{height:2.4375rem;margin:0 0 1rem;padding:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #cacaca;border-radius:.5rem;background-color:#fefefe;font-family:inherit;font-size:1rem;line-height:normal;color:#0a0a0a;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");background-origin:content-box;background-position:right -1rem center;background-repeat:no-repeat;background-size:9px 6px;padding-right:1.5rem;transition:box-shadow 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 #8a8a8a;background-color:#fefefe;box-shadow:0 0 5px #cacaca;transition:box-shadow 0.5s,border-color 0.25s ease-in-out}select:disabled{background-color:#e6e6e6;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:#f9ecea}.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}.hide{display:none !important}.invisible{visibility:hidden}@media screen and (max-width: 39.9375em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em), screen and (min-width: 40em){.show-for-small-only{display:none !important}}@media print, screen and (min-width: 40em){.hide-for-medium{display:none !important}}@media screen and (max-width: 39.9375em){.show-for-medium{display:none !important}}@media screen and (min-width: 40em) and (max-width: 63.9375em){.hide-for-medium-only{display:none !important}}@media screen and (max-width: 39.9375em), screen and (min-width: 64em){.show-for-medium-only{display:none !important}}@media print, screen and (min-width: 64em){.hide-for-large{display:none !important}}@media screen and (max-width: 63.9375em){.show-for-large{display:none !important}}@media screen and (min-width: 64em) and (max-width: 74.9375em){.hide-for-large-only{display:none !important}}@media screen and (max-width: 63.9375em), screen and (min-width: 75em){.show-for-large-only{display:none !important}}.show-for-sr,.show-on-focus{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0, 0, 0, 0)}.show-on-focus:active,.show-on-focus:focus{position:static !important;width:auto;height:auto;overflow:visible;clip:auto}.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}}.float-left{float:left !important}.float-right{float:right !important}.float-center{display:block;margin-right:auto;margin-left:auto}.clearfix::before,.clearfix::after{display:table;content:' '}.clearfix::after{clear:both}.is-drilldown{position:relative;overflow:hidden}.is-drilldown li{display:block}.is-drilldown.animate-height{transition:height 0.5s}.is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;width:100%;background:#fefefe;transition:transform 0.15s linear}.is-drilldown-submenu.is-active{z-index:1;display:block;-ms-transform:translateX(-100%);transform:translateX(-100%)}.is-drilldown-submenu.is-closing{-ms-transform:translateX(100%);transform:translateX(100%)}.drilldown-submenu-cover-previous{min-height:100%}.is-drilldown-submenu-parent>a{position:relative}.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 #fefefe;position:absolute;top:50%;margin-top:-6px;right:1rem}.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 #fefefe transparent transparent;border-left-width:0;display:inline-block;vertical-align:middle;margin-right:0.75rem;border-left-width:0}.menu{margin:0;list-style-type:none}.menu>li{display:table-cell;vertical-align:middle}[data-whatinput='mouse'] .menu>li{outline:0}.menu>li>a{display:block;padding:0.7rem 1rem;line-height:1}.menu input,.menu select,.menu a,.menu button{margin-bottom:0}.menu>li>a img,.menu>li>a i,.menu>li>a svg{vertical-align:middle}.menu>li>a img+span,.menu>li>a i+span,.menu>li>a svg+span{vertical-align:middle}.menu>li>a img,.menu>li>a i,.menu>li>a svg{margin-right:.25rem;display:inline-block}.menu>li,.menu.horizontal>li{display:table-cell}.menu.expanded{display:table;width:100%;table-layout:fixed}.menu.expanded>li:first-child:last-child{width:100%}.menu.vertical>li{display:block}@media print, screen and (min-width: 40em){.menu.medium-horizontal>li{display:table-cell}.menu.medium-expanded{display:table;width:100%;table-layout:fixed}.menu.medium-expanded>li:first-child:last-child{width:100%}.menu.medium-vertical>li{display:block}}@media print, screen and (min-width: 64em){.menu.large-horizontal>li{display:table-cell}.menu.large-expanded{display:table;width:100%;table-layout:fixed}.menu.large-expanded>li:first-child:last-child{width:100%}.menu.large-vertical>li{display:block}}.menu.simple li{display:inline-block;vertical-align:top;line-height:1}.menu.simple a{padding:0}.menu.simple li{margin-left:0;margin-right:1rem}.menu.simple.align-right li{margin-right:0;margin-left:1rem}.menu.align-right::before,.menu.align-right::after{display:table;content:' '}.menu.align-right::after{clear:both}.menu.align-right>li{float:right}.menu.icon-top>li>a{text-align:center}.menu.icon-top>li>a img,.menu.icon-top>li>a i,.menu.icon-top>li>a svg{display:block;margin:0 auto .25rem}.menu.icon-top.vertical a>span{margin:auto}.menu.nested{margin-left:1rem}.menu .active>a{background:#60c;color:#fefefe}.menu.menu-bordered li{border:1px solid #e6e6e6}.menu.menu-bordered li:not(:first-child){border-top:0}.menu.menu-hover li:hover{background-color:#e6e6e6}.menu-text{padding-top:0;padding-bottom:0;padding:0.7rem 1rem;font-weight:bold;line-height:1;color:inherit}.menu-centered{text-align:center}.menu-centered>.menu{display:inline-block;vertical-align:top}.no-js [data-responsive-menu] ul{display:none}table{width:100%;margin-bottom:1rem;border-radius:.5rem}table thead,table tbody,table tfoot{border:1px solid #f1f1f1;background-color:#fefefe}table caption{padding:.5rem .625rem .625rem;font-weight:bold}table thead{background:#f8f8f8;color:#0a0a0a}table tfoot{background:#f1f1f1;color:#0a0a0a}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:#f1f1f1}table.unstriped tbody{background-color:#fefefe}table.unstriped tbody tr{border-bottom:0;border-bottom:1px solid #f1f1f1;background-color:#fefefe}@media screen and (max-width: 63.9375em){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:#f3f3f3}table.hover tfoot tr:hover{background-color:#ececec}table.hover tbody tr:hover{background-color:#f9f9f9}table.hover:not(.unstriped) tr:nth-of-type(even):hover{background-color:#ececec}.table-scroll{overflow-x:auto}.table-scroll table{width:auto}.callout{position:relative;margin:0 0 1rem 0;padding:1rem;border:1px solid rgba(10,10,10,0.25);border-radius:.5rem;background-color:#fff;color:#0a0a0a}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout.primary{background-color:#e8d1ff;color:#0a0a0a}.callout.secondary{background-color:#fde3dc;color:#0a0a0a}.callout.third{background-color:#fff4d8;color:#0a0a0a}.callout.success{background-color:#e1faea;color:#0a0a0a}.callout.warning{background-color:#fff3d9;color:#0a0a0a}.callout.alert{background-color:#f7e4e1;color:#0a0a0a}.callout.small{padding-top:.5rem;padding-right:.5rem;padding-bottom:.5rem;padding-left:.5rem}.callout.large{padding-top:3rem;padding-right:3rem;padding-bottom:3rem;padding-left:3rem}.accordion{margin-left:0;background:#fefefe;list-style-type:none}.accordion-item:first-child>:first-child{border-radius:.5rem .5rem 0 0}.accordion-item:last-child>:last-child{border-radius:0 0 .5rem .5rem}.accordion-title{position:relative;display:block;padding:1.25rem 1rem;border:1px solid #e6e6e6;border-bottom:0;font-size:.75rem;line-height:1;color:#60c}:last-child:not(.is-active)>.accordion-title{border-bottom:1px solid #e6e6e6;border-radius:0 0 .5rem .5rem}.accordion-title:hover,.accordion-title:focus{background-color:#e6e6e6}.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 #e6e6e6;border-bottom:0;background-color:#fefefe;color:#0a0a0a}:last-child>.accordion-content:last-child{border-bottom:1px solid #e6e6e6}.pagination{margin-left:0;margin-bottom:1rem}.pagination::before,.pagination::after{display:table;content:' '}.pagination::after{clear:both}.pagination li{margin-right:.0625rem;border-radius:.5rem;font-size:.875rem;display:inline-block}.pagination a,.pagination button{display:block;padding:.1875rem .625rem;border-radius:.5rem;color:#0a0a0a}.pagination a:hover,.pagination button:hover{background:#e6e6e6}.pagination .current{padding:.1875rem .625rem;background:#60c;color:#fefefe;cursor:default}.pagination .disabled{padding:.1875rem .625rem;color:#cacaca;cursor:not-allowed}.pagination .disabled:hover{background:transparent}.pagination .ellipsis::after{padding:.1875rem .625rem;content:'\2026';color:#0a0a0a}.pagination-previous a::before,.pagination-previous.disabled::before{display:inline-block;margin-right:0.5rem;content:'\00ab'}.pagination-next a::after,.pagination-next.disabled::after{display:inline-block;margin-left:0.5rem;content:'\00bb'}@media screen and (max-width: 39.9375em){body{overflow-x:hidden;width:100%}}.inner-space{padding-top:2rem !important;padding-bottom:2rem !important}@media screen and (max-width: 39.9375em){.inner-space{padding-top:1.5rem !important;padding-bottom:1.5rem !important}}.inner-space.no-space-bottom{padding-bottom:0 !important}.inner-space.no-space-top{padding-top:0 !important}.button{color:#fefefe;font-family:"LatoWebHeavy",Helvetica,Arial,sans-serif;text-transform:uppercase}#breadcrumbs{padding:.5rem;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6;font-size:.9rem;color:#8a8a8a;font-family:"LatoWebHeavy",Helvetica,Arial,sans-serif;text-transform:uppercase}.row.full-height{height:100%}@font-face{font-family:'LatoWebBlack';src:url("fonts/Lato-Black.eot");src:url("fonts/Lato-Black.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Black.woff2") format("woff2"),url("fonts/Lato-Black.woff") format("woff"),url("fonts/Lato-Black.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebBlack';src:url("fonts/Lato-BlackItalic.eot");src:url("fonts/Lato-BlackItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-BlackItalic.woff2") format("woff2"),url("fonts/Lato-BlackItalic.woff") format("woff"),url("fonts/Lato-BlackItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebBold';src:url("fonts/Lato-Bold.eot");src:url("fonts/Lato-Bold.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Bold.woff2") format("woff2"),url("fonts/Lato-Bold.woff") format("woff"),url("fonts/Lato-Bold.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebBold';src:url("fonts/Lato-BoldItalic.eot");src:url("fonts/Lato-BoldItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-BoldItalic.woff2") format("woff2"),url("fonts/Lato-BoldItalic.woff") format("woff"),url("fonts/Lato-BoldItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebHairline';src:url("fonts/Lato-Hairline.eot");src:url("fonts/Lato-Hairline.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Hairline.woff2") format("woff2"),url("fonts/Lato-Hairline.woff") format("woff"),url("fonts/Lato-Hairline.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebHairline';src:url("fonts/Lato-HairlineItalic.eot");src:url("fonts/Lato-HairlineItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-HairlineItalic.woff2") format("woff2"),url("fonts/Lato-HairlineItalic.woff") format("woff"),url("fonts/Lato-HairlineItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebHeavy';src:url("fonts/Lato-Heavy.eot");src:url("fonts/Lato-Heavy.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Heavy.woff2") format("woff2"),url("fonts/Lato-Heavy.woff") format("woff"),url("fonts/Lato-Heavy.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebHeavy';src:url("fonts/Lato-HeavyItalic.eot");src:url("fonts/Lato-HeavyItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-HeavyItalic.woff2") format("woff2"),url("fonts/Lato-HeavyItalic.woff") format("woff"),url("fonts/Lato-HeavyItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWeb';src:url("fonts/Lato-Italic.eot");src:url("fonts/Lato-Italic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Italic.woff2") format("woff2"),url("fonts/Lato-Italic.woff") format("woff"),url("fonts/Lato-Italic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebLight';src:url("fonts/Lato-Light.eot");src:url("fonts/Lato-Light.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Light.woff2") format("woff2"),url("fonts/Lato-Light.woff") format("woff"),url("fonts/Lato-Light.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebLight';src:url("fonts/Lato-LightItalic.eot");src:url("fonts/Lato-LightItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-LightItalic.woff2") format("woff2"),url("fonts/Lato-LightItalic.woff") format("woff"),url("fonts/Lato-LightItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebMedium';src:url("fonts/Lato-Medium.eot");src:url("fonts/Lato-Medium.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Medium.woff2") format("woff2"),url("fonts/Lato-Medium.woff") format("woff"),url("fonts/Lato-Medium.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebMedium';src:url("fonts/Lato-MediumItalic.eot");src:url("fonts/Lato-MediumItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-MediumItalic.woff2") format("woff2"),url("fonts/Lato-MediumItalic.woff") format("woff"),url("fonts/Lato-MediumItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWeb';src:url("fonts/Lato-Regular.eot");src:url("fonts/Lato-Regular.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Regular.woff2") format("woff2"),url("fonts/Lato-Regular.woff") format("woff"),url("fonts/Lato-Regular.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebSemibold';src:url("fonts/Lato-Semibold.eot");src:url("fonts/Lato-Semibold.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Semibold.woff2") format("woff2"),url("fonts/Lato-Semibold.woff") format("woff"),url("fonts/Lato-Semibold.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebSemibold';src:url("fonts/Lato-SemiboldItalic.eot");src:url("fonts/Lato-SemiboldItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-SemiboldItalic.woff2") format("woff2"),url("fonts/Lato-SemiboldItalic.woff") format("woff"),url("fonts/Lato-SemiboldItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebThin';src:url("fonts/Lato-Thin.eot");src:url("fonts/Lato-Thin.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-Thin.woff2") format("woff2"),url("fonts/Lato-Thin.woff") format("woff"),url("fonts/Lato-Thin.ttf") format("truetype");font-style:normal;font-weight:normal;text-rendering:optimizeLegibility}@font-face{font-family:'LatoWebThin';src:url("fonts/Lato-ThinItalic.eot");src:url("fonts/Lato-ThinItalic.eot?#iefix") format("embedded-opentype"),url("fonts/Lato-ThinItalic.woff2") format("woff2"),url("fonts/Lato-ThinItalic.woff") format("woff"),url("fonts/Lato-ThinItalic.ttf") format("truetype");font-style:italic;font-weight:normal;text-rendering:optimizeLegibility}.main-header{position:relative}.main-header.home{background-color:#330066}.main-header .inside-nav .logo{position:relative}.main-header .inside-nav .logo.blogname a{padding-top:1.5rem;display:block;color:#0a0a0a}.main-header .inside-nav .logo.blogname a:hover{font-size:110%;font-weight:bold}.main-header .inside-nav .logo.blogname a img{max-width:80%}.main-header .inside-nav .menu{padding-top:2rem}.main-header .inside-nav .menu li{position:relative}.main-header .inside-nav .menu li:hover .sub-menu{display:block}.main-header .inside-nav .menu li.menu-item-has-children:after{content:"\f140";position:absolute;top:.3rem;right:0;font-family:"dashicons";color:#8a8a8a}.main-header .inside-nav .menu li a{color:#0a0a0a;border-bottom:3px solid transparent;text-transform:uppercase;font-family:"LatoWebHeavy",Helvetica,Arial,sans-serif}.main-header .inside-nav .menu li a:hover{border-bottom:3px solid #F34213}.main-header .inside-nav .menu li.current_page_item a{border-bottom:3px solid #F34213}.main-header .inside-nav .menu li .sub-menu{display:none;position:absolute;width:15rem;padding:.7rem;background:#e6e6e6;border-radius:.3rem;box-shadow:1px 1px 4px #8a8a8a}.main-header .inside-nav .menu li .sub-menu>li{display:block}.main-header .inside-nav .menu li .sub-menu:before{content:"\f142";font-family:"dashicons";position:absolute;left:0;top:-1.65rem;color:#e6e6e6;font-size:1.8rem}.main-header .inside-nav .menu li .sub-menu li a{display:block;padding:.5rem;color:#0a0a0a;border-bottom:none}.main-header .inside-nav .menu li .sub-menu li a:hover{border-bottom:none;background-color:#F34213;color:#fefefe}.main-header .inside-nav .menu li .sub-menu li.current_page_item a{border-bottom:none;background-color:#F34213;color:#fefefe}.main-header .navigation .blogname{padding-top:1.5rem}.main-header .navigation .blogname img{max-width:80%;fill:#fefefe}.main-header .navigation .home-search{padding-top:2rem}.main-header .navigation .main-navigation{padding-top:2rem}.main-header .navigation .main-navigation .menu li{position:relative}.main-header .navigation .main-navigation .menu li:hover .sub-menu{display:block}.main-header .navigation .main-navigation .menu li a{color:#fefefe;border-bottom:3px solid transparent;text-transform:uppercase;font-family:"LatoWebHeavy",Helvetica,Arial,sans-serif}.main-header .navigation .main-navigation .menu li a:hover{border-bottom:3px solid #F34213}.main-header .navigation .main-navigation .menu li .sub-menu{display:none;position:absolute;width:15rem;padding:.7rem;background:#fefefe;border-radius:.3rem;box-shadow:1px 1px 3px #0a0a0a}.main-header .navigation .main-navigation .menu li .sub-menu>li{display:block}.main-header .navigation .main-navigation .menu li .sub-menu:before{content:"\f142";font-family:"dashicons";position:absolute;left:0;top:-1.65rem;color:#fefefe;font-size:1.8rem}.main-header .navigation .main-navigation .menu li .sub-menu li a{display:block;padding:.5rem;color:#0a0a0a;border-bottom:none}.main-header .navigation .main-navigation .menu li .sub-menu li a:hover{border-bottom:none;background-color:#F34213;color:#fefefe}.main-header .navigation .main-navigation .menu li .sub-menu li.current_page_item a{border-bottom:none;background-color:#F34213;color:#fefefe}.main-header .navigation .main-navigation .menu li.menu-item-has-children:after{content:"\f140";position:absolute;top:.3rem;right:0;font-family:"dashicons";color:#fefefe}.main-header svg{position:absolute;bottom:0;width:100%;height:10vh}@media screen and (max-width: 39.9375em){.main-header svg{height:8vh}}.main-header .main-background{padding-top:3rem;height:25rem;background-image:url(img/home.png);background-repeat:no-repeat;background-size:auto 100%;background-position:center center}@media screen and (max-width: 39.9375em){.main-header .main-background{background-size:cover}}.main-header .main-background .wrap-text{color:#fefefe;text-align:center}.main-header .main-background .wrap-text .frontpage-header-title{color:#60c}@media screen and (max-width: 39.9375em){.main-header .main-background .wrap-text .frontpage-header-title{margin-top:5rem;font-size:x-large}}.main-header .main-background .wrap-text .frontpage-header-text{font-size:larger;padding:0rem 2rem;color:#0a0a0a;border-radius:1rem}.main-header .main-background .wrap-text .main-logo{width:10rem;height:10rem;margin:0 auto;background-image:url(img/logo.svg)}.main-header .main-background .wrap-text .main-title{font-family:"LatoWebHeavy",Helvetica,Arial,sans-serif;text-transform:uppercase;font-size:2.5rem}.main-header .main-background .wrap-text .medium-title{text-transform:uppercase;font-size:3rem}.main-header .main-background .wrap-text .subtitle{text-transform:uppercase;font-weight:700;font-size:4.5rem;line-height:4rem}@media screen and (min-width: 90em){.main-header .main-background{height:40rem}.main-header .main-background .wrap-text .main-logo{width:15rem;height:15rem}}@media screen and (max-width: 39.9375em){.main-header .main-background{height:26rem}.main-header .main-background .wrap-text .main-title{margin-top:1rem !important;font-size:1rem}.main-header .main-background .wrap-text .medium-title{font-size:1.5rem}.main-header .main-background .wrap-text .subtitle{font-size:2rem;line-height:2rem}}.mobile-nav{position:fixed;width:100%;padding-top:.2rem;padding-bottom:.2rem;top:0;z-index:990;left:0;background-color:#0a0a0a}.mobile-nav img{height:3rem}.mobile-nav .bloginfo a{color:#fefefe}.mobile-nav .mobile-logo{display:block;position:absolute;width:5rem;height:5rem;margin-left:10px;background-image:url(img/logo.svg);background-repeat:no-repeat}.mobile-nav .mobile-nav-open{color:#fefefe}.mobile-nav .mobile-nav-open .dashicons{font-size:2.5rem;width:2.5rem;height:2.5rem}.menu-mobile-container{position:absolute;top:0;left:0;width:100%;height:100%;position:fixed;z-index:9999;background:#60c}.menu-mobile-container .close{position:absolute;right:0;top:.5rem;color:#fefefe}.menu-mobile-container .close .dashicons{font-size:3rem;width:3rem;height:3rem}.menu-mobile-container .search-mobile{position:absolute;top:1rem;left:0;right:0;width:60%;margin:auto}.menu-mobile-container .search-mobile .input-group-field{background:#e6e6e6;color:#0a0a0a;border-radius:0}.menu-mobile-container .search-mobile .button{display:none}.menu-mobile-container .auxiliar-menu{position:absolute;top:auto;right:auto;bottom:1rem;left:1rem}.menu-mobile-container .auxiliar-menu #menu-auxiliar{margin:0}.menu-mobile-container .auxiliar-menu #menu-auxiliar li a{margin-right:1rem;font-size:.8rem}.menu-mobile-container .auxiliar-menu #menu-auxiliar li:after{color:#fefefe}.menu-mobile-container .auxiliar-menu .lang-menu{position:absolute;left:.7rem;right:auto;top:-3rem}.menu-mobile-container .auxiliar-menu .lang-menu li a{font-size:1.3rem;color:#fefefe !important}.menu-mobile-container .auxiliar-menu .lang-menu li.current-lang a{color:#0a0a0a !important;background-color:#fefefe !important}.menu-mobile-container .is-drilldown{margin-top:1rem}.menu-mobile-container .menu{display:block;margin:1rem 1.5rem 0 1.5rem}.menu-mobile-container .menu li a{padding:.8rem .5rem;color:#fefefe;text-transform:uppercase;font-family:"LatoWebHeavy",Helvetica,Arial,sans-serif;font-weight:700;text-transform:uppercase;line-height:1.2rem}.menu-mobile-container .menu li a:active{background-color:#306;color:#fefefe}.menu-mobile-container .menu li.active a{text-decoration:underline}.menu-mobile-container .menu li .is-drilldown-submenu{background-color:#60c}.menu-mobile-container .menu li .is-drilldown-submenu li{margin-bottom:1rem}.menu-mobile-container .menu li .is-drilldown-submenu li.js-drilldown-back>a:before{display:none !important}@media screen and (max-width: 39.9375em){body section.main-content{margin-top:3rem}}.main-footer{background-color:#306;color:#e6e6e6}.main-footer .ciberseguras img{max-width:180px;margin-bottom:1rem}.main-footer .ciberseguras a{color:#fefefe;font-weight:bold}.main-footer .ciberseguras a:hover{text-decoration:underline}.main-footer .ciberseguras .license a{text-decoration:none}.main-footer .ciberseguras .license a img{max-width:40px}.main-footer .logos .logo{padding-top:1rem;padding-bottom:1rem}.main-footer .logos .logo img{max-height:100px;width:auto}section.frontpage section{padding-top:2rem;padding-bottom:2rem}@media screen and (max-width: 39.9375em){section.frontpage section{padding-top:1rem;padding-bottom:1rem}}section.frontpage section .title{font-size:2rem}section.frontpage section .subtitle{font-size:1rem}section.frontpage section.filtro .fstElement.mtag{border-radius:.5rem;border:1px solid #cacaca}section.frontpage section.filtro .fstElement.mtag .fstToggleBtn{font-size:1rem;text-align:left;padding:.5rem;line-height:1.28}section.frontpage section.filtro .fstElement.mtag .fstQueryInput{font-size:1rem}section.frontpage section.filtro .fstElement.mtag .fstResultItem{font-size:1rem;padding:.5rem;text-align:left}section.frontpage section.filtro .fstElement.mtag .fstResultItem.fstSelected{background-color:#60c;border:1px solid #420085}@media screen and (max-width: 39.9375em){section.frontpage section.filtro button.button{margin-top:1rem}}section.frontpage section.acciones{background-color:#f7f0ff}section.frontpage section.acciones .subtitle{margin-bottom:2.5rem}section.frontpage section.acciones .accion{pointer-events:none;transition:background .3s linear}@media screen and (min-width: 64em){section.frontpage section.acciones .accion{margin-left:.5rem;margin-right:.5rem}}section.frontpage section.acciones .accion a{pointer-events:auto;color:#0a0a0a}section.frontpage section.acciones .accion a .circular-square{width:200px;height:200px;border-radius:50%;background-color:#fefefe}section.frontpage section.acciones .accion a p{margin-bottom:0}section.frontpage section.acciones .accion:hover{background-color:#e6ccff}section.frontpage section.blog{padding-bottom:4rem}section.frontpage section.blog img{width:auto;height:180px}section.frontpage section.blog .articulo{margin-top:3rem;margin-left:3rem}@media screen and (max-width: 39.9375em){section.frontpage section.blog .articulo{margin-top:1rem;margin-left:0}}section.frontpage section.blog .articulo .fecha{color:#8a8a8a}section.frontpage section.blog .articulo .categoria{color:#cacaca}section.frontpage section.blog .articulo p{padding-top:.5rem}section.frontpage section.blog .articulo p a{color:#0a0a0a;font-weight:bold}section.frontpage section.blog .articulo p a:hover{text-decoration:underline}section.frontpage section.blog .more.button{background-color:#cacaca;color:#0a0a0a;margin-top:2.5rem;margin-bottom:-3rem}section.frontpage section.blog .more.button:hover{background-color:#8a8a8a}section.nosotras .quienes-somos .logos .logo{width:150px;max-height:200px;padding:.5rem}section.nosotras .manifiesto{background-color:#f7f0ff}section.nosotras .glosario{background-color:#e6fbee}section.nosotras .glosario .termino{padding:1rem 2rem}section.nosotras .compis img{max-width:13rem}section.nosotras .donate{background-color:#f7f0ff}section.nosotras .donate .donate.button{background-color:#cacaca;color:#0a0a0a !important;margin-top:1.5rem;padding-bottom:-2.5rem}section.nosotras .donate .donate.button:hover{background-color:#8a8a8a}section.nosotras .donate .donate.button i.fi-heart:before{content:"<3";font-weight:bold;font-style:normal;color:#60c}section.nosotras .donate .donate.button i.dashicons-heart{color:#60c;line-height:0.7}section.blog .page-header img{width:auto;height:180px}section.blog .articulos{margin-bottom:3rem}section.blog .articulos .articulo{margin-top:3rem;margin-left:3rem}@media screen and (max-width: 39.9375em){section.blog .articulos .articulo{margin-top:1rem;margin-left:0}}section.blog .articulos .articulo .fecha{color:#8a8a8a}section.blog .articulos .articulo .categoria{color:#cacaca}section.blog .articulos .articulo p{padding-top:.5rem}section.blog .articulos .articulo p a{color:#0a0a0a;font-weight:bold}section.blog .articulos .articulo p a:hover{text-decoration:underline}section.blog .articulos .more.button{background-color:#cacaca;color:#0a0a0a;margin-top:2.5rem;margin-bottom:-3rem}section.blog .articulos .more.button:hover{background-color:#8a8a8a}section.blog .featured-posts-slider .fecha,section.blog .featured-posts-slider .categoria{color:#8a8a8a}section.blog .featured-posts-slider .title{padding-top:1.5rem;padding-bottom:2.5rem;font-weight:bold;font-size:1.5rem}section.blog .featured-posts-slider .slick-dots button::before{content:'⚫';font-size:1.3rem}section.blog.search .articulos .page-title{font-size:2rem}section.blog.search .articulos .page-title span{color:#60c}section.materiales{background-color:#f7f0ff;padding-bottom:4rem}section.materiales section.header{background-color:#fefefe}section.materiales section.header img{width:auto;height:180px}section.materiales section.header h2{line-height:0.4}section.materiales section.filters{background-color:#fefefe}section.materiales section.filters .accordion-title,section.materiales section.filters .accordion-content{border:0px;padding:0px}section.materiales section.filters .accordion-title{font-weight:bold;padding:.5rem;font-size:100%;border-radius:.5rem}section.materiales section.filters .block{padding-top:1rem;padding-bottom:1.5rem}section.materiales section.filters .block:not(:last-child){border-bottom:1px solid #cacaca}section.materiales section.filters .block span{display:block;padding-bottom:.5rem}section.materiales section.filters .block span.title{font-weight:bold}section.materiales section.filters .block .button-group input{display:none}section.materiales section.filters .block .button-group label.button{border:1px solid #8a8a8a;background-color:#fefefe;color:#8a8a8a;margin-bottom:.5rem}section.materiales section.filters .block .button-group input:checked+label,section.materiales section.filters .block .button-group input:checked+label:active{border:1px solid #420085;background-color:#60c;color:#fefefe}section.materiales section.filters .block .fstElement.mtag{width:100%;border-radius:.5rem;border:1px solid #cacaca}section.materiales section.filters .block .fstElement.mtag .fstToggleBtn{font-size:1rem;text-align:left;padding:.5rem;line-height:1.28}section.materiales section.filters .block .fstElement.mtag .fstQueryInput{font-size:1rem}section.materiales section.filters .block .fstElement.mtag .fstResultItem{font-size:1rem;padding:.5rem}section.materiales section.filters .block .fstElement.mtag .fstResultItem.fstSelected{background-color:#60c;border:1px solid #420085}section.materiales section.filters .block .fstElement.mtag .fstResultItem:hover{background-color:#9c38ff;border:1px solid #60c}section.materiales section.filters .block .fstElement.mtag .fstChoiceItem{font-size:1rem;background-color:#60c;border:1px solid #420085}section.materiales section.results .material{border-bottom:1px solid #e6e6e6;padding:1.5rem;padding-bottom:3em}section.materiales section.results .material img{height:2.5rem}section.materiales section.results .material .categoria{display:block;color:#8a8a8a;padding-bottom:1rem}section.materiales section.results .material a{color:#0a0a0a;font-weight:bold}section.materiales section.results .material a:hover{text-decoration:underline}section.materiales section.results .pagination-nav{margin-top:1.5rem}.spinner{margin:100px auto;width:50px;height:40px;text-align:center;font-size:10px;display:none}.spinner>div{background-color:#333;height:100%;width:6px;display:inline-block;animation:sk-stretchdelay 1.2s infinite ease-in-out}.spinner .rect2{animation-delay:-1.1s}.spinner .rect3{animation-delay:-1.0s}.spinner .rect4{animation-delay:-0.9s}.spinner .rect5{animation-delay:-0.8s}@keyframes sk-stretchdelay{0%,40%,100%{transform:scaleY(0.4);-webkit-transform:scaleY(0.4)}20%{transform:scaleY(1);-webkit-transform:scaleY(1)}}section.hentry header .blog-title{color:#60c;font-size:2rem;padding-top:1.5em;padding-bottom:.5em}section.hentry header .blog-subtitle{color:#0a0a0a;font-size:1.2rem;padding-top:0em;padding-bottom:1.5em}section.hentry header .date{color:#cacaca;font-size:1.2rem}section.hentry header .category{color:#cacaca;font-size:1.2rem;padding-bottom:1em}section.hentry header .entry-title{font-size:2.2rem;font-weight:bold;padding-bottom:1em}section.hentry header i.dashicons{font-size:2rem}section.hentry .page-content .author{font-weight:bold;line-height:4}section.hentry .page-content .etiquetas{font-weight:bold;padding-top:1em;padding-bottom:1em}section.hentry footer .row .related-posts{border-top:1px solid #cacaca;padding-top:2rem}section.hentry footer .row .related-posts .title{color:#8a8a8a;font-weight:bold}section.hentry footer .row .related-posts .posts{padding-top:2rem}section.hentry footer .row .related-posts .posts .fecha{color:#8a8a8a}section.hentry footer .row .related-posts .posts a{color:#0a0a0a;font-weight:bold}section.material header img{height:10rem}section.material header .category-title{color:#60c;font-size:1.2rem;padding-top:2em;padding-bottom:1.5em}section.material header .entry-title{font-size:2.2rem;font-weight:bold;padding-bottom:1em}@media screen and (max-width: 39.9375em){section.material header .entry-title{padding-bottom:.5em}}section.material .page-content .metadata{color:#8a8a8a;padding-bottom:1em;border-bottom:1px solid #cacaca}section.material .page-content .metadata .small-12{padding-top:.5em;padding-bottom:.5em}@media screen and (max-width: 39.9375em){section.material .page-content .metadata .large-4{text-align:center}}section.material .page-content span.bold{font-weight:bold}section.material .page-content .title{padding-bottom:.5em;font-weight:bold;font-size:1.3em}section.material .page-content .std-text{padding-top:1em}section.material .page-content .etiquetas{text-align:right;font-weight:bold;padding-top:1em;padding-bottom:1em}section.material footer .row .related-posts{border-top:1px solid #cacaca;padding-top:2rem}section.material footer .row .related-posts img{height:2.5rem}section.material footer .row .related-posts .material{padding:1.5rem;padding-bottom:3em}section.material footer .row .related-posts .material .categoria{display:block;color:#8a8a8a;padding-bottom:1rem}section.material footer .row .related-posts .material a{color:#0a0a0a;font-weight:bold}section.material footer .row .related-posts .material a:hover{text-decoration:underline}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJhcHAuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19ub3JtYWxpemUtbWl4aW4uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2ZsZXgtZ3JpZC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2RyaWxsZG93bi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImNvbW1vbnMuc2NzcyIsImZvbnRzLnNjc3MiLCJtb2R1bGVzL25hdi1kZXNrdG9wLnNjc3MiLCJtb2R1bGVzL25hdi1tb2JpbGUuc2NzcyIsIm1peGlucy5zY3NzIiwibW9kdWxlcy9mb290ZXIuc2NzcyIsIm1vZHVsZXMvZnJvbnRwYWdlLnNjc3MiLCJtb2R1bGVzL25vc290cmFzLnNjc3MiLCJtb2R1bGVzL2Jsb2cuc2NzcyIsIm1vZHVsZXMvc2VhcmNoLnNjc3MiLCJtb2R1bGVzL21hdGVyaWFsZXMuc2NzcyIsIm1vZHVsZXMvc3Bpbm5lci5zY3NzIiwibW9kdWxlcy9zaW5nbGUuc2NzcyIsIm1vZHVsZXMvc2luZ2xlLW1hdGVyaWFsLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7RUNPRSxpRUNzQ2lFLEtBYzdELHVCQVFFLGlCQUVGLDBCQUNBLDZCQUErQixDQUNoQyxLQVlDLFFBQVUsQ0FDWCx3Q0FZQyxhQUFlLENBQ2hCLEdDdkVILGNEeUZNLGVBQWlCLENBRXBCLGtCQWtGQyxhQUFlLENBQ2hCLE9BV0csZUV2TFksQ0Z5TGYsR0FRQyx1QkFDQSxTQUNBLGdCQUFrQixDQUNuQixLQU9DLGFBQWUsQ0FDaEIsSUFtQkMsaUNBQ0EsYUFBZSxDQUNoQixFQWFDLDZCQUNBLG9DQUFzQyxDQUN2QyxpQkFTQyxlQUFpQixDQUNsQixZQWFDLG1CQUNBLDBCQUNBLGdDQUFrQyxDQUNuQyxTQVFDLG1CQUFxQixDQUN0QixTQVFDLGtCQUFvQixDQUNyQixjQVVDLGlDQUNBLGFBQWUsQ0FDaEIsSUFPQyxpQkFBbUIsQ0FDcEIsS0FPQyxzQkFDQSxVQUFZLENBQ2IsTUFPQyxhQUFlLENBQ2hCLFFBU0MsY0FDQSxjQUNBLGtCQUNBLHVCQUF5QixDQUMxQixJQUdDLGNBQWdCLENBQ2pCLElBR0MsVUFBWSxDQUNiLFlBYUMsb0JBQXNCLENBQ3ZCLHNCQU9DLGFBQ0EsUUFBVSxDQUNYLElBT0MsaUJBQW1CLENBQ3BCLGVBT0MsZUFBaUIsQ0FDbEIsc0NBaUJDLHVCQUNBLGVBS0UsaUJBRUYsUUFBVSxDQUNYLE9BT0MsZ0JBQWtCLENBQ25CLGNBU0MsbUJBQXFCLENBQ3RCLDJEQVlDLHlCQUEyQixDQUM1Qiw4SEFZRyxrQkFDQSxTQUFXLENBWGYsa0hBbUJJLDZCQUErQixDQUNoQyxNQVFELGdCQUFrQixDQUNuQixpQ0FTQyxzQkFDQSxTQUFXLENBQ1osc0ZBUUMsV0FBYSxDQUNkLGdCQVFDLDZCQUNBLG1CQUFxQixDQVV0Qix5RkFG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LHFERTFRNUMsc0JBQ0Esb0JBSGtCLENEdUloQiwyQ0QrREEsVUFDRSxzQkFBQSxBQUNBLGtCQUFBLGtCSS9MZ0IsQ0pnTWpCLGlCS25MTCxjRGhCc0IsQ0pnTWxCLFVBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixpQktuTEwsb0JEYnNCLENKNkxsQixVQUNFLGlCQUFBLEFBQ0EsYUFBQSxhSS9MZ0IsQ0pnTWpCLGlCS25MTCxxQkRic0IsQ0o2TGxCLFVBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixpQktuTEwsZURic0IsQ0o2TGxCLFVBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixpQktuTEwscUJEYnNCLENKNkxsQixVQUNFLGlCQUFBLEFBQ0EsYUFBQSxhSS9MZ0IsQ0pnTWpCLGlCS25MTCxxQkRic0IsQ0o2TGxCLFVBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixpQktuTEwsZURic0IsQ0o2TGxCLFVBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixpQktuTEwscUJEYnNCLENKNkxsQixVQUNFLGlCQUFBLEFBQ0EsYUFBQSxhSS9MZ0IsQ0pnTWpCLGlCS25MTCxxQkRic0IsQ0o2TGxCLFdBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixpQktuTEwsZURic0IsQ0o2TGxCLFdBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixrQktuTEwscUJEYnNCLENKNkxsQixXQUNFLGtCQUFBLEFBQ0EsY0FBQSxjSS9MZ0IsQ0pnTWpCLGtCS25MTCxxQkRic0IsQ0p1TWpCLGdCRzNKTCxpQkFBQSxBSCtKZ0IsT0FBQSxDQUNaLGdCR2hLSixpQkFBQSxBSCtKZ0IsT0FBQSxDQUNaLGdCR2hLSixpQkFBQSxBSCtKZ0IsT0FBQSxDQUNaLGdCR2hLSixpQkFBQSxBSCtKZ0IsT0FBQSxDQUNaLGdCR2hLSixpQkFBQSxBSCtKZ0IsT0FBQSxDQUNaLGdCR2hLSixpQkFBQSxBSCtKZ0IsT0FBQSxDQUdYLGFBbklMLG1CQUFBLEFBQWdCLGNBQUEsQ0FFZCwyQ0FHQSxrQkFBQSxBQUNBLGNBQUEsY0FIZ0IsQ0FJakIsYUFQRCxtQkFBQSxBQUFnQixjQUFBLENBRWQsMkNBR0EsaUJBQUEsQUFDQSxhQUFBLGFBSGdCLENBSWpCLGFBUEQsbUJBQUEsQUFBZ0IsY0FBQSxDQUVkLDJDQUdBLHVCQUFBLEFBQ0EsbUJBQUEsbUJBSGdCLENBSWpCLGFBUEQsbUJBQUEsQUFBZ0IsY0FBQSxDQUVkLDJDQUdBLGlCQUFBLEFBQ0EsYUFBQSxhQUhnQixDQUlqQixhQVBELG1CQUFBLEFBQWdCLGNBQUEsQ0FFZCwyQ0FHQSxpQkFBQSxBQUNBLGFBQUEsYUFIZ0IsQ0FJakIsYUFQRCxtQkFBQSxBQUFnQixjQUFBLENBRWQsMkNBR0EsdUJBQUEsQUFDQSxtQkFBQSxtQkFIZ0IsQ0FJakIsYUFQRCxtQkFBQSxBQUFnQixjQUFBLENBRWQsMkNBR0EsdUJBQUEsQUFDQSxtQkFBQSxtQkFIZ0IsQ0FJakIsYUFQRCxtQkFBQSxBQUFnQixjQUFBLENBRWQsMkNBR0EsbUJBQUEsQUFDQSxlQUFBLGVBSGdCLENBSWpCLENDNENHLGlFRDZGRSxlQUNFLGlCQUFBLEFBOUxNLFlBQUEsQ0ErTFAsQ0MvRkgsMkNEb0dFLHFCRzVLTix1QkFBQSxBQW5FVSxrQkFBQSxDSCtPSiw2Qkc1S04sK0JBQUEsQUFsRTBCLDBCQUFBLENIOE9wQix3Qkc1S04sMEJBQUEsQUFqRWdCLHFCQUFBLENINk9WLGdDRzVLTixrQ0FBQSxBQWhFZ0MsNkJBQUEsQ0g4T3pCLHdCQUlELGtCQUFBLEFBQWUsYUFBQSxDQUNoQix3QkFHQyxrQkFBQSxBQUFlLGFBQUEsQ0FDaEIsMEJBR0Msa0JBQUEsQUFBZSxhQUFBLENBQ2hCLENBSUMseURBRUksa0JBQUEsQUFBMkIsYUFBQSxDQ3pIakMsMkNEdUhFLHlEQUtNLGlCQUFBLEFBNU5FLFlBQUEsQ0E4TkwsQ0M5SEwsMkNEb0lGLG1ERXpRQSxnQkFDQSxjQUhrQixDRjRRMEIsdURFMVE1Qyx1QkFDQSxxQkFIa0IsQ0ZnUm1DLENDekluRCwyQ0QrREEsU0FDRSxzQkFBQSxBQUNBLGtCQUFBLGtCSS9MZ0IsQ0pnTWpCLGdCS25MTCxjRGhCc0IsQ0pnTWxCLFNBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixnQktuTEwsb0JEYnNCLENKNkxsQixTQUNFLGlCQUFBLEFBQ0EsYUFBQSxhSS9MZ0IsQ0pnTWpCLGdCS25MTCxxQkRic0IsQ0o2TGxCLFNBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixnQktuTEwsZURic0IsQ0o2TGxCLFNBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixnQktuTEwscUJEYnNCLENKNkxsQixTQUNFLGlCQUFBLEFBQ0EsYUFBQSxhSS9MZ0IsQ0pnTWpCLGdCS25MTCxxQkRic0IsQ0o2TGxCLFNBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixnQktuTEwsZURic0IsQ0o2TGxCLFNBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixnQktuTEwscUJEYnNCLENKNkxsQixTQUNFLGlCQUFBLEFBQ0EsYUFBQSxhSS9MZ0IsQ0pnTWpCLGdCS25MTCxxQkRic0IsQ0o2TGxCLFVBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixnQktuTEwsZURic0IsQ0o2TGxCLFVBQ0UsdUJBQUEsQUFDQSxtQkFBQSxtQkkvTGdCLENKZ01qQixpQktuTEwscUJEYnNCLENKNkxsQixVQUNFLGtCQUFBLEFBQ0EsY0FBQSxjSS9MZ0IsQ0pnTWpCLGlCS25MTCxxQkRic0IsQ0p1TWpCLGVHM0pMLGlCQUFBLEFIK0pnQixPQUFBLENBQ1osZUdoS0osaUJBQUEsQUgrSmdCLE9BQUEsQ0FDWixlR2hLSixpQkFBQSxBSCtKZ0IsT0FBQSxDQUNaLGVHaEtKLGlCQUFBLEFIK0pnQixPQUFBLENBQ1osZUdoS0osaUJBQUEsQUgrSmdCLE9BQUEsQ0FDWixlR2hLSixpQkFBQSxBSCtKZ0IsT0FBQSxDQUdYLFlBbklMLG1CQUFBLEFBQWdCLGNBQUEsQ0FF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LGU2Qy9DRyxrQkFDRSxtQkFDRyxDQUFBLHFDQUVqQixjN0NxRE0saUI2Q25ETSxnQkFDRSxvQkFDRyxDQUFBLDRCQUVqQixjN0M2Q1ksZ0I2QzNDQSxDQUFBLGdDQUVaLGM3Q3lDWSxpQjZDdkNBLGtCQUNHLENBQUUsbUNBRWpCLGlCQUNZLGlCQUNFLGtCQUNDLENBQUUsa0NBRWhCLGNBQ1csQ0FBQSxxQ0FLWixpQkFDYyxhQUNiLENBQUEsd0NBR0QsaUJBQ2MsZ0JBQ0Esa0JBQ0MsQ0FBRSwwQ0FNaEIsNkI3Q1dXLGdCNkNURyxDQUFBLGlEQUViLGM3Q1FRLGdCNkNOTSxDQUFBLGlEQUdkLGdCQUNjLENBQUEsd0RBRWIsYTdDQU8sQ0FBQSxtRDZDSFIsYzdDSUksZ0I2Q0tXLENBQUEsNEJDaEVqQixZQUNTLENBQUEsd0NBRVQsVzlDOENTLGlCOEM1Q0csZ0JBQ0Usb0JBQ0csQ0FBQSxxQ0FFakIsaUJBQ1ksaUJBQ0Usa0JBQ0MsQ0FBRSx5QzFDaUpVLHFDMENwSjNCLG1CQUtrQixDQUFBLENBQUEseUNBT2xCLGM5Q3FDVSxtQjhDbkNPLCtCOUNrQ0wsQ0FBQSxtRDhDL0JYLGlCQUNjLG1CQUNHLENBQUEseUMxQ2lJUyxrRDBDOUh6QixpQkFDYSxDQUFBLENBQUEseUNBS1gsZ0JBQ1UsQ0FBQSxzQ0FHZCxvQkFDaUIsaUJBQ0gsZUFDRixDQUFBLHlDQUdaLGVBQ1ksQ0FBRSwwQ0FHZCxpQkFDYSxpQkFDQyxnQkFDQSxrQkFDQyxDQUFFLDRDQU1oQiw2QjlDSlcsZ0I4Q01HLENBQUEsZ0RBRWIsYUFDUyxDQUFBLHNEQUdULGVBRVUsa0JBQ0ssQ0FBRSxpRUFFaEIsY0FDVSxjOUNqQkgsbUI4Q21CVSxDQUFBLHdEQVJsQixjOUNWSSxnQjhDdUJXLENBQUEsOERBRmIseUJBS2tCLENBQUEiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuVGhlbWUgTmFtZTogQ2liZXJzZWd1cmFzXG5UaGVtZSBVUkk6IGh0dHBzOi8vd3d3LmNpYmVyc2VndXJhcy5vcmdcbkF1dGhvcjogRGVyZWNob3MgRGlnaXRhbGVzXG5BdXRob3IgVVJJOiBodHRwczovL3d3dy5kZXJlY2hvc2RpZ2l0YWxlcy5vcmdcbkRlc2NyaXB0aW9uOiBUaGVtZSBwYXJhIENpYmVyc2VndXJhc1xuVmVyc2lvbjogMS4wXG4qLy8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovaHRtbHtmb250LWZhbWlseTpzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjEuMTU7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e21hcmdpbjowfWFydGljbGUsYXNpZGUsZm9vdGVyLGhlYWRlcixuYXYsc2VjdGlvbntkaXNwbGF5OmJsb2NrfWgxe2ZvbnQtc2l6ZToyZW07bWFyZ2luOjAuNjdlbSAwfWZpZ2NhcHRpb24sZmlndXJle2Rpc3BsYXk6YmxvY2t9ZmlndXJle21hcmdpbjoxZW0gNDBweH1ocntib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDowO292ZXJmbG93OnZpc2libGV9bWFpbntkaXNwbGF5OmJsb2NrfXByZXtmb250LWZhbWlseTptb25vc3BhY2UsIG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOm9iamVjdHN9YTphY3RpdmUsYTpob3ZlcntvdXRsaW5lLXdpZHRoOjB9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbTpub25lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9Y29kZSxrYmQsc2FtcHtmb250LWZhbWlseTptb25vc3BhY2UsIG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWRmbntmb250LXN0eWxlOml0YWxpY31tYXJre2JhY2tncm91bmQtY29sb3I6I2ZmMDtjb2xvcjojMDAwfXNtYWxse2ZvbnQtc2l6ZTo4MCV9c3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9c3Vie2JvdHRvbTotMC4yNWVtfXN1cHt0b3A6LTAuNWVtfWF1ZGlvLHZpZGVve2Rpc3BsYXk6aW5saW5lLWJsb2NrfWF1ZGlvOm5vdChbY29udHJvbHNdKXtkaXNwbGF5Om5vbmU7aGVpZ2h0OjB9aW1ne2JvcmRlci1zdHlsZTpub25lfXN2Zzpub3QoOnJvb3Qpe292ZXJmbG93OmhpZGRlbn1idXR0b24saW5wdXQsb3B0Z3JvdXAsc2VsZWN0LHRleHRhcmVhe2ZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7Zm9udC1zaXplOjEwMCU7bGluZS1oZWlnaHQ6MS4xNTttYXJnaW46MH1idXR0b257b3ZlcmZsb3c6dmlzaWJsZX1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9YnV0dG9uLGh0bWwgW3R5cGU9XCJidXR0b25cIl0sW3R5cGU9XCJyZXNldFwiXSxbdHlwZT1cInN1Ym1pdFwiXXstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9ufWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVye2JvcmRlci1zdHlsZTpub25lO3BhZGRpbmc6MH1idXR0b246LW1vei1mb2N1c3JpbmcsW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZ3tvdXRsaW5lOjFweCBkb3R0ZWQgQnV0dG9uVGV4dH1pbnB1dHtvdmVyZmxvdzp2aXNpYmxlfVt0eXBlPVwiY2hlY2tib3hcIl0sW3R5cGU9XCJyYWRpb1wiXXtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzowfVt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9ue2hlaWdodDphdXRvfVt0eXBlPVwic2VhcmNoXCJdey13ZWJraXQtYXBwZWFyYW5jZTp0ZXh0ZmllbGQ7b3V0bGluZS1vZmZzZXQ6LTJweH1bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b247Zm9udDppbmhlcml0fWZpZWxkc2V0e2JvcmRlcjoxcHggc29saWQgI2MwYzBjMDttYXJnaW46MCAycHg7cGFkZGluZzowLjM1ZW0gMC42MjVlbSAwLjc1ZW19bGVnZW5ke2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OnRhYmxlO21heC13aWR0aDoxMDAlO3BhZGRpbmc6MDtjb2xvcjppbmhlcml0O3doaXRlLXNwYWNlOm5vcm1hbH1wcm9ncmVzc3tkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX10ZXh0YXJlYXtvdmVyZmxvdzphdXRvfWRldGFpbHN7ZGlzcGxheTpibG9ja31zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfW1lbnV7ZGlzcGxheTpibG9ja31jYW52YXN7ZGlzcGxheTppbmxpbmUtYmxvY2t9dGVtcGxhdGV7ZGlzcGxheTpub25lfVtoaWRkZW5de2Rpc3BsYXk6bm9uZX0uZm91bmRhdGlvbi1tcXtmb250LWZhbWlseTpcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwifWh0bWx7Ym94LXNpemluZzpib3JkZXItYm94O2ZvbnQtc2l6ZToxMDAlfSosKjo6YmVmb3JlLCo6OmFmdGVye2JveC1zaXppbmc6aW5oZXJpdH1ib2R5e21hcmdpbjowO3BhZGRpbmc6MDtiYWNrZ3JvdW5kOiNmZmY7Zm9udC1mYW1pbHk6XCJMYXRvV2ViXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6bm9ybWFsO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojMGEwYTBhOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlfWltZ3tkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87LW1zLWludGVycG9sYXRpb24tbW9kZTpiaWN1YmljfXRleHRhcmVhe2hlaWdodDphdXRvO21pbi1oZWlnaHQ6NTBweDtib3JkZXItcmFkaXVzOi41cmVtfXNlbGVjdHtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOi41cmVtfS5tYXBfY2FudmFzIGltZywubWFwX2NhbnZhcyBlbWJlZCwubWFwX2NhbnZhcyBvYmplY3QsLm1xYS1kaXNwbGF5IGltZywubXFhLWRpc3BsYXkgZW1iZWQsLm1xYS1kaXNwbGF5IG9iamVjdHttYXgtd2lkdGg6bm9uZSAhaW1wb3J0YW50fWJ1dHRvbntwYWRkaW5nOjA7YXBwZWFyYW5jZTpub25lO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6LjVyZW07YmFja2dyb3VuZDp0cmFuc3BhcmVudDtsaW5lLWhlaWdodDoxfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b257b3V0bGluZTowfXByZXtvdmVyZmxvdzphdXRvfS5pcy12aXNpYmxle2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudH0uaXMtaGlkZGVue2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fS5yb3d7bWF4LXdpZHRoOjc1cmVtO21hcmdpbi1yaWdodDphdXRvO21hcmdpbi1sZWZ0OmF1dG87ZGlzcGxheTpmbGV4O2ZsZXgtZmxvdzpyb3cgd3JhcH0ucm93IC5yb3d7bWFyZ2luLXJpZ2h0Oi0uNjI1cmVtO21hcmdpbi1sZWZ0Oi0uNjI1cmVtfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsucm93IC5yb3d7bWFyZ2luLXJpZ2h0Oi0uOTM3NXJlbTttYXJnaW4tbGVmdDotLjkzNzVyZW19fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsucm93IC5yb3d7bWFyZ2luLXJpZ2h0Oi0uOTM3NXJlbTttYXJnaW4tbGVmdDotLjkzNzVyZW19fS5yb3cgLnJvdy5jb2xsYXBzZXttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5yb3cuZXhwYW5kZWR7bWF4LXdpZHRoOm5vbmV9LnJvdy5leHBhbmRlZCAucm93e21hcmdpbi1yaWdodDphdXRvO21hcmdpbi1sZWZ0OmF1dG99LnJvdzpub3QoLmV4cGFuZGVkKSAucm93e21heC13aWR0aDpub25lfS5yb3cuY29sbGFwc2U+LmNvbHVtbiwucm93LmNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0ucm93LmlzLWNvbGxhcHNlLWNoaWxkLC5yb3cuY29sbGFwc2U+LmNvbHVtbj4ucm93LC5yb3cuY29sbGFwc2U+LmNvbHVtbnM+LnJvd3ttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5jb2x1bW4sLmNvbHVtbnN7ZmxleDoxIDEgMHB4O3BhZGRpbmctcmlnaHQ6LjYyNXJlbTtwYWRkaW5nLWxlZnQ6LjYyNXJlbTttaW4td2lkdGg6aW5pdGlhbH1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7LmNvbHVtbiwuY29sdW1uc3twYWRkaW5nLXJpZ2h0Oi45Mzc1cmVtO3BhZGRpbmctbGVmdDouOTM3NXJlbX19LmNvbHVtbi5yb3cucm93LC5yb3cucm93LmNvbHVtbnN7ZmxvYXQ6bm9uZTtkaXNwbGF5OmJsb2NrfS5yb3cgLmNvbHVtbi5yb3cucm93LC5yb3cgLnJvdy5yb3cuY29sdW1uc3ttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowO3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0uZmxleC1jb250YWluZXJ7ZGlzcGxheTpmbGV4fS5mbGV4LWNoaWxkLWF1dG97ZmxleDoxIDEgYXV0b30uZmxleC1jaGlsZC1ncm93e2ZsZXg6MSAwIGF1dG99LmZsZXgtY2hpbGQtc2hyaW5re2ZsZXg6MCAxIGF1dG99LmZsZXgtZGlyLXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmZsZXgtZGlyLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5mbGV4LWRpci1jb2x1bW57ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZXtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX0uc21hbGwtMXtmbGV4OjAgMCA4LjMzMzMzJTttYXgtd2lkdGg6OC4zMzMzMyV9LnNtYWxsLW9mZnNldC0we21hcmdpbi1sZWZ0OjAlfS5zbWFsbC0ye2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5zbWFsbC1vZmZzZXQtMXttYXJnaW4tbGVmdDo4LjMzMzMzJX0uc21hbGwtM3tmbGV4OjAgMCAyNSU7bWF4LXdpZHRoOjI1JX0uc21hbGwtb2Zmc2V0LTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjclfS5zbWFsbC00e2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5zbWFsbC1vZmZzZXQtM3ttYXJnaW4tbGVmdDoyNSV9LnNtYWxsLTV7ZmxleDowIDAgNDEuNjY2NjclO21heC13aWR0aDo0MS42NjY2NyV9LnNtYWxsLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzJX0uc21hbGwtNntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0uc21hbGwtb2Zmc2V0LTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjclfS5zbWFsbC03e2ZsZXg6MCAwIDU4LjMzMzMzJTttYXgtd2lkdGg6NTguMzMzMzMlfS5zbWFsbC1vZmZzZXQtNnttYXJnaW4tbGVmdDo1MCV9LnNtYWxsLTh7ZmxleDowIDAgNjYuNjY2NjclO21heC13aWR0aDo2Ni42NjY2NyV9LnNtYWxsLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzJX0uc21hbGwtOXtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0uc21hbGwtb2Zmc2V0LTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjclfS5zbWFsbC0xMHtmbGV4OjAgMCA4My4zMzMzMyU7bWF4LXdpZHRoOjgzLjMzMzMzJX0uc21hbGwtb2Zmc2V0LTl7bWFyZ2luLWxlZnQ6NzUlfS5zbWFsbC0xMXtmbGV4OjAgMCA5MS42NjY2NyU7bWF4LXdpZHRoOjkxLjY2NjY3JX0uc21hbGwtb2Zmc2V0LTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzJX0uc21hbGwtMTJ7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0uc21hbGwtb2Zmc2V0LTExe21hcmdpbi1sZWZ0OjkxLjY2NjY3JX0uc21hbGwtb3JkZXItMXtvcmRlcjoxfS5zbWFsbC1vcmRlci0ye29yZGVyOjJ9LnNtYWxsLW9yZGVyLTN7b3JkZXI6M30uc21hbGwtb3JkZXItNHtvcmRlcjo0fS5zbWFsbC1vcmRlci01e29yZGVyOjV9LnNtYWxsLW9yZGVyLTZ7b3JkZXI6Nn0uc21hbGwtdXAtMXtmbGV4LXdyYXA6d3JhcH0uc21hbGwtdXAtMT4uY29sdW1uLC5zbWFsbC11cC0xPi5jb2x1bW5ze2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9LnNtYWxsLXVwLTJ7ZmxleC13cmFwOndyYXB9LnNtYWxsLXVwLTI+LmNvbHVtbiwuc21hbGwtdXAtMj4uY29sdW1uc3tmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0uc21hbGwtdXAtM3tmbGV4LXdyYXA6d3JhcH0uc21hbGwtdXAtMz4uY29sdW1uLC5zbWFsbC11cC0zPi5jb2x1bW5ze2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5zbWFsbC11cC00e2ZsZXgtd3JhcDp3cmFwfS5zbWFsbC11cC00Pi5jb2x1bW4sLnNtYWxsLXVwLTQ+LmNvbHVtbnN7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LnNtYWxsLXVwLTV7ZmxleC13cmFwOndyYXB9LnNtYWxsLXVwLTU+LmNvbHVtbiwuc21hbGwtdXAtNT4uY29sdW1uc3tmbGV4OjAgMCAyMCU7bWF4LXdpZHRoOjIwJX0uc21hbGwtdXAtNntmbGV4LXdyYXA6d3JhcH0uc21hbGwtdXAtNj4uY29sdW1uLC5zbWFsbC11cC02Pi5jb2x1bW5ze2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5zbWFsbC11cC03e2ZsZXgtd3JhcDp3cmFwfS5zbWFsbC11cC03Pi5jb2x1bW4sLnNtYWxsLXVwLTc+LmNvbHVtbnN7ZmxleDowIDAgMTQuMjg1NzElO21heC13aWR0aDoxNC4yODU3MSV9LnNtYWxsLXVwLTh7ZmxleC13cmFwOndyYXB9LnNtYWxsLXVwLTg+LmNvbHVtbiwuc21hbGwtdXAtOD4uY29sdW1uc3tmbGV4OjAgMCAxMi41JTttYXgtd2lkdGg6MTIuNSV9LnNtYWxsLWNvbGxhcHNlPi5jb2x1bW4sLnNtYWxsLWNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0uc21hbGwtdW5jb2xsYXBzZT4uY29sdW1uLC5zbWFsbC11bmNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6LjYyNXJlbTtwYWRkaW5nLWxlZnQ6LjYyNXJlbX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSl7Lm1lZGl1bS0xe2ZsZXg6MCAwIDguMzMzMzMlO21heC13aWR0aDo4LjMzMzMzJX0ubWVkaXVtLW9mZnNldC0we21hcmdpbi1sZWZ0OjAlfS5tZWRpdW0tMntmbGV4OjAgMCAxNi42NjY2NyU7bWF4LXdpZHRoOjE2LjY2NjY3JX0ubWVkaXVtLW9mZnNldC0xe21hcmdpbi1sZWZ0OjguMzMzMzMlfS5tZWRpdW0tM3tmbGV4OjAgMCAyNSU7bWF4LXdpZHRoOjI1JX0ubWVkaXVtLW9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY3JX0ubWVkaXVtLTR7ZmxleDowIDAgMzMuMzMzMzMlO21heC13aWR0aDozMy4zMzMzMyV9Lm1lZGl1bS1vZmZzZXQtM3ttYXJnaW4tbGVmdDoyNSV9Lm1lZGl1bS01e2ZsZXg6MCAwIDQxLjY2NjY3JTttYXgtd2lkdGg6NDEuNjY2NjclfS5tZWRpdW0tb2Zmc2V0LTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMlfS5tZWRpdW0tNntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ubWVkaXVtLW9mZnNldC01e21hcmdpbi1sZWZ0OjQxLjY2NjY3JX0ubWVkaXVtLTd7ZmxleDowIDAgNTguMzMzMzMlO21heC13aWR0aDo1OC4zMzMzMyV9Lm1lZGl1bS1vZmZzZXQtNnttYXJnaW4tbGVmdDo1MCV9Lm1lZGl1bS04e2ZsZXg6MCAwIDY2LjY2NjY3JTttYXgtd2lkdGg6NjYuNjY2NjclfS5tZWRpdW0tb2Zmc2V0LTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMlfS5tZWRpdW0tOXtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0ubWVkaXVtLW9mZnNldC04e21hcmdpbi1sZWZ0OjY2LjY2NjY3JX0ubWVkaXVtLTEwe2ZsZXg6MCAwIDgzLjMzMzMzJTttYXgtd2lkdGg6ODMuMzMzMzMlfS5tZWRpdW0tb2Zmc2V0LTl7bWFyZ2luLWxlZnQ6NzUlfS5tZWRpdW0tMTF7ZmxleDowIDAgOTEuNjY2NjclO21heC13aWR0aDo5MS42NjY2NyV9Lm1lZGl1bS1vZmZzZXQtMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMlfS5tZWRpdW0tMTJ7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0ubWVkaXVtLW9mZnNldC0xMXttYXJnaW4tbGVmdDo5MS42NjY2NyV9Lm1lZGl1bS1vcmRlci0xe29yZGVyOjF9Lm1lZGl1bS1vcmRlci0ye29yZGVyOjJ9Lm1lZGl1bS1vcmRlci0ze29yZGVyOjN9Lm1lZGl1bS1vcmRlci00e29yZGVyOjR9Lm1lZGl1bS1vcmRlci01e29yZGVyOjV9Lm1lZGl1bS1vcmRlci02e29yZGVyOjZ9Lm1lZGl1bS11cC0xe2ZsZXgtd3JhcDp3cmFwfS5tZWRpdW0tdXAtMT4uY29sdW1uLC5tZWRpdW0tdXAtMT4uY29sdW1uc3tmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5tZWRpdW0tdXAtMntmbGV4LXdyYXA6d3JhcH0ubWVkaXVtLXVwLTI+LmNvbHVtbiwubWVkaXVtLXVwLTI+LmNvbHVtbnN7ZmxleDowIDAgNTAlO21heC13aWR0aDo1MCV9Lm1lZGl1bS11cC0ze2ZsZXgtd3JhcDp3cmFwfS5tZWRpdW0tdXAtMz4uY29sdW1uLC5tZWRpdW0tdXAtMz4uY29sdW1uc3tmbGV4OjAgMCAzMy4zMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzJX0ubWVkaXVtLXVwLTR7ZmxleC13cmFwOndyYXB9Lm1lZGl1bS11cC00Pi5jb2x1bW4sLm1lZGl1bS11cC00Pi5jb2x1bW5ze2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5tZWRpdW0tdXAtNXtmbGV4LXdyYXA6d3JhcH0ubWVkaXVtLXVwLTU+LmNvbHVtbiwubWVkaXVtLXVwLTU+LmNvbHVtbnN7ZmxleDowIDAgMjAlO21heC13aWR0aDoyMCV9Lm1lZGl1bS11cC02e2ZsZXgtd3JhcDp3cmFwfS5tZWRpdW0tdXAtNj4uY29sdW1uLC5tZWRpdW0tdXAtNj4uY29sdW1uc3tmbGV4OjAgMCAxNi42NjY2NyU7bWF4LXdpZHRoOjE2LjY2NjY3JX0ubWVkaXVtLXVwLTd7ZmxleC13cmFwOndyYXB9Lm1lZGl1bS11cC03Pi5jb2x1bW4sLm1lZGl1bS11cC03Pi5jb2x1bW5ze2ZsZXg6MCAwIDE0LjI4NTcxJTttYXgtd2lkdGg6MTQuMjg1NzElfS5tZWRpdW0tdXAtOHtmbGV4LXdyYXA6d3JhcH0ubWVkaXVtLXVwLTg+LmNvbHVtbiwubWVkaXVtLXVwLTg+LmNvbHVtbnN7ZmxleDowIDAgMTIuNSU7bWF4LXdpZHRoOjEyLjUlfX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tZXhwYW5ke2ZsZXg6MSAxIDBweH19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tZmxleC1kaXItcm93e2ZsZXgtZGlyZWN0aW9uOnJvd30ubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5tZWRpdW0tZmxleC1kaXItY29sdW1ue2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfS5tZWRpdW0tZmxleC1jaGlsZC1hdXRve2ZsZXg6MSAxIGF1dG99Lm1lZGl1bS1mbGV4LWNoaWxkLWdyb3d7ZmxleDoxIDAgYXV0b30ubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5re2ZsZXg6MCAxIGF1dG99fS5yb3cubWVkaXVtLXVuc3RhY2s+LmNvbHVtbiwucm93Lm1lZGl1bS11bnN0YWNrPi5jb2x1bW5ze2ZsZXg6MCAwIDEwMCV9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5yb3cubWVkaXVtLXVuc3RhY2s+LmNvbHVtbiwucm93Lm1lZGl1bS11bnN0YWNrPi5jb2x1bW5ze2ZsZXg6MSAxIDBweH19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tY29sbGFwc2U+LmNvbHVtbiwubWVkaXVtLWNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0ubWVkaXVtLXVuY29sbGFwc2U+LmNvbHVtbiwubWVkaXVtLXVuY29sbGFwc2U+LmNvbHVtbnN7cGFkZGluZy1yaWdodDouOTM3NXJlbTtwYWRkaW5nLWxlZnQ6LjkzNzVyZW19fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsubGFyZ2UtMXtmbGV4OjAgMCA4LjMzMzMzJTttYXgtd2lkdGg6OC4zMzMzMyV9LmxhcmdlLW9mZnNldC0we21hcmdpbi1sZWZ0OjAlfS5sYXJnZS0ye2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5sYXJnZS1vZmZzZXQtMXttYXJnaW4tbGVmdDo4LjMzMzMzJX0ubGFyZ2UtM3tmbGV4OjAgMCAyNSU7bWF4LXdpZHRoOjI1JX0ubGFyZ2Utb2Zmc2V0LTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjclfS5sYXJnZS00e2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5sYXJnZS1vZmZzZXQtM3ttYXJnaW4tbGVmdDoyNSV9LmxhcmdlLTV7ZmxleDowIDAgNDEuNjY2NjclO21heC13aWR0aDo0MS42NjY2NyV9LmxhcmdlLW9mZnNldC00e21hcmdpbi1sZWZ0OjMzLjMzMzMzJX0ubGFyZ2UtNntmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ubGFyZ2Utb2Zmc2V0LTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjclfS5sYXJnZS03e2ZsZXg6MCAwIDU4LjMzMzMzJTttYXgtd2lkdGg6NTguMzMzMzMlfS5sYXJnZS1vZmZzZXQtNnttYXJnaW4tbGVmdDo1MCV9LmxhcmdlLTh7ZmxleDowIDAgNjYuNjY2NjclO21heC13aWR0aDo2Ni42NjY2NyV9LmxhcmdlLW9mZnNldC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzJX0ubGFyZ2UtOXtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0ubGFyZ2Utb2Zmc2V0LTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjclfS5sYXJnZS0xMHtmbGV4OjAgMCA4My4zMzMzMyU7bWF4LXdpZHRoOjgzLjMzMzMzJX0ubGFyZ2Utb2Zmc2V0LTl7bWFyZ2luLWxlZnQ6NzUlfS5sYXJnZS0xMXtmbGV4OjAgMCA5MS42NjY2NyU7bWF4LXdpZHRoOjkxLjY2NjY3JX0ubGFyZ2Utb2Zmc2V0LTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzJX0ubGFyZ2UtMTJ7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0ubGFyZ2Utb2Zmc2V0LTExe21hcmdpbi1sZWZ0OjkxLjY2NjY3JX0ubGFyZ2Utb3JkZXItMXtvcmRlcjoxfS5sYXJnZS1vcmRlci0ye29yZGVyOjJ9LmxhcmdlLW9yZGVyLTN7b3JkZXI6M30ubGFyZ2Utb3JkZXItNHtvcmRlcjo0fS5sYXJnZS1vcmRlci01e29yZGVyOjV9LmxhcmdlLW9yZGVyLTZ7b3JkZXI6Nn0ubGFyZ2UtdXAtMXtmbGV4LXdyYXA6d3JhcH0ubGFyZ2UtdXAtMT4uY29sdW1uLC5sYXJnZS11cC0xPi5jb2x1bW5ze2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9LmxhcmdlLXVwLTJ7ZmxleC13cmFwOndyYXB9LmxhcmdlLXVwLTI+LmNvbHVtbiwubGFyZ2UtdXAtMj4uY29sdW1uc3tmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0ubGFyZ2UtdXAtM3tmbGV4LXdyYXA6d3JhcH0ubGFyZ2UtdXAtMz4uY29sdW1uLC5sYXJnZS11cC0zPi5jb2x1bW5ze2ZsZXg6MCAwIDMzLjMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMlfS5sYXJnZS11cC00e2ZsZXgtd3JhcDp3cmFwfS5sYXJnZS11cC00Pi5jb2x1bW4sLmxhcmdlLXVwLTQ+LmNvbHVtbnN7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LmxhcmdlLXVwLTV7ZmxleC13cmFwOndyYXB9LmxhcmdlLXVwLTU+LmNvbHVtbiwubGFyZ2UtdXAtNT4uY29sdW1uc3tmbGV4OjAgMCAyMCU7bWF4LXdpZHRoOjIwJX0ubGFyZ2UtdXAtNntmbGV4LXdyYXA6d3JhcH0ubGFyZ2UtdXAtNj4uY29sdW1uLC5sYXJnZS11cC02Pi5jb2x1bW5ze2ZsZXg6MCAwIDE2LjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjclfS5sYXJnZS11cC03e2ZsZXgtd3JhcDp3cmFwfS5sYXJnZS11cC03Pi5jb2x1bW4sLmxhcmdlLXVwLTc+LmNvbHVtbnN7ZmxleDowIDAgMTQuMjg1NzElO21heC13aWR0aDoxNC4yODU3MSV9LmxhcmdlLXVwLTh7ZmxleC13cmFwOndyYXB9LmxhcmdlLXVwLTg+LmNvbHVtbiwubGFyZ2UtdXAtOD4uY29sdW1uc3tmbGV4OjAgMCAxMi41JTttYXgtd2lkdGg6MTIuNSV9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmxhcmdlLWV4cGFuZHtmbGV4OjEgMSAwcHh9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsubGFyZ2UtZmxleC1kaXItcm93e2ZsZXgtZGlyZWN0aW9uOnJvd30ubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2V7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LmxhcmdlLWZsZXgtZGlyLWNvbHVtbntmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNle2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfS5sYXJnZS1mbGV4LWNoaWxkLWF1dG97ZmxleDoxIDEgYXV0b30ubGFyZ2UtZmxleC1jaGlsZC1ncm93e2ZsZXg6MSAwIGF1dG99LmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5re2ZsZXg6MCAxIGF1dG99fS5yb3cubGFyZ2UtdW5zdGFjaz4uY29sdW1uLC5yb3cubGFyZ2UtdW5zdGFjaz4uY29sdW1uc3tmbGV4OjAgMCAxMDAlfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsucm93LmxhcmdlLXVuc3RhY2s+LmNvbHVtbiwucm93LmxhcmdlLXVuc3RhY2s+LmNvbHVtbnN7ZmxleDoxIDEgMHB4fX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmxhcmdlLWNvbGxhcHNlPi5jb2x1bW4sLmxhcmdlLWNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0ubGFyZ2UtdW5jb2xsYXBzZT4uY29sdW1uLC5sYXJnZS11bmNvbGxhcHNlPi5jb2x1bW5ze3BhZGRpbmctcmlnaHQ6LjkzNzVyZW07cGFkZGluZy1sZWZ0Oi45Mzc1cmVtfX0uc2hyaW5re2ZsZXg6MCAwIGF1dG87bWF4LXdpZHRoOjEwMCV9LmNvbHVtbi1ibG9ja3ttYXJnaW4tYm90dG9tOjEuMjVyZW19LmNvbHVtbi1ibG9jaz46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5jb2x1bW4tYmxvY2t7bWFyZ2luLWJvdHRvbToxLjg3NXJlbX0uY29sdW1uLWJsb2NrPjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH19LmFsaWduLXJpZ2h0e2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uYWxpZ24tY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmFsaWduLWp1c3RpZnl7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmFsaWduLXNwYWNlZHtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kfS5hbGlnbi10b3B7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uYWxpZ24tc2VsZi10b3B7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fS5hbGlnbi1ib3R0b217YWxpZ24taXRlbXM6ZmxleC1lbmR9LmFsaWduLXNlbGYtYm90dG9te2FsaWduLXNlbGY6ZmxleC1lbmR9LmFsaWduLW1pZGRsZXthbGlnbi1pdGVtczpjZW50ZXJ9LmFsaWduLXNlbGYtbWlkZGxle2FsaWduLXNlbGY6Y2VudGVyfS5hbGlnbi1zdHJldGNoe2FsaWduLWl0ZW1zOnN0cmV0Y2h9LmFsaWduLXNlbGYtc3RyZXRjaHthbGlnbi1zZWxmOnN0cmV0Y2h9LmFsaWduLWNlbnRlci1taWRkbGV7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7YWxpZ24tY29udGVudDpjZW50ZXJ9LnNtYWxsLW9yZGVyLTF7b3JkZXI6MX0uc21hbGwtb3JkZXItMntvcmRlcjoyfS5zbWFsbC1vcmRlci0ze29yZGVyOjN9LnNtYWxsLW9yZGVyLTR7b3JkZXI6NH0uc21hbGwtb3JkZXItNXtvcmRlcjo1fS5zbWFsbC1vcmRlci02e29yZGVyOjZ9QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5tZWRpdW0tb3JkZXItMXtvcmRlcjoxfS5tZWRpdW0tb3JkZXItMntvcmRlcjoyfS5tZWRpdW0tb3JkZXItM3tvcmRlcjozfS5tZWRpdW0tb3JkZXItNHtvcmRlcjo0fS5tZWRpdW0tb3JkZXItNXtvcmRlcjo1fS5tZWRpdW0tb3JkZXItNntvcmRlcjo2fX1AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7LmxhcmdlLW9yZGVyLTF7b3JkZXI6MX0ubGFyZ2Utb3JkZXItMntvcmRlcjoyfS5sYXJnZS1vcmRlci0ze29yZGVyOjN9LmxhcmdlLW9yZGVyLTR7b3JkZXI6NH0ubGFyZ2Utb3JkZXItNXtvcmRlcjo1fS5sYXJnZS1vcmRlci02e29yZGVyOjZ9fWRpdixkbCxkdCxkZCx1bCxvbCxsaSxoMSxoMixoMyxoNCxoNSxoNixwcmUsZm9ybSxwLGJsb2NrcXVvdGUsdGgsdGR7bWFyZ2luOjA7cGFkZGluZzowfXB7bWFyZ2luLWJvdHRvbToxcmVtO2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OjEuNjt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHl9ZW0saXtmb250LXN0eWxlOml0YWxpYztsaW5lLWhlaWdodDppbmhlcml0fXN0cm9uZyxie2ZvbnQtd2VpZ2h0OmJvbGQ7bGluZS1oZWlnaHQ6aW5oZXJpdH1zbWFsbHtmb250LXNpemU6ODAlO2xpbmUtaGVpZ2h0OmluaGVyaXR9aDEsaDIsaDMsaDQsaDUsaDZ7Zm9udC1mYW1pbHk6XCJMYXRvV2ViXCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2NvbG9yOmluaGVyaXQ7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fWgxIHNtYWxsLGgyIHNtYWxsLGgzIHNtYWxsLGg0IHNtYWxsLGg1IHNtYWxsLGg2IHNtYWxse2xpbmUtaGVpZ2h0OjA7Y29sb3I6I2NhY2FjYX1oMXtmb250LXNpemU6MS41cmVtO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouNXJlbX1oMntmb250LXNpemU6MS4yNXJlbTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjVyZW19aDN7Zm9udC1zaXplOjEuMTg3NXJlbTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjVyZW19aDR7Zm9udC1zaXplOjEuMTI1cmVtO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouNXJlbX1oNXtmb250LXNpemU6MS4wNjI1cmVtO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTouNXJlbX1oNntmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjVyZW19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pe2gxe2ZvbnQtc2l6ZTozcmVtfWgye2ZvbnQtc2l6ZToyLjVyZW19aDN7Zm9udC1zaXplOjEuOTM3NXJlbX1oNHtmb250LXNpemU6MS41NjI1cmVtfWg1e2ZvbnQtc2l6ZToxLjI1cmVtfWg2e2ZvbnQtc2l6ZToxcmVtfX1he2xpbmUtaGVpZ2h0OmluaGVyaXQ7Y29sb3I6IzYwYzt0ZXh0LWRlY29yYXRpb246bm9uZTtjdXJzb3I6cG9pbnRlcn1hOmhvdmVyLGE6Zm9jdXN7Y29sb3I6IzU4MDBhZn1hIGltZ3tib3JkZXI6MH1ocntjbGVhcjpib3RoO21heC13aWR0aDo3NXJlbTtoZWlnaHQ6MDttYXJnaW46MS4yNXJlbSBhdXRvO2JvcmRlci10b3A6MDtib3JkZXItcmlnaHQ6MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjY2FjYWNhO2JvcmRlci1sZWZ0OjB9dWwsb2wsZGx7bWFyZ2luLWJvdHRvbToxcmVtO2xpc3Qtc3R5bGUtcG9zaXRpb246b3V0c2lkZTtsaW5lLWhlaWdodDoxLjZ9bGl7Zm9udC1zaXplOmluaGVyaXR9dWx7bWFyZ2luLWxlZnQ6MS4yNXJlbTtsaXN0LXN0eWxlLXR5cGU6ZGlzY31vbHttYXJnaW4tbGVmdDoxLjI1cmVtfXVsIHVsLG9sIHVsLHVsIG9sLG9sIG9se21hcmdpbi1sZWZ0OjEuMjVyZW07bWFyZ2luLWJvdHRvbTowfWRse21hcmdpbi1ib3R0b206MXJlbX1kbCBkdHttYXJnaW4tYm90dG9tOi4zcmVtO2ZvbnQtd2VpZ2h0OmJvbGR9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW07cGFkZGluZzouNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjY2FjYWNhfWJsb2NrcXVvdGUsYmxvY2txdW90ZSBwe2xpbmUtaGVpZ2h0OjEuNjtjb2xvcjojOGE4YThhfWNpdGV7ZGlzcGxheTpibG9jaztmb250LXNpemU6LjgxMjVyZW07Y29sb3I6IzhhOGE4YX1jaXRlOmJlZm9yZXtjb250ZW50Olwi4oCUIFwifWFiYnJ7Ym9yZGVyLWJvdHRvbToxcHggZG90dGVkICMwYTBhMGE7Y29sb3I6IzBhMGEwYTtjdXJzb3I6aGVscH1maWd1cmV7bWFyZ2luOjB9Y29kZXtwYWRkaW5nOi4xMjVyZW0gLjMxMjVyZW0gLjA2MjVyZW07Ym9yZGVyOjFweCBzb2xpZCAjY2FjYWNhO2JhY2tncm91bmQtY29sb3I6I2U2ZTZlNjtmb250LWZhbWlseTpDb25zb2xhcyxcIkxpYmVyYXRpb24gTW9ub1wiLENvdXJpZXIsbW9ub3NwYWNlO2ZvbnQtd2VpZ2h0Om5vcm1hbDtjb2xvcjojMGEwYTBhfWtiZHttYXJnaW46MDtwYWRkaW5nOi4xMjVyZW0gLjI1cmVtIDA7YmFja2dyb3VuZC1jb2xvcjojZTZlNmU2O2ZvbnQtZmFtaWx5OkNvbnNvbGFzLFwiTGliZXJhdGlvbiBNb25vXCIsQ291cmllcixtb25vc3BhY2U7Y29sb3I6IzBhMGEwYTtib3JkZXItcmFkaXVzOi41cmVtfS5zdWJoZWFkZXJ7bWFyZ2luLXRvcDouMnJlbTttYXJnaW4tYm90dG9tOi41cmVtO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsaW5lLWhlaWdodDoxLjQ7Y29sb3I6IzhhOGE4YX0ubGVhZHtmb250LXNpemU6MTI1JTtsaW5lLWhlaWdodDoxLjZ9LnN0YXR7Zm9udC1zaXplOjIuNXJlbTtsaW5lLWhlaWdodDoxfXArLnN0YXR7bWFyZ2luLXRvcDotMXJlbX0ubm8tYnVsbGV0e21hcmdpbi1sZWZ0OjA7bGlzdC1zdHlsZTpub25lfS50ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0fS50ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LnRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyfS50ZXh0LWp1c3RpZnl7dGV4dC1hbGlnbjpqdXN0aWZ5fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVkaXVtLXRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9Lm1lZGl1bS10ZXh0LXJpZ2h0e3RleHQtYWxpZ246cmlnaHR9Lm1lZGl1bS10ZXh0LWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0ubWVkaXVtLXRleHQtanVzdGlmeXt0ZXh0LWFsaWduOmp1c3RpZnl9fUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKXsubGFyZ2UtdGV4dC1sZWZ0e3RleHQtYWxpZ246bGVmdH0ubGFyZ2UtdGV4dC1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0fS5sYXJnZS10ZXh0LWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcn0ubGFyZ2UtdGV4dC1qdXN0aWZ5e3RleHQtYWxpZ246anVzdGlmeX19LnNob3ctZm9yLXByaW50e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fUBtZWRpYSBwcmludHsqe2JhY2tncm91bmQ6dHJhbnNwYXJlbnQgIWltcG9ydGFudDtib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtjb2xvcjpibGFjayAhaW1wb3J0YW50O3RleHQtc2hhZG93Om5vbmUgIWltcG9ydGFudH0uc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTpibG9jayAhaW1wb3J0YW50fS5oaWRlLWZvci1wcmludHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH10YWJsZS5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlICFpbXBvcnRhbnR9dGhlYWQuc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTp0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudH10Ym9keS5zaG93LWZvci1wcmludHtkaXNwbGF5OnRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50fXRyLnNob3ctZm9yLXByaW50e2Rpc3BsYXk6dGFibGUtcm93ICFpbXBvcnRhbnR9dGQuc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTp0YWJsZS1jZWxsICFpbXBvcnRhbnR9dGguc2hvdy1mb3ItcHJpbnR7ZGlzcGxheTp0YWJsZS1jZWxsICFpbXBvcnRhbnR9YSxhOnZpc2l0ZWR7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1hW2hyZWZdOmFmdGVye2NvbnRlbnQ6XCIgKFwiIGF0dHIoaHJlZikgXCIpXCJ9LmlyIGE6YWZ0ZXIsYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixhW2hyZWZePScjJ106YWZ0ZXJ7Y29udGVudDonJ31hYmJyW3RpdGxlXTphZnRlcntjb250ZW50OlwiIChcIiBhdHRyKHRpdGxlKSBcIilcIn1wcmUsYmxvY2txdW90ZXtib3JkZXI6MXB4IHNvbGlkICM4YThhOGE7cGFnZS1icmVhay1pbnNpZGU6YXZvaWR9dGhlYWR7ZGlzcGxheTp0YWJsZS1oZWFkZXItZ3JvdXB9dHIsaW1ne3BhZ2UtYnJlYWstaW5zaWRlOmF2b2lkfWltZ3ttYXgtd2lkdGg6MTAwJSAhaW1wb3J0YW50fUBwYWdle21hcmdpbjowLjVjbX1wLGgyLGgze29ycGhhbnM6Mzt3aWRvd3M6M31oMixoM3twYWdlLWJyZWFrLWFmdGVyOmF2b2lkfS5wcmludC1icmVhay1pbnNpZGV7cGFnZS1icmVhay1pbnNpZGU6YXV0b319LmJ1dHRvbntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luOjAgMCAxcmVtIDA7cGFkZGluZzowLjg1ZW0gMWVtOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czouNXJlbTt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsY29sb3IgMC4yNXMgZWFzZS1vdXQ7Zm9udC1zaXplOjAuOXJlbTtsaW5lLWhlaWdodDoxO3RleHQtYWxpZ246Y2VudGVyO2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6IzYwYztjb2xvcjojZmVmZWZlfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9ue291dGxpbmU6MH0uYnV0dG9uOmhvdmVyLC5idXR0b246Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojNDIwMDg1O2NvbG9yOiNmZWZlZmV9LmJ1dHRvbi50aW55e2ZvbnQtc2l6ZTouNnJlbX0uYnV0dG9uLnNtYWxse2ZvbnQtc2l6ZTouNzVyZW19LmJ1dHRvbi5sYXJnZXtmb250LXNpemU6MS4yNXJlbX0uYnV0dG9uLmV4cGFuZGVke2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowfS5idXR0b24ucHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM2MGM7Y29sb3I6I2ZlZmVmZX0uYnV0dG9uLnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5wcmltYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzUyMDBhMztjb2xvcjojZmVmZWZlfS5idXR0b24uc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6I0YzNDIxMztjb2xvcjojMGEwYTBhfS5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLC5idXR0b24uc2Vjb25kYXJ5OmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2M3MzIwYTtjb2xvcjojMGEwYTBhfS5idXR0b24udGhpcmR7YmFja2dyb3VuZC1jb2xvcjojRjlCNjAyO2NvbG9yOiMwYTBhMGF9LmJ1dHRvbi50aGlyZDpob3ZlciwuYnV0dG9uLnRoaXJkOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2M3OTIwMjtjb2xvcjojMGEwYTBhfS5idXR0b24uc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiMzYWRiNzY7Y29sb3I6IzBhMGEwYX0uYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsLmJ1dHRvbi5zdWNjZXNzOmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzIyYmI1Yjtjb2xvcjojMGEwYTBhfS5idXR0b24ud2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmFlMDA7Y29sb3I6IzBhMGEwYX0uYnV0dG9uLndhcm5pbmc6aG92ZXIsLmJ1dHRvbi53YXJuaW5nOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2NjOGIwMDtjb2xvcjojMGEwYTBhfS5idXR0b24uYWxlcnR7YmFja2dyb3VuZC1jb2xvcjojY2M0YjM3O2NvbG9yOiNmZWZlZmV9LmJ1dHRvbi5hbGVydDpob3ZlciwuYnV0dG9uLmFsZXJ0OmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2E1M2IyYTtjb2xvcjojZmVmZWZlfS5idXR0b24uaG9sbG93e2JvcmRlcjoxcHggc29saWQgIzYwYztjb2xvcjojNjBjfS5idXR0b24uaG9sbG93LC5idXR0b24uaG9sbG93OmhvdmVyLC5idXR0b24uaG9sbG93OmZvY3Vze2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi5ob2xsb3c6aG92ZXIsLmJ1dHRvbi5ob2xsb3c6Zm9jdXN7Ym9yZGVyLWNvbG9yOiMzMDY7Y29sb3I6IzMwNn0uYnV0dG9uLmhvbGxvdy5wcmltYXJ5e2JvcmRlcjoxcHggc29saWQgIzYwYztjb2xvcjojNjBjfS5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c3tib3JkZXItY29sb3I6IzMwNjtjb2xvcjojMzA2fS5idXR0b24uaG9sbG93LnNlY29uZGFyeXtib3JkZXI6MXB4IHNvbGlkICNGMzQyMTM7Y29sb3I6I0YzNDIxM30uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3Vze2JvcmRlci1jb2xvcjojN2QxZjA2O2NvbG9yOiM3ZDFmMDZ9LmJ1dHRvbi5ob2xsb3cudGhpcmR7Ym9yZGVyOjFweCBzb2xpZCAjRjlCNjAyO2NvbG9yOiNGOUI2MDJ9LmJ1dHRvbi5ob2xsb3cudGhpcmQ6aG92ZXIsLmJ1dHRvbi5ob2xsb3cudGhpcmQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM3ZDViMDE7Y29sb3I6IzdkNWIwMX0uYnV0dG9uLmhvbGxvdy5zdWNjZXNze2JvcmRlcjoxcHggc29saWQgIzNhZGI3Njtjb2xvcjojM2FkYjc2fS5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1c3tib3JkZXItY29sb3I6IzE1NzUzOTtjb2xvcjojMTU3NTM5fS5idXR0b24uaG9sbG93Lndhcm5pbmd7Ym9yZGVyOjFweCBzb2xpZCAjZmZhZTAwO2NvbG9yOiNmZmFlMDB9LmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3Vze2JvcmRlci1jb2xvcjojODA1NzAwO2NvbG9yOiM4MDU3MDB9LmJ1dHRvbi5ob2xsb3cuYWxlcnR7Ym9yZGVyOjFweCBzb2xpZCAjY2M0YjM3O2NvbG9yOiNjYzRiMzd9LmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM2NzI1MWE7Y29sb3I6IzY3MjUxYX0uYnV0dG9uLmRpc2FibGVkLC5idXR0b25bZGlzYWJsZWRde29wYWNpdHk6LjI1O2N1cnNvcjpub3QtYWxsb3dlZH0uYnV0dG9uLmRpc2FibGVkLC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywuYnV0dG9uW2Rpc2FibGVkXSwuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwuYnV0dG9uW2Rpc2FibGVkXTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiM2MGM7Y29sb3I6I2ZlZmVmZX0uYnV0dG9uLmRpc2FibGVkLnByaW1hcnksLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeXtvcGFjaXR5Oi4yNTtjdXJzb3I6bm90LWFsbG93ZWR9LmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojNjBjO2NvbG9yOiNmZWZlZmV9LmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5e29wYWNpdHk6LjI1O2N1cnNvcjpub3QtYWxsb3dlZH0uYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnksLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNGMzQyMTM7Y29sb3I6IzBhMGEwYX0uYnV0dG9uLmRpc2FibGVkLnRoaXJkLC5idXR0b25bZGlzYWJsZWRdLnRoaXJke29wYWNpdHk6LjI1O2N1cnNvcjpub3QtYWxsb3dlZH0uYnV0dG9uLmRpc2FibGVkLnRoaXJkLC5idXR0b24uZGlzYWJsZWQudGhpcmQ6aG92ZXIsLmJ1dHRvbi5kaXNhYmxlZC50aGlyZDpmb2N1cywuYnV0dG9uW2Rpc2FibGVkXS50aGlyZCwuYnV0dG9uW2Rpc2FibGVkXS50aGlyZDpob3ZlciwuYnV0dG9uW2Rpc2FibGVkXS50aGlyZDpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNGOUI2MDI7Y29sb3I6IzBhMGEwYX0uYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzc3tvcGFjaXR5Oi4yNTtjdXJzb3I6bm90LWFsbG93ZWR9LmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojM2FkYjc2O2NvbG9yOiMwYTBhMGF9LmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmd7b3BhY2l0eTouMjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idXR0b24uZGlzYWJsZWQud2FybmluZywuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcsLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2ZmYWUwMDtjb2xvcjojMGEwYTBhfS5idXR0b24uZGlzYWJsZWQuYWxlcnQsLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnR7b3BhY2l0eTouMjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idXR0b24uZGlzYWJsZWQuYWxlcnQsLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmZvY3VzLC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2NjNGIzNztjb2xvcjojZmVmZWZlfS5idXR0b24uZHJvcGRvd246OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgLjRlbTtjb250ZW50OicnO2JvcmRlci1ib3R0b20td2lkdGg6MDtib3JkZXItdG9wLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowLjRlbTtkaXNwbGF5OmlubGluZS1ibG9jaztmbG9hdDpyaWdodDttYXJnaW4tbGVmdDoxZW19LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVye2JvcmRlci10b3AtY29sb3I6IzYwY30uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlcntib3JkZXItdG9wLWNvbG9yOiM2MGN9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlcntib3JkZXItdG9wLWNvbG9yOiNGMzQyMTN9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cudGhpcmQ6OmFmdGVye2JvcmRlci10b3AtY29sb3I6I0Y5QjYwMn0uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlcntib3JkZXItdG9wLWNvbG9yOiMzYWRiNzZ9LmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjojZmZhZTAwfS5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlcntib3JkZXItdG9wLWNvbG9yOiNjYzRiMzd9LmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlcnt0b3A6LTAuMWVtO2Zsb2F0Om5vbmU7bWFyZ2luLWxlZnQ6MH1bdHlwZT0ndGV4dCddLFt0eXBlPSdwYXNzd29yZCddLFt0eXBlPSdkYXRlJ10sW3R5cGU9J2RhdGV0aW1lJ10sW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sW3R5cGU9J21vbnRoJ10sW3R5cGU9J3dlZWsnXSxbdHlwZT0nZW1haWwnXSxbdHlwZT0nbnVtYmVyJ10sW3R5cGU9J3NlYXJjaCddLFt0eXBlPSd0ZWwnXSxbdHlwZT0ndGltZSddLFt0eXBlPSd1cmwnXSxbdHlwZT0nY29sb3InXSx0ZXh0YXJlYXtkaXNwbGF5OmJsb2NrO2JveC1zaXppbmc6Ym9yZGVyLWJveDt3aWR0aDoxMDAlO2hlaWdodDoyLjQzNzVyZW07bWFyZ2luOjAgMCAxcmVtO3BhZGRpbmc6LjVyZW07Ym9yZGVyOjFweCBzb2xpZCAjY2FjYWNhO2JvcmRlci1yYWRpdXM6LjVyZW07YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMTAsMTAsMTAsMC4xKTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0Om5vcm1hbDtjb2xvcjojMGEwYTBhO3RyYW5zaXRpb246Ym94LXNoYWRvdyAwLjVzLGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDthcHBlYXJhbmNlOm5vbmV9W3R5cGU9J3RleHQnXTpmb2N1cyxbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cyxbdHlwZT0nZGF0ZSddOmZvY3VzLFt0eXBlPSdkYXRldGltZSddOmZvY3VzLFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLFt0eXBlPSdtb250aCddOmZvY3VzLFt0eXBlPSd3ZWVrJ106Zm9jdXMsW3R5cGU9J2VtYWlsJ106Zm9jdXMsW3R5cGU9J251bWJlciddOmZvY3VzLFt0eXBlPSdzZWFyY2gnXTpmb2N1cyxbdHlwZT0ndGVsJ106Zm9jdXMsW3R5cGU9J3RpbWUnXTpmb2N1cyxbdHlwZT0ndXJsJ106Zm9jdXMsW3R5cGU9J2NvbG9yJ106Zm9jdXMsdGV4dGFyZWE6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoxcHggc29saWQgIzhhOGE4YTtiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmU7Ym94LXNoYWRvdzowIDAgNXB4ICNjYWNhY2E7dHJhbnNpdGlvbjpib3gtc2hhZG93IDAuNXMsYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0fXRleHRhcmVhe21heC13aWR0aDoxMDAlfXRleHRhcmVhW3Jvd3Nde2hlaWdodDphdXRvfWlucHV0OjpwbGFjZWhvbGRlcix0ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6I2NhY2FjYX1pbnB1dDpkaXNhYmxlZCxpbnB1dFtyZWFkb25seV0sdGV4dGFyZWE6ZGlzYWJsZWQsdGV4dGFyZWFbcmVhZG9ubHlde2JhY2tncm91bmQtY29sb3I6I2U2ZTZlNjtjdXJzb3I6bm90LWFsbG93ZWR9W3R5cGU9J3N1Ym1pdCddLFt0eXBlPSdidXR0b24nXXthcHBlYXJhbmNlOm5vbmU7Ym9yZGVyLXJhZGl1czouNXJlbX1pbnB1dFt0eXBlPSdzZWFyY2gnXXtib3gtc2l6aW5nOmJvcmRlci1ib3h9W3R5cGU9J2ZpbGUnXSxbdHlwZT0nY2hlY2tib3gnXSxbdHlwZT0ncmFkaW8nXXttYXJnaW46MCAwIDFyZW19W3R5cGU9J2NoZWNrYm94J10rbGFiZWwsW3R5cGU9J3JhZGlvJ10rbGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7bWFyZ2luLWxlZnQ6LjVyZW07bWFyZ2luLXJpZ2h0OjFyZW07bWFyZ2luLWJvdHRvbTowfVt0eXBlPSdjaGVja2JveCddK2xhYmVsW2Zvcl0sW3R5cGU9J3JhZGlvJ10rbGFiZWxbZm9yXXtjdXJzb3I6cG9pbnRlcn1sYWJlbD5bdHlwZT0nY2hlY2tib3gnXSxsYWJlbD5bdHlwZT0ncmFkaW8nXXttYXJnaW4tcmlnaHQ6LjVyZW19W3R5cGU9J2ZpbGUnXXt3aWR0aDoxMDAlfWxhYmVse2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjA7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6bm9ybWFsO2xpbmUtaGVpZ2h0OjEuODtjb2xvcjojMGEwYTBhfWxhYmVsLm1pZGRsZXttYXJnaW46MCAwIDFyZW07cGFkZGluZzouNTYyNXJlbSAwfS5oZWxwLXRleHR7bWFyZ2luLXRvcDotLjVyZW07Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtc3R5bGU6aXRhbGljO2NvbG9yOiMwYTBhMGF9LmlucHV0LWdyb3Vwe2Rpc3BsYXk6dGFibGU7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjFyZW19LmlucHV0LWdyb3VwPjpmaXJzdC1jaGlsZHtib3JkZXItcmFkaXVzOi41cmVtIDAgMCAuNXJlbX0uaW5wdXQtZ3JvdXA+Omxhc3QtY2hpbGQ+Kntib3JkZXItcmFkaXVzOjAgLjVyZW0gLjVyZW0gMH0uaW5wdXQtZ3JvdXAtbGFiZWwsLmlucHV0LWdyb3VwLWZpZWxkLC5pbnB1dC1ncm91cC1idXR0b24sLmlucHV0LWdyb3VwLWJ1dHRvbiBhLC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbHttYXJnaW46MDt3aGl0ZS1zcGFjZTpub3dyYXA7ZGlzcGxheTp0YWJsZS1jZWxsO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uaW5wdXQtZ3JvdXAtbGFiZWx7cGFkZGluZzowIDFyZW07Ym9yZGVyOjFweCBzb2xpZCAjY2FjYWNhO2JhY2tncm91bmQ6I2U2ZTZlNjtjb2xvcjojMGEwYTBhO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDt3aWR0aDoxJTtoZWlnaHQ6MTAwJX0uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGR7Ym9yZGVyLXJpZ2h0OjB9LmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGR7Ym9yZGVyLWxlZnQ6MH0uaW5wdXQtZ3JvdXAtZmllbGR7Ym9yZGVyLXJhZGl1czowO2hlaWdodDoyLjVyZW19LmlucHV0LWdyb3VwLWJ1dHRvbntwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjA7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MSU7aGVpZ2h0OjEwMCV9LmlucHV0LWdyb3VwLWJ1dHRvbiBhLC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbHtoZWlnaHQ6Mi41cmVtO3BhZGRpbmctdG9wOjA7cGFkZGluZy1ib3R0b206MDtmb250LXNpemU6MXJlbX0uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbntkaXNwbGF5OnRhYmxlLWNlbGx9ZmllbGRzZXR7bWFyZ2luOjA7cGFkZGluZzowO2JvcmRlcjowfWxlZ2VuZHttYXgtd2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOi41cmVtfS5maWVsZHNldHttYXJnaW46MS4xMjVyZW0gMDtwYWRkaW5nOjEuMjVyZW07Ym9yZGVyOjFweCBzb2xpZCAjY2FjYWNhfS5maWVsZHNldCBsZWdlbmR7bWFyZ2luOjA7bWFyZ2luLWxlZnQ6LS4xODc1cmVtO3BhZGRpbmc6MCAuMTg3NXJlbTtiYWNrZ3JvdW5kOiNmZmZ9c2VsZWN0e2hlaWdodDoyLjQzNzVyZW07bWFyZ2luOjAgMCAxcmVtO3BhZGRpbmc6LjVyZW07YXBwZWFyYW5jZTpub25lO2JvcmRlcjoxcHggc29saWQgI2NhY2FjYTtib3JkZXItcmFkaXVzOi41cmVtO2JhY2tncm91bmQtY29sb3I6I2ZlZmVmZTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0Om5vcm1hbDtjb2xvcjojMGEwYTBhO2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO2JhY2tncm91bmQtb3JpZ2luOmNvbnRlbnQtYm94O2JhY2tncm91bmQtcG9zaXRpb246cmlnaHQgLTFyZW0gY2VudGVyO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6OXB4IDZweDtwYWRkaW5nLXJpZ2h0OjEuNXJlbTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgMC41cyxib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXR9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCl7c2VsZWN0e2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKX19c2VsZWN0OmZvY3Vze291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM4YThhOGE7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO2JveC1zaGFkb3c6MCAwIDVweCAjY2FjYWNhO3RyYW5zaXRpb246Ym94LXNoYWRvdyAwLjVzLGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dH1zZWxlY3Q6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjojZTZlNmU2O2N1cnNvcjpub3QtYWxsb3dlZH1zZWxlY3Q6Oi1tcy1leHBhbmR7ZGlzcGxheTpub25lfXNlbGVjdFttdWx0aXBsZV17aGVpZ2h0OmF1dG87YmFja2dyb3VuZC1pbWFnZTpub25lfS5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpe2JvcmRlci1jb2xvcjojY2M0YjM3O2JhY2tncm91bmQtY29sb3I6I2Y5ZWNlYX0uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXJ7Y29sb3I6I2NjNGIzN30uaXMtaW52YWxpZC1sYWJlbHtjb2xvcjojY2M0YjM3fS5mb3JtLWVycm9ye2Rpc3BsYXk6bm9uZTttYXJnaW4tdG9wOi0uNXJlbTttYXJnaW4tYm90dG9tOjFyZW07Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDpib2xkO2NvbG9yOiNjYzRiMzd9LmZvcm0tZXJyb3IuaXMtdmlzaWJsZXtkaXNwbGF5OmJsb2NrfS5oaWRle2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fS5pbnZpc2libGV7dmlzaWJpbGl0eTpoaWRkZW59QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXsuaGlkZS1mb3Itc21hbGwtb25seXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsuc2hvdy1mb3Itc21hbGwtb25seXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pey5oaWRlLWZvci1tZWRpdW17ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7LnNob3ctZm9yLW1lZGl1bXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSl7LmhpZGUtZm9yLW1lZGl1bS1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5zaG93LWZvci1tZWRpdW0tb25seXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5oaWRlLWZvci1sYXJnZXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKXsuc2hvdy1mb3ItbGFyZ2V7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pey5oaWRlLWZvci1sYXJnZS1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pey5zaG93LWZvci1sYXJnZS1vbmx5e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX0uc2hvdy1mb3Itc3IsLnNob3ctb24tZm9jdXN7cG9zaXRpb246YWJzb2x1dGUgIWltcG9ydGFudDt3aWR0aDoxcHg7aGVpZ2h0OjFweDtvdmVyZmxvdzpoaWRkZW47Y2xpcDpyZWN0KDAsIDAsIDAsIDApfS5zaG93LW9uLWZvY3VzOmFjdGl2ZSwuc2hvdy1vbi1mb2N1czpmb2N1c3twb3NpdGlvbjpzdGF0aWMgIWltcG9ydGFudDt3aWR0aDphdXRvO2hlaWdodDphdXRvO292ZXJmbG93OnZpc2libGU7Y2xpcDphdXRvfS5zaG93LWZvci1sYW5kc2NhcGUsLmhpZGUtZm9yLXBvcnRyYWl0e2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSl7LnNob3ctZm9yLWxhbmRzY2FwZSwuaGlkZS1mb3ItcG9ydHJhaXR7ZGlzcGxheTpibG9jayAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KXsuc2hvdy1mb3ItbGFuZHNjYXBlLC5oaWRlLWZvci1wb3J0cmFpdHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudH19LmhpZGUtZm9yLWxhbmRzY2FwZSwuc2hvdy1mb3ItcG9ydHJhaXR7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpey5oaWRlLWZvci1sYW5kc2NhcGUsLnNob3ctZm9yLXBvcnRyYWl0e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fX1AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KXsuaGlkZS1mb3ItbGFuZHNjYXBlLC5zaG93LWZvci1wb3J0cmFpdHtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnR9fS5mbG9hdC1sZWZ0e2Zsb2F0OmxlZnQgIWltcG9ydGFudH0uZmxvYXQtcmlnaHR7ZmxvYXQ6cmlnaHQgIWltcG9ydGFudH0uZmxvYXQtY2VudGVye2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXJpZ2h0OmF1dG87bWFyZ2luLWxlZnQ6YXV0b30uY2xlYXJmaXg6OmJlZm9yZSwuY2xlYXJmaXg6OmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDonICd9LmNsZWFyZml4OjphZnRlcntjbGVhcjpib3RofS5pcy1kcmlsbGRvd257cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufS5pcy1kcmlsbGRvd24gbGl7ZGlzcGxheTpibG9ja30uaXMtZHJpbGxkb3duLmFuaW1hdGUtaGVpZ2h0e3RyYW5zaXRpb246aGVpZ2h0IDAuNXN9LmlzLWRyaWxsZG93bi1zdWJtZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MTAwJTt6LWluZGV4Oi0xO3dpZHRoOjEwMCU7YmFja2dyb3VuZDojZmVmZWZlO3RyYW5zaXRpb246dHJhbnNmb3JtIDAuMTVzIGxpbmVhcn0uaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZle3otaW5kZXg6MTtkaXNwbGF5OmJsb2NrO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX0uaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZ3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX0uZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXN7bWluLWhlaWdodDoxMDAlfS5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQ+YXtwb3NpdGlvbjpyZWxhdGl2ZX0uaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50PmE6OmFmdGVye2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLXJpZ2h0LXdpZHRoOjA7Ym9yZGVyLWxlZnQtc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZWZlZmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTttYXJnaW4tdG9wOi02cHg7cmlnaHQ6MXJlbX0uanMtZHJpbGxkb3duLWJhY2s+YTo6YmVmb3Jle2Rpc3BsYXk6YmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXI6aW5zZXQgNnB4O2NvbnRlbnQ6Jyc7Ym9yZGVyLWxlZnQtd2lkdGg6MDtib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWxlZnQtd2lkdGg6MDtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luLXJpZ2h0OjAuNzVyZW07Ym9yZGVyLWxlZnQtd2lkdGg6MH0ubWVudXttYXJnaW46MDtsaXN0LXN0eWxlLXR5cGU6bm9uZX0ubWVudT5saXtkaXNwbGF5OnRhYmxlLWNlbGw7dmVydGljYWwtYWxpZ246bWlkZGxlfVtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudT5saXtvdXRsaW5lOjB9Lm1lbnU+bGk+YXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MC43cmVtIDFyZW07bGluZS1oZWlnaHQ6MX0ubWVudSBpbnB1dCwubWVudSBzZWxlY3QsLm1lbnUgYSwubWVudSBidXR0b257bWFyZ2luLWJvdHRvbTowfS5tZW51PmxpPmEgaW1nLC5tZW51PmxpPmEgaSwubWVudT5saT5hIHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lm1lbnU+bGk+YSBpbWcrc3BhbiwubWVudT5saT5hIGkrc3BhbiwubWVudT5saT5hIHN2ZytzcGFue3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0ubWVudT5saT5hIGltZywubWVudT5saT5hIGksLm1lbnU+bGk+YSBzdmd7bWFyZ2luLXJpZ2h0Oi4yNXJlbTtkaXNwbGF5OmlubGluZS1ibG9ja30ubWVudT5saSwubWVudS5ob3Jpem9udGFsPmxpe2Rpc3BsYXk6dGFibGUtY2VsbH0ubWVudS5leHBhbmRlZHtkaXNwbGF5OnRhYmxlO3dpZHRoOjEwMCU7dGFibGUtbGF5b3V0OmZpeGVkfS5tZW51LmV4cGFuZGVkPmxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGR7d2lkdGg6MTAwJX0ubWVudS52ZXJ0aWNhbD5saXtkaXNwbGF5OmJsb2NrfUBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKXsubWVudS5tZWRpdW0taG9yaXpvbnRhbD5saXtkaXNwbGF5OnRhYmxlLWNlbGx9Lm1lbnUubWVkaXVtLWV4cGFuZGVke2Rpc3BsYXk6dGFibGU7d2lkdGg6MTAwJTt0YWJsZS1sYXlvdXQ6Zml4ZWR9Lm1lbnUubWVkaXVtLWV4cGFuZGVkPmxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGR7d2lkdGg6MTAwJX0ubWVudS5tZWRpdW0tdmVydGljYWw+bGl7ZGlzcGxheTpibG9ja319QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pey5tZW51LmxhcmdlLWhvcml6b250YWw+bGl7ZGlzcGxheTp0YWJsZS1jZWxsfS5tZW51LmxhcmdlLWV4cGFuZGVke2Rpc3BsYXk6dGFibGU7d2lkdGg6MTAwJTt0YWJsZS1sYXlvdXQ6Zml4ZWR9Lm1lbnUubGFyZ2UtZXhwYW5kZWQ+bGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZHt3aWR0aDoxMDAlfS5tZW51LmxhcmdlLXZlcnRpY2FsPmxpe2Rpc3BsYXk6YmxvY2t9fS5tZW51LnNpbXBsZSBsaXtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3A7bGluZS1oZWlnaHQ6MX0ubWVudS5zaW1wbGUgYXtwYWRkaW5nOjB9Lm1lbnUuc2ltcGxlIGxpe21hcmdpbi1sZWZ0OjA7bWFyZ2luLXJpZ2h0OjFyZW19Lm1lbnUuc2ltcGxlLmFsaWduLXJpZ2h0IGxpe21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjFyZW19Lm1lbnUuYWxpZ24tcmlnaHQ6OmJlZm9yZSwubWVudS5hbGlnbi1yaWdodDo6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OicgJ30ubWVudS5hbGlnbi1yaWdodDo6YWZ0ZXJ7Y2xlYXI6Ym90aH0ubWVudS5hbGlnbi1yaWdodD5saXtmbG9hdDpyaWdodH0ubWVudS5pY29uLXRvcD5saT5he3RleHQtYWxpZ246Y2VudGVyfS5tZW51Lmljb24tdG9wPmxpPmEgaW1nLC5tZW51Lmljb24tdG9wPmxpPmEgaSwubWVudS5pY29uLXRvcD5saT5hIHN2Z3tkaXNwbGF5OmJsb2NrO21hcmdpbjowIGF1dG8gLjI1cmVtfS5tZW51Lmljb24tdG9wLnZlcnRpY2FsIGE+c3BhbnttYXJnaW46YXV0b30ubWVudS5uZXN0ZWR7bWFyZ2luLWxlZnQ6MXJlbX0ubWVudSAuYWN0aXZlPmF7YmFja2dyb3VuZDojNjBjO2NvbG9yOiNmZWZlZmV9Lm1lbnUubWVudS1ib3JkZXJlZCBsaXtib3JkZXI6MXB4IHNvbGlkICNlNmU2ZTZ9Lm1lbnUubWVudS1ib3JkZXJlZCBsaTpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wOjB9Lm1lbnUubWVudS1ob3ZlciBsaTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNlNmU2ZTZ9Lm1lbnUtdGV4dHtwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjA7cGFkZGluZzowLjdyZW0gMXJlbTtmb250LXdlaWdodDpib2xkO2xpbmUtaGVpZ2h0OjE7Y29sb3I6aW5oZXJpdH0ubWVudS1jZW50ZXJlZHt0ZXh0LWFsaWduOmNlbnRlcn0ubWVudS1jZW50ZXJlZD4ubWVudXtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjp0b3B9Lm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWx7ZGlzcGxheTpub25lfXRhYmxle3dpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbToxcmVtO2JvcmRlci1yYWRpdXM6LjVyZW19dGFibGUgdGhlYWQsdGFibGUgdGJvZHksdGFibGUgdGZvb3R7Ym9yZGVyOjFweCBzb2xpZCAjZjFmMWYxO2JhY2tncm91bmQtY29sb3I6I2ZlZmVmZX10YWJsZSBjYXB0aW9ue3BhZGRpbmc6LjVyZW0gLjYyNXJlbSAuNjI1cmVtO2ZvbnQtd2VpZ2h0OmJvbGR9dGFibGUgdGhlYWR7YmFja2dyb3VuZDojZjhmOGY4O2NvbG9yOiMwYTBhMGF9dGFibGUgdGZvb3R7YmFja2dyb3VuZDojZjFmMWYxO2NvbG9yOiMwYTBhMGF9dGFibGUgdGhlYWQgdHIsdGFibGUgdGZvb3QgdHJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH10YWJsZSB0aGVhZCB0aCx0YWJsZSB0aGVhZCB0ZCx0YWJsZSB0Zm9vdCB0aCx0YWJsZSB0Zm9vdCB0ZHtwYWRkaW5nOi41cmVtIC42MjVyZW0gLjYyNXJlbTtmb250LXdlaWdodDpib2xkO3RleHQtYWxpZ246bGVmdH10YWJsZSB0Ym9keSB0aCx0YWJsZSB0Ym9keSB0ZHtwYWRkaW5nOi41cmVtIC42MjVyZW0gLjYyNXJlbX10YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbil7Ym9yZGVyLWJvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2YxZjFmMX10YWJsZS51bnN0cmlwZWQgdGJvZHl7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlfXRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0cntib3JkZXItYm90dG9tOjA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YxZjFmMTtiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmV9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKXt0YWJsZS5zdGFjayB0aGVhZHtkaXNwbGF5Om5vbmV9dGFibGUuc3RhY2sgdGZvb3R7ZGlzcGxheTpub25lfXRhYmxlLnN0YWNrIHRyLHRhYmxlLnN0YWNrIHRoLHRhYmxlLnN0YWNrIHRke2Rpc3BsYXk6YmxvY2t9dGFibGUuc3RhY2sgdGR7Ym9yZGVyLXRvcDowfX10YWJsZS5zY3JvbGx7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO292ZXJmbG93LXg6YXV0b310YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjN9dGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWNlY2VjfXRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2Y5ZjlmOX10YWJsZS5ob3Zlcjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWNlY2VjfS50YWJsZS1zY3JvbGx7b3ZlcmZsb3cteDphdXRvfS50YWJsZS1zY3JvbGwgdGFibGV7d2lkdGg6YXV0b30uY2FsbG91dHtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MCAwIDFyZW0gMDtwYWRkaW5nOjFyZW07Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEwLDEwLDEwLDAuMjUpO2JvcmRlci1yYWRpdXM6LjVyZW07YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwYTBhMGF9LmNhbGxvdXQ+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uY2FsbG91dD46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LmNhbGxvdXQucHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiNlOGQxZmY7Y29sb3I6IzBhMGEwYX0uY2FsbG91dC5zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjojZmRlM2RjO2NvbG9yOiMwYTBhMGF9LmNhbGxvdXQudGhpcmR7YmFja2dyb3VuZC1jb2xvcjojZmZmNGQ4O2NvbG9yOiMwYTBhMGF9LmNhbGxvdXQuc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiNlMWZhZWE7Y29sb3I6IzBhMGEwYX0uY2FsbG91dC53YXJuaW5ne2JhY2tncm91bmQtY29sb3I6I2ZmZjNkOTtjb2xvcjojMGEwYTBhfS5jYWxsb3V0LmFsZXJ0e2JhY2tncm91bmQtY29sb3I6I2Y3ZTRlMTtjb2xvcjojMGEwYTBhfS5jYWxsb3V0LnNtYWxse3BhZGRpbmctdG9wOi41cmVtO3BhZGRpbmctcmlnaHQ6LjVyZW07cGFkZGluZy1ib3R0b206LjVyZW07cGFkZGluZy1sZWZ0Oi41cmVtfS5jYWxsb3V0Lmxhcmdle3BhZGRpbmctdG9wOjNyZW07cGFkZGluZy1yaWdodDozcmVtO3BhZGRpbmctYm90dG9tOjNyZW07cGFkZGluZy1sZWZ0OjNyZW19LmFjY29yZGlvbnttYXJnaW4tbGVmdDowO2JhY2tncm91bmQ6I2ZlZmVmZTtsaXN0LXN0eWxlLXR5cGU6bm9uZX0uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQ+OmZpcnN0LWNoaWxke2JvcmRlci1yYWRpdXM6LjVyZW0gLjVyZW0gMCAwfS5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkPjpsYXN0LWNoaWxke2JvcmRlci1yYWRpdXM6MCAwIC41cmVtIC41cmVtfS5hY2NvcmRpb24tdGl0bGV7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjEuMjVyZW0gMXJlbTtib3JkZXI6MXB4IHNvbGlkICNlNmU2ZTY7Ym9yZGVyLWJvdHRvbTowO2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MTtjb2xvcjojNjBjfTpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKT4uYWNjb3JkaW9uLXRpdGxle2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNmU2ZTY7Ym9yZGVyLXJhZGl1czowIDAgLjVyZW0gLjVyZW19LmFjY29yZGlvbi10aXRsZTpob3ZlciwuYWNjb3JkaW9uLXRpdGxlOmZvY3Vze2JhY2tncm91bmQtY29sb3I6I2U2ZTZlNn0uYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDoxcmVtO21hcmdpbi10b3A6LTAuNXJlbTtjb250ZW50OicrJ30uaXMtYWN0aXZlPi5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZXtjb250ZW50OidcXDIwMTMnfS5hY2NvcmRpb24tY29udGVudHtkaXNwbGF5Om5vbmU7cGFkZGluZzoxcmVtO2JvcmRlcjoxcHggc29saWQgI2U2ZTZlNjtib3JkZXItYm90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO2NvbG9yOiMwYTBhMGF9Omxhc3QtY2hpbGQ+LmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U2ZTZlNn0ucGFnaW5hdGlvbnttYXJnaW4tbGVmdDowO21hcmdpbi1ib3R0b206MXJlbX0ucGFnaW5hdGlvbjo6YmVmb3JlLC5wYWdpbmF0aW9uOjphZnRlcntkaXNwbGF5OnRhYmxlO2NvbnRlbnQ6JyAnfS5wYWdpbmF0aW9uOjphZnRlcntjbGVhcjpib3RofS5wYWdpbmF0aW9uIGxpe21hcmdpbi1yaWdodDouMDYyNXJlbTtib3JkZXItcmFkaXVzOi41cmVtO2ZvbnQtc2l6ZTouODc1cmVtO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5wYWdpbmF0aW9uIGEsLnBhZ2luYXRpb24gYnV0dG9ue2Rpc3BsYXk6YmxvY2s7cGFkZGluZzouMTg3NXJlbSAuNjI1cmVtO2JvcmRlci1yYWRpdXM6LjVyZW07Y29sb3I6IzBhMGEwYX0ucGFnaW5hdGlvbiBhOmhvdmVyLC5wYWdpbmF0aW9uIGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOiNlNmU2ZTZ9LnBhZ2luYXRpb24gLmN1cnJlbnR7cGFkZGluZzouMTg3NXJlbSAuNjI1cmVtO2JhY2tncm91bmQ6IzYwYztjb2xvcjojZmVmZWZlO2N1cnNvcjpkZWZhdWx0fS5wYWdpbmF0aW9uIC5kaXNhYmxlZHtwYWRkaW5nOi4xODc1cmVtIC42MjVyZW07Y29sb3I6I2NhY2FjYTtjdXJzb3I6bm90LWFsbG93ZWR9LnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlcntwYWRkaW5nOi4xODc1cmVtIC42MjVyZW07Y29udGVudDonXFwyMDI2Jztjb2xvcjojMGEwYTBhfS5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSwucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3Jle2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1yaWdodDowLjVyZW07Y29udGVudDonXFwwMGFiJ30ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0OjAuNXJlbTtjb250ZW50OidcXDAwYmInfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7Ym9keXtvdmVyZmxvdy14OmhpZGRlbjt3aWR0aDoxMDAlfX0uaW5uZXItc3BhY2V7cGFkZGluZy10b3A6MnJlbSAhaW1wb3J0YW50O3BhZGRpbmctYm90dG9tOjJyZW0gIWltcG9ydGFudH1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pey5pbm5lci1zcGFjZXtwYWRkaW5nLXRvcDoxLjVyZW0gIWltcG9ydGFudDtwYWRkaW5nLWJvdHRvbToxLjVyZW0gIWltcG9ydGFudH19LmlubmVyLXNwYWNlLm5vLXNwYWNlLWJvdHRvbXtwYWRkaW5nLWJvdHRvbTowICFpbXBvcnRhbnR9LmlubmVyLXNwYWNlLm5vLXNwYWNlLXRvcHtwYWRkaW5nLXRvcDowICFpbXBvcnRhbnR9LmJ1dHRvbntjb2xvcjojZmVmZWZlO2ZvbnQtZmFtaWx5OlwiTGF0b1dlYkhlYXZ5XCIsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfSNicmVhZGNydW1ic3twYWRkaW5nOi41cmVtO2JvcmRlci10b3A6MXB4IHNvbGlkICNlNmU2ZTY7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U2ZTZlNjtmb250LXNpemU6LjlyZW07Y29sb3I6IzhhOGE4YTtmb250LWZhbWlseTpcIkxhdG9XZWJIZWF2eVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ucm93LmZ1bGwtaGVpZ2h0e2hlaWdodDoxMDAlfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJCbGFjayc7c3JjOnVybChcImZvbnRzL0xhdG8tQmxhY2suZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUJsYWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1CbGFjay53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUJsYWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUJsYWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJCbGFjayc7c3JjOnVybChcImZvbnRzL0xhdG8tQmxhY2tJdGFsaWMuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUJsYWNrSXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1CbGFja0l0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUJsYWNrSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUJsYWNrSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJCb2xkJztzcmM6dXJsKFwiZm9udHMvTGF0by1Cb2xkLmVvdFwiKTtzcmM6dXJsKFwiZm9udHMvTGF0by1Cb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcImZvbnRzL0xhdG8tQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksdXJsKFwiZm9udHMvTGF0by1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJCb2xkJztzcmM6dXJsKFwiZm9udHMvTGF0by1Cb2xkSXRhbGljLmVvdFwiKTtzcmM6dXJsKFwiZm9udHMvTGF0by1Cb2xkSXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1Cb2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcImZvbnRzL0xhdG8tQm9sZEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksdXJsKFwiZm9udHMvTGF0by1Cb2xkSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJIYWlybGluZSc7c3JjOnVybChcImZvbnRzL0xhdG8tSGFpcmxpbmUuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUhhaXJsaW5lLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1IYWlybGluZS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUhhaXJsaW5lLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUhhaXJsaW5lLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJIYWlybGluZSc7c3JjOnVybChcImZvbnRzL0xhdG8tSGFpcmxpbmVJdGFsaWMuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUhhaXJsaW5lSXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1IYWlybGluZUl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUhhaXJsaW5lSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUhhaXJsaW5lSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJIZWF2eSc7c3JjOnVybChcImZvbnRzL0xhdG8tSGVhdnkuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUhlYXZ5LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1IZWF2eS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUhlYXZ5LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUhlYXZ5LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJIZWF2eSc7c3JjOnVybChcImZvbnRzL0xhdG8tSGVhdnlJdGFsaWMuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUhlYXZ5SXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1IZWF2eUl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUhlYXZ5SXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUhlYXZ5SXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWInO3NyYzp1cmwoXCJmb250cy9MYXRvLUl0YWxpYy5lb3RcIik7c3JjOnVybChcImZvbnRzL0xhdG8tSXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1JdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiZm9udHMvTGF0by1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcImZvbnRzL0xhdG8tSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJMaWdodCc7c3JjOnVybChcImZvbnRzL0xhdG8tTGlnaHQuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUxpZ2h0LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1MaWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUxpZ2h0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUxpZ2h0LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJMaWdodCc7c3JjOnVybChcImZvbnRzL0xhdG8tTGlnaHRJdGFsaWMuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLUxpZ2h0SXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1MaWdodEl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCJmb250cy9MYXRvLUxpZ2h0SXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLUxpZ2h0SXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJNZWRpdW0nO3NyYzp1cmwoXCJmb250cy9MYXRvLU1lZGl1bS5lb3RcIik7c3JjOnVybChcImZvbnRzL0xhdG8tTWVkaXVtLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1NZWRpdW0ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiZm9udHMvTGF0by1NZWRpdW0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcImZvbnRzL0xhdG8tTWVkaXVtLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWJNZWRpdW0nO3NyYzp1cmwoXCJmb250cy9MYXRvLU1lZGl1bUl0YWxpYy5lb3RcIik7c3JjOnVybChcImZvbnRzL0xhdG8tTWVkaXVtSXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksdXJsKFwiZm9udHMvTGF0by1NZWRpdW1JdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiZm9udHMvTGF0by1NZWRpdW1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcImZvbnRzL0xhdG8tTWVkaXVtSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtmb250LXN0eWxlOml0YWxpYztmb250LXdlaWdodDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0xhdG9XZWInO3NyYzp1cmwoXCJmb250cy9MYXRvLVJlZ3VsYXIuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLVJlZ3VsYXIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSx1cmwoXCJmb250cy9MYXRvLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiZm9udHMvTGF0by1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHl9QGZvbnQtZmFjZXtmb250LWZhbWlseTonTGF0b1dlYlNlbWlib2xkJztzcmM6dXJsKFwiZm9udHMvTGF0by1TZW1pYm9sZC5lb3RcIik7c3JjOnVybChcImZvbnRzL0xhdG8tU2VtaWJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSx1cmwoXCJmb250cy9MYXRvLVNlbWlib2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcImZvbnRzL0xhdG8tU2VtaWJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcImZvbnRzL0xhdG8tU2VtaWJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHl9QGZvbnQtZmFjZXtmb250LWZhbWlseTonTGF0b1dlYlNlbWlib2xkJztzcmM6dXJsKFwiZm9udHMvTGF0by1TZW1pYm9sZEl0YWxpYy5lb3RcIik7c3JjOnVybChcImZvbnRzL0xhdG8tU2VtaWJvbGRJdGFsaWMuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSx1cmwoXCJmb250cy9MYXRvLVNlbWlib2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcImZvbnRzL0xhdG8tU2VtaWJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcImZvbnRzL0xhdG8tU2VtaWJvbGRJdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO2ZvbnQtc3R5bGU6aXRhbGljO2ZvbnQtd2VpZ2h0Om5vcm1hbDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHl9QGZvbnQtZmFjZXtmb250LWZhbWlseTonTGF0b1dlYlRoaW4nO3NyYzp1cmwoXCJmb250cy9MYXRvLVRoaW4uZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLVRoaW4uZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSx1cmwoXCJmb250cy9MYXRvLVRoaW4ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiZm9udHMvTGF0by1UaGluLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLVRoaW4udHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHl9QGZvbnQtZmFjZXtmb250LWZhbWlseTonTGF0b1dlYlRoaW4nO3NyYzp1cmwoXCJmb250cy9MYXRvLVRoaW5JdGFsaWMuZW90XCIpO3NyYzp1cmwoXCJmb250cy9MYXRvLVRoaW5JdGFsaWMuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSx1cmwoXCJmb250cy9MYXRvLVRoaW5JdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksdXJsKFwiZm9udHMvTGF0by1UaGluSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCJmb250cy9MYXRvLVRoaW5JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO2ZvbnQtc3R5bGU6aXRhbGljO2ZvbnQtd2VpZ2h0Om5vcm1hbDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHl9Lm1haW4taGVhZGVye3Bvc2l0aW9uOnJlbGF0aXZlfS5tYWluLWhlYWRlci5ob21le2JhY2tncm91bmQtY29sb3I6IzMzMDA2Nn0ubWFpbi1oZWFkZXIgLmluc2lkZS1uYXYgLmxvZ297cG9zaXRpb246cmVsYXRpdmV9Lm1haW4taGVhZGVyIC5pbnNpZGUtbmF2IC5sb2dvLmJsb2duYW1lIGF7cGFkZGluZy10b3A6MS41cmVtO2Rpc3BsYXk6YmxvY2s7Y29sb3I6IzBhMGEwYX0ubWFpbi1oZWFkZXIgLmluc2lkZS1uYXYgLmxvZ28uYmxvZ25hbWUgYTpob3Zlcntmb250LXNpemU6MTEwJTtmb250LXdlaWdodDpib2xkfS5tYWluLWhlYWRlciAuaW5zaWRlLW5hdiAubG9nby5ibG9nbmFtZSBhIGltZ3ttYXgtd2lkdGg6ODAlfS5tYWluLWhlYWRlciAuaW5zaWRlLW5hdiAubWVudXtwYWRkaW5nLXRvcDoycmVtfS5tYWluLWhlYWRlciAuaW5zaWRlLW5hdiAubWVudSBsaXtwb3NpdGlvbjpyZWxhdGl2ZX0ubWFpbi1oZWFkZXIgLmluc2lkZS1uYXYgLm1lbnUgbGk6aG92ZXIgLnN1Yi1tZW51e2Rpc3BsYXk6YmxvY2t9Lm1haW4taGVhZGVyIC5pbnNpZGUtbmF2IC5tZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46YWZ0ZXJ7Y29udGVudDpcIlxcZjE0MFwiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDouM3JlbTtyaWdodDowO2ZvbnQtZmFtaWx5OlwiZGFzaGljb25zXCI7Y29sb3I6IzhhOGE4YX0ubWFpbi1oZWFkZXIgLmluc2lkZS1uYXYgLm1lbnUgbGkgYXtjb2xvcjojMGEwYTBhO2JvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LWZhbWlseTpcIkxhdG9XZWJIZWF2eVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmfS5tYWluLWhlYWRlciAuaW5zaWRlLW5hdiAubWVudSBsaSBhOmhvdmVye2JvcmRlci1ib3R0b206M3B4IHNvbGlkICNGMzQyMTN9Lm1haW4taGVhZGVyIC5pbnNpZGUtbmF2IC5tZW51IGxpLmN1cnJlbnRfcGFnZV9pdGVtIGF7Ym9yZGVyLWJvdHRvbTozcHggc29saWQgI0YzNDIxM30ubWFpbi1oZWFkZXIgLmluc2lkZS1uYXYgLm1lbnUgbGkgLnN1Yi1tZW51e2Rpc3BsYXk6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxNXJlbTtwYWRkaW5nOi43cmVtO2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItcmFkaXVzOi4zcmVtO2JveC1zaGFkb3c6MXB4IDFweCA0cHggIzhhOGE4YX0ubWFpbi1oZWFkZXIgLmluc2lkZS1uYXYgLm1lbnUgbGkgLnN1Yi1tZW51Pmxpe2Rpc3BsYXk6YmxvY2t9Lm1haW4taGVhZGVyIC5pbnNpZGUtbmF2IC5tZW51IGxpIC5zdWItbWVudTpiZWZvcmV7Y29udGVudDpcIlxcZjE0MlwiO2ZvbnQtZmFtaWx5OlwiZGFzaGljb25zXCI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDotMS42NXJlbTtjb2xvcjojZTZlNmU2O2ZvbnQtc2l6ZToxLjhyZW19Lm1haW4taGVhZGVyIC5pbnNpZGUtbmF2IC5tZW51IGxpIC5zdWItbWVudSBsaSBhe2Rpc3BsYXk6YmxvY2s7cGFkZGluZzouNXJlbTtjb2xvcjojMGEwYTBhO2JvcmRlci1ib3R0b206bm9uZX0ubWFpbi1oZWFkZXIgLmluc2lkZS1uYXYgLm1lbnUgbGkgLnN1Yi1tZW51IGxpIGE6aG92ZXJ7Ym9yZGVyLWJvdHRvbTpub25lO2JhY2tncm91bmQtY29sb3I6I0YzNDIxMztjb2xvcjojZmVmZWZlfS5tYWluLWhlYWRlciAuaW5zaWRlLW5hdiAubWVudSBsaSAuc3ViLW1lbnUgbGkuY3VycmVudF9wYWdlX2l0ZW0gYXtib3JkZXItYm90dG9tOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojRjM0MjEzO2NvbG9yOiNmZWZlZmV9Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5ibG9nbmFtZXtwYWRkaW5nLXRvcDoxLjVyZW19Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5ibG9nbmFtZSBpbWd7bWF4LXdpZHRoOjgwJTtmaWxsOiNmZWZlZmV9Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5ob21lLXNlYXJjaHtwYWRkaW5nLXRvcDoycmVtfS5tYWluLWhlYWRlciAubmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9ue3BhZGRpbmctdG9wOjJyZW19Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb24gLm1lbnUgbGl7cG9zaXRpb246cmVsYXRpdmV9Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb24gLm1lbnUgbGk6aG92ZXIgLnN1Yi1tZW51e2Rpc3BsYXk6YmxvY2t9Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb24gLm1lbnUgbGkgYXtjb2xvcjojZmVmZWZlO2JvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LWZhbWlseTpcIkxhdG9XZWJIZWF2eVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmfS5tYWluLWhlYWRlciAubmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uIC5tZW51IGxpIGE6aG92ZXJ7Ym9yZGVyLWJvdHRvbTozcHggc29saWQgI0YzNDIxM30ubWFpbi1oZWFkZXIgLm5hdmlnYXRpb24gLm1haW4tbmF2aWdhdGlvbiAubWVudSBsaSAuc3ViLW1lbnV7ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE1cmVtO3BhZGRpbmc6LjdyZW07YmFja2dyb3VuZDojZmVmZWZlO2JvcmRlci1yYWRpdXM6LjNyZW07Ym94LXNoYWRvdzoxcHggMXB4IDNweCAjMGEwYTBhfS5tYWluLWhlYWRlciAubmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uIC5tZW51IGxpIC5zdWItbWVudT5saXtkaXNwbGF5OmJsb2NrfS5tYWluLWhlYWRlciAubmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uIC5tZW51IGxpIC5zdWItbWVudTpiZWZvcmV7Y29udGVudDpcIlxcZjE0MlwiO2ZvbnQtZmFtaWx5OlwiZGFzaGljb25zXCI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDotMS42NXJlbTtjb2xvcjojZmVmZWZlO2ZvbnQtc2l6ZToxLjhyZW19Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb24gLm1lbnUgbGkgLnN1Yi1tZW51IGxpIGF7ZGlzcGxheTpibG9jaztwYWRkaW5nOi41cmVtO2NvbG9yOiMwYTBhMGE7Ym9yZGVyLWJvdHRvbTpub25lfS5tYWluLWhlYWRlciAubmF2aWdhdGlvbiAubWFpbi1uYXZpZ2F0aW9uIC5tZW51IGxpIC5zdWItbWVudSBsaSBhOmhvdmVye2JvcmRlci1ib3R0b206bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNGMzQyMTM7Y29sb3I6I2ZlZmVmZX0ubWFpbi1oZWFkZXIgLm5hdmlnYXRpb24gLm1haW4tbmF2aWdhdGlvbiAubWVudSBsaSAuc3ViLW1lbnUgbGkuY3VycmVudF9wYWdlX2l0ZW0gYXtib3JkZXItYm90dG9tOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojRjM0MjEzO2NvbG9yOiNmZWZlZmV9Lm1haW4taGVhZGVyIC5uYXZpZ2F0aW9uIC5tYWluLW5hdmlnYXRpb24gLm1lbnUgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjphZnRlcntjb250ZW50OlwiXFxmMTQwXCI7cG9zaXRpb246YWJzb2x1dGU7dG9wOi4zcmVtO3JpZ2h0OjA7Zm9udC1mYW1pbHk6XCJkYXNoaWNvbnNcIjtjb2xvcjojZmVmZWZlfS5tYWluLWhlYWRlciBzdmd7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTB2aH1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pey5tYWluLWhlYWRlciBzdmd7aGVpZ2h0Ojh2aH19Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmR7cGFkZGluZy10b3A6M3JlbTtoZWlnaHQ6MjVyZW07YmFja2dyb3VuZC1pbWFnZTp1cmwoaW1nL2hvbWUucG5nKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmF1dG8gMTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXJ9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXsubWFpbi1oZWFkZXIgLm1haW4tYmFja2dyb3VuZHtiYWNrZ3JvdW5kLXNpemU6Y292ZXJ9fS5tYWluLWhlYWRlciAubWFpbi1iYWNrZ3JvdW5kIC53cmFwLXRleHR7Y29sb3I6I2ZlZmVmZTt0ZXh0LWFsaWduOmNlbnRlcn0ubWFpbi1oZWFkZXIgLm1haW4tYmFja2dyb3VuZCAud3JhcC10ZXh0IC5mcm9udHBhZ2UtaGVhZGVyLXRpdGxle2NvbG9yOiM2MGN9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXsubWFpbi1oZWFkZXIgLm1haW4tYmFja2dyb3VuZCAud3JhcC10ZXh0IC5mcm9udHBhZ2UtaGVhZGVyLXRpdGxle21hcmdpbi10b3A6NXJlbTtmb250LXNpemU6eC1sYXJnZX19Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmQgLndyYXAtdGV4dCAuZnJvbnRwYWdlLWhlYWRlci10ZXh0e2ZvbnQtc2l6ZTpsYXJnZXI7cGFkZGluZzowcmVtIDJyZW07Y29sb3I6IzBhMGEwYTtib3JkZXItcmFkaXVzOjFyZW19Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmQgLndyYXAtdGV4dCAubWFpbi1sb2dve3dpZHRoOjEwcmVtO2hlaWdodDoxMHJlbTttYXJnaW46MCBhdXRvO2JhY2tncm91bmQtaW1hZ2U6dXJsKGltZy9sb2dvLnN2Zyl9Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmQgLndyYXAtdGV4dCAubWFpbi10aXRsZXtmb250LWZhbWlseTpcIkxhdG9XZWJIZWF2eVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LXNpemU6Mi41cmVtfS5tYWluLWhlYWRlciAubWFpbi1iYWNrZ3JvdW5kIC53cmFwLXRleHQgLm1lZGl1bS10aXRsZXt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Zm9udC1zaXplOjNyZW19Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmQgLndyYXAtdGV4dCAuc3VidGl0bGV7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXNpemU6NC41cmVtO2xpbmUtaGVpZ2h0OjRyZW19QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSl7Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmR7aGVpZ2h0OjQwcmVtfS5tYWluLWhlYWRlciAubWFpbi1iYWNrZ3JvdW5kIC53cmFwLXRleHQgLm1haW4tbG9nb3t3aWR0aDoxNXJlbTtoZWlnaHQ6MTVyZW19fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmR7aGVpZ2h0OjI2cmVtfS5tYWluLWhlYWRlciAubWFpbi1iYWNrZ3JvdW5kIC53cmFwLXRleHQgLm1haW4tdGl0bGV7bWFyZ2luLXRvcDoxcmVtICFpbXBvcnRhbnQ7Zm9udC1zaXplOjFyZW19Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmQgLndyYXAtdGV4dCAubWVkaXVtLXRpdGxle2ZvbnQtc2l6ZToxLjVyZW19Lm1haW4taGVhZGVyIC5tYWluLWJhY2tncm91bmQgLndyYXAtdGV4dCAuc3VidGl0bGV7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6MnJlbX19Lm1vYmlsZS1uYXZ7cG9zaXRpb246Zml4ZWQ7d2lkdGg6MTAwJTtwYWRkaW5nLXRvcDouMnJlbTtwYWRkaW5nLWJvdHRvbTouMnJlbTt0b3A6MDt6LWluZGV4Ojk5MDtsZWZ0OjA7YmFja2dyb3VuZC1jb2xvcjojMGEwYTBhfS5tb2JpbGUtbmF2IGltZ3toZWlnaHQ6M3JlbX0ubW9iaWxlLW5hdiAuYmxvZ2luZm8gYXtjb2xvcjojZmVmZWZlfS5tb2JpbGUtbmF2IC5tb2JpbGUtbG9nb3tkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjVyZW07aGVpZ2h0OjVyZW07bWFyZ2luLWxlZnQ6MTBweDtiYWNrZ3JvdW5kLWltYWdlOnVybChpbWcvbG9nby5zdmcpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdH0ubW9iaWxlLW5hdiAubW9iaWxlLW5hdi1vcGVue2NvbG9yOiNmZWZlZmV9Lm1vYmlsZS1uYXYgLm1vYmlsZS1uYXYtb3BlbiAuZGFzaGljb25ze2ZvbnQtc2l6ZToyLjVyZW07d2lkdGg6Mi41cmVtO2hlaWdodDoyLjVyZW19Lm1lbnUtbW9iaWxlLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpmaXhlZDt6LWluZGV4Ojk5OTk7YmFja2dyb3VuZDojNjBjfS5tZW51LW1vYmlsZS1jb250YWluZXIgLmNsb3Nle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOi41cmVtO2NvbG9yOiNmZWZlZmV9Lm1lbnUtbW9iaWxlLWNvbnRhaW5lciAuY2xvc2UgLmRhc2hpY29uc3tmb250LXNpemU6M3JlbTt3aWR0aDozcmVtO2hlaWdodDozcmVtfS5tZW51LW1vYmlsZS1jb250YWluZXIgLnNlYXJjaC1tb2JpbGV7cG9zaXRpb246YWJzb2x1dGU7dG9wOjFyZW07bGVmdDowO3JpZ2h0OjA7d2lkdGg6NjAlO21hcmdpbjphdXRvfS5tZW51LW1vYmlsZS1jb250YWluZXIgLnNlYXJjaC1tb2JpbGUgLmlucHV0LWdyb3VwLWZpZWxke2JhY2tncm91bmQ6I2U2ZTZlNjtjb2xvcjojMGEwYTBhO2JvcmRlci1yYWRpdXM6MH0ubWVudS1tb2JpbGUtY29udGFpbmVyIC5zZWFyY2gtbW9iaWxlIC5idXR0b257ZGlzcGxheTpub25lfS5tZW51LW1vYmlsZS1jb250YWluZXIgLmF1eGlsaWFyLW1lbnV7cG9zaXRpb246YWJzb2x1dGU7dG9wOmF1dG87cmlnaHQ6YXV0bztib3R0b206MXJlbTtsZWZ0OjFyZW19Lm1lbnUtbW9iaWxlLWNvbnRhaW5lciAuYXV4aWxpYXItbWVudSAjbWVudS1hdXhpbGlhcnttYXJnaW46MH0ubWVudS1tb2JpbGUtY29udGFpbmVyIC5hdXhpbGlhci1tZW51ICNtZW51LWF1eGlsaWFyIGxpIGF7bWFyZ2luLXJpZ2h0OjFyZW07Zm9udC1zaXplOi44cmVtfS5tZW51LW1vYmlsZS1jb250YWluZXIgLmF1eGlsaWFyLW1lbnUgI21lbnUtYXV4aWxpYXIgbGk6YWZ0ZXJ7Y29sb3I6I2ZlZmVmZX0ubWVudS1tb2JpbGUtY29udGFpbmVyIC5hdXhpbGlhci1tZW51IC5sYW5nLW1lbnV7cG9zaXRpb246YWJzb2x1dGU7bGVmdDouN3JlbTtyaWdodDphdXRvO3RvcDotM3JlbX0ubWVudS1tb2JpbGUtY29udGFpbmVyIC5hdXhpbGlhci1tZW51IC5sYW5nLW1lbnUgbGkgYXtmb250LXNpemU6MS4zcmVtO2NvbG9yOiNmZWZlZmUgIWltcG9ydGFudH0ubWVudS1tb2JpbGUtY29udGFpbmVyIC5hdXhpbGlhci1tZW51IC5sYW5nLW1lbnUgbGkuY3VycmVudC1sYW5nIGF7Y29sb3I6IzBhMGEwYSAhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6I2ZlZmVmZSAhaW1wb3J0YW50fS5tZW51LW1vYmlsZS1jb250YWluZXIgLmlzLWRyaWxsZG93bnttYXJnaW4tdG9wOjFyZW19Lm1lbnUtbW9iaWxlLWNvbnRhaW5lciAubWVudXtkaXNwbGF5OmJsb2NrO21hcmdpbjoxcmVtIDEuNXJlbSAwIDEuNXJlbX0ubWVudS1tb2JpbGUtY29udGFpbmVyIC5tZW51IGxpIGF7cGFkZGluZzouOHJlbSAuNXJlbTtjb2xvcjojZmVmZWZlO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LWZhbWlseTpcIkxhdG9XZWJIZWF2eVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjcwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGluZS1oZWlnaHQ6MS4ycmVtfS5tZW51LW1vYmlsZS1jb250YWluZXIgLm1lbnUgbGkgYTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojMzA2O2NvbG9yOiNmZWZlZmV9Lm1lbnUtbW9iaWxlLWNvbnRhaW5lciAubWVudSBsaS5hY3RpdmUgYXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5tZW51LW1vYmlsZS1jb250YWluZXIgLm1lbnUgbGkgLmlzLWRyaWxsZG93bi1zdWJtZW51e2JhY2tncm91bmQtY29sb3I6IzYwY30ubWVudS1tb2JpbGUtY29udGFpbmVyIC5tZW51IGxpIC5pcy1kcmlsbGRvd24tc3VibWVudSBsaXttYXJnaW4tYm90dG9tOjFyZW19Lm1lbnUtbW9iaWxlLWNvbnRhaW5lciAubWVudSBsaSAuaXMtZHJpbGxkb3duLXN1Ym1lbnUgbGkuanMtZHJpbGxkb3duLWJhY2s+YTpiZWZvcmV7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXtib2R5IHNlY3Rpb24ubWFpbi1jb250ZW50e21hcmdpbi10b3A6M3JlbX19Lm1haW4tZm9vdGVye2JhY2tncm91bmQtY29sb3I6IzMwNjtjb2xvcjojZTZlNmU2fS5tYWluLWZvb3RlciAuY2liZXJzZWd1cmFzIGltZ3ttYXgtd2lkdGg6MTgwcHg7bWFyZ2luLWJvdHRvbToxcmVtfS5tYWluLWZvb3RlciAuY2liZXJzZWd1cmFzIGF7Y29sb3I6I2ZlZmVmZTtmb250LXdlaWdodDpib2xkfS5tYWluLWZvb3RlciAuY2liZXJzZWd1cmFzIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ubWFpbi1mb290ZXIgLmNpYmVyc2VndXJhcyAubGljZW5zZSBhe3RleHQtZGVjb3JhdGlvbjpub25lfS5tYWluLWZvb3RlciAuY2liZXJzZWd1cmFzIC5saWNlbnNlIGEgaW1ne21heC13aWR0aDo0MHB4fS5tYWluLWZvb3RlciAubG9nb3MgLmxvZ297cGFkZGluZy10b3A6MXJlbTtwYWRkaW5nLWJvdHRvbToxcmVtfS5tYWluLWZvb3RlciAubG9nb3MgLmxvZ28gaW1ne21heC1oZWlnaHQ6MTAwcHg7d2lkdGg6YXV0b31zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9ue3BhZGRpbmctdG9wOjJyZW07cGFkZGluZy1ib3R0b206MnJlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pe3NlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb257cGFkZGluZy10b3A6MXJlbTtwYWRkaW5nLWJvdHRvbToxcmVtfX1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uIC50aXRsZXtmb250LXNpemU6MnJlbX1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uIC5zdWJ0aXRsZXtmb250LXNpemU6MXJlbX1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uLmZpbHRybyAuZnN0RWxlbWVudC5tdGFne2JvcmRlci1yYWRpdXM6LjVyZW07Ym9yZGVyOjFweCBzb2xpZCAjY2FjYWNhfXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uZmlsdHJvIC5mc3RFbGVtZW50Lm10YWcgLmZzdFRvZ2dsZUJ0bntmb250LXNpemU6MXJlbTt0ZXh0LWFsaWduOmxlZnQ7cGFkZGluZzouNXJlbTtsaW5lLWhlaWdodDoxLjI4fXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uZmlsdHJvIC5mc3RFbGVtZW50Lm10YWcgLmZzdFF1ZXJ5SW5wdXR7Zm9udC1zaXplOjFyZW19c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5maWx0cm8gLmZzdEVsZW1lbnQubXRhZyAuZnN0UmVzdWx0SXRlbXtmb250LXNpemU6MXJlbTtwYWRkaW5nOi41cmVtO3RleHQtYWxpZ246bGVmdH1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uLmZpbHRybyAuZnN0RWxlbWVudC5tdGFnIC5mc3RSZXN1bHRJdGVtLmZzdFNlbGVjdGVke2JhY2tncm91bmQtY29sb3I6IzYwYztib3JkZXI6MXB4IHNvbGlkICM0MjAwODV9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXtzZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uLmZpbHRybyBidXR0b24uYnV0dG9ue21hcmdpbi10b3A6MXJlbX19c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5hY2Npb25lc3tiYWNrZ3JvdW5kLWNvbG9yOiNmN2YwZmZ9c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5hY2Npb25lcyAuc3VidGl0bGV7bWFyZ2luLWJvdHRvbToyLjVyZW19c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5hY2Npb25lcyAuYWNjaW9ue3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4zcyBsaW5lYXJ9QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSl7c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5hY2Npb25lcyAuYWNjaW9ue21hcmdpbi1sZWZ0Oi41cmVtO21hcmdpbi1yaWdodDouNXJlbX19c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5hY2Npb25lcyAuYWNjaW9uIGF7cG9pbnRlci1ldmVudHM6YXV0bztjb2xvcjojMGEwYTBhfXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uYWNjaW9uZXMgLmFjY2lvbiBhIC5jaXJjdWxhci1zcXVhcmV7d2lkdGg6MjAwcHg7aGVpZ2h0OjIwMHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6I2ZlZmVmZX1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uLmFjY2lvbmVzIC5hY2Npb24gYSBwe21hcmdpbi1ib3R0b206MH1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uLmFjY2lvbmVzIC5hY2Npb246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZTZjY2ZmfXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uYmxvZ3twYWRkaW5nLWJvdHRvbTo0cmVtfXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uYmxvZyBpbWd7d2lkdGg6YXV0bztoZWlnaHQ6MTgwcHh9c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5ibG9nIC5hcnRpY3Vsb3ttYXJnaW4tdG9wOjNyZW07bWFyZ2luLWxlZnQ6M3JlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pe3NlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uYmxvZyAuYXJ0aWN1bG97bWFyZ2luLXRvcDoxcmVtO21hcmdpbi1sZWZ0OjB9fXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uYmxvZyAuYXJ0aWN1bG8gLmZlY2hhe2NvbG9yOiM4YThhOGF9c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5ibG9nIC5hcnRpY3VsbyAuY2F0ZWdvcmlhe2NvbG9yOiNjYWNhY2F9c2VjdGlvbi5mcm9udHBhZ2Ugc2VjdGlvbi5ibG9nIC5hcnRpY3VsbyBwe3BhZGRpbmctdG9wOi41cmVtfXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uYmxvZyAuYXJ0aWN1bG8gcCBhe2NvbG9yOiMwYTBhMGE7Zm9udC13ZWlnaHQ6Ym9sZH1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uLmJsb2cgLmFydGljdWxvIHAgYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfXNlY3Rpb24uZnJvbnRwYWdlIHNlY3Rpb24uYmxvZyAubW9yZS5idXR0b257YmFja2dyb3VuZC1jb2xvcjojY2FjYWNhO2NvbG9yOiMwYTBhMGE7bWFyZ2luLXRvcDoyLjVyZW07bWFyZ2luLWJvdHRvbTotM3JlbX1zZWN0aW9uLmZyb250cGFnZSBzZWN0aW9uLmJsb2cgLm1vcmUuYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzhhOGE4YX1zZWN0aW9uLm5vc290cmFzIC5xdWllbmVzLXNvbW9zIC5sb2dvcyAubG9nb3t3aWR0aDoxNTBweDttYXgtaGVpZ2h0OjIwMHB4O3BhZGRpbmc6LjVyZW19c2VjdGlvbi5ub3NvdHJhcyAubWFuaWZpZXN0b3tiYWNrZ3JvdW5kLWNvbG9yOiNmN2YwZmZ9c2VjdGlvbi5ub3NvdHJhcyAuZ2xvc2FyaW97YmFja2dyb3VuZC1jb2xvcjojZTZmYmVlfXNlY3Rpb24ubm9zb3RyYXMgLmdsb3NhcmlvIC50ZXJtaW5ve3BhZGRpbmc6MXJlbSAycmVtfXNlY3Rpb24ubm9zb3RyYXMgLmNvbXBpcyBpbWd7bWF4LXdpZHRoOjEzcmVtfXNlY3Rpb24ubm9zb3RyYXMgLmRvbmF0ZXtiYWNrZ3JvdW5kLWNvbG9yOiNmN2YwZmZ9c2VjdGlvbi5ub3NvdHJhcyAuZG9uYXRlIC5kb25hdGUuYnV0dG9ue2JhY2tncm91bmQtY29sb3I6I2NhY2FjYTtjb2xvcjojMGEwYTBhICFpbXBvcnRhbnQ7bWFyZ2luLXRvcDoxLjVyZW07cGFkZGluZy1ib3R0b206LTIuNXJlbX1zZWN0aW9uLm5vc290cmFzIC5kb25hdGUgLmRvbmF0ZS5idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojOGE4YThhfXNlY3Rpb24ubm9zb3RyYXMgLmRvbmF0ZSAuZG9uYXRlLmJ1dHRvbiBpLmZpLWhlYXJ0OmJlZm9yZXtjb250ZW50OlwiPDNcIjtmb250LXdlaWdodDpib2xkO2ZvbnQtc3R5bGU6bm9ybWFsO2NvbG9yOiM2MGN9c2VjdGlvbi5ub3NvdHJhcyAuZG9uYXRlIC5kb25hdGUuYnV0dG9uIGkuZGFzaGljb25zLWhlYXJ0e2NvbG9yOiM2MGM7bGluZS1oZWlnaHQ6MC43fXNlY3Rpb24uYmxvZyAucGFnZS1oZWFkZXIgaW1ne3dpZHRoOmF1dG87aGVpZ2h0OjE4MHB4fXNlY3Rpb24uYmxvZyAuYXJ0aWN1bG9ze21hcmdpbi1ib3R0b206M3JlbX1zZWN0aW9uLmJsb2cgLmFydGljdWxvcyAuYXJ0aWN1bG97bWFyZ2luLXRvcDozcmVtO21hcmdpbi1sZWZ0OjNyZW19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKXtzZWN0aW9uLmJsb2cgLmFydGljdWxvcyAuYXJ0aWN1bG97bWFyZ2luLXRvcDoxcmVtO21hcmdpbi1sZWZ0OjB9fXNlY3Rpb24uYmxvZyAuYXJ0aWN1bG9zIC5hcnRpY3VsbyAuZmVjaGF7Y29sb3I6IzhhOGE4YX1zZWN0aW9uLmJsb2cgLmFydGljdWxvcyAuYXJ0aWN1bG8gLmNhdGVnb3JpYXtjb2xvcjojY2FjYWNhfXNlY3Rpb24uYmxvZyAuYXJ0aWN1bG9zIC5hcnRpY3VsbyBwe3BhZGRpbmctdG9wOi41cmVtfXNlY3Rpb24uYmxvZyAuYXJ0aWN1bG9zIC5hcnRpY3VsbyBwIGF7Y29sb3I6IzBhMGEwYTtmb250LXdlaWdodDpib2xkfXNlY3Rpb24uYmxvZyAuYXJ0aWN1bG9zIC5hcnRpY3VsbyBwIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1zZWN0aW9uLmJsb2cgLmFydGljdWxvcyAubW9yZS5idXR0b257YmFja2dyb3VuZC1jb2xvcjojY2FjYWNhO2NvbG9yOiMwYTBhMGE7bWFyZ2luLXRvcDoyLjVyZW07bWFyZ2luLWJvdHRvbTotM3JlbX1zZWN0aW9uLmJsb2cgLmFydGljdWxvcyAubW9yZS5idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojOGE4YThhfXNlY3Rpb24uYmxvZyAuZmVhdHVyZWQtcG9zdHMtc2xpZGVyIC5mZWNoYSxzZWN0aW9uLmJsb2cgLmZlYXR1cmVkLXBvc3RzLXNsaWRlciAuY2F0ZWdvcmlhe2NvbG9yOiM4YThhOGF9c2VjdGlvbi5ibG9nIC5mZWF0dXJlZC1wb3N0cy1zbGlkZXIgLnRpdGxle3BhZGRpbmctdG9wOjEuNXJlbTtwYWRkaW5nLWJvdHRvbToyLjVyZW07Zm9udC13ZWlnaHQ6Ym9sZDtmb250LXNpemU6MS41cmVtfXNlY3Rpb24uYmxvZyAuZmVhdHVyZWQtcG9zdHMtc2xpZGVyIC5zbGljay1kb3RzIGJ1dHRvbjo6YmVmb3Jle2NvbnRlbnQ6J+Kaqyc7Zm9udC1zaXplOjEuM3JlbX1zZWN0aW9uLmJsb2cuc2VhcmNoIC5hcnRpY3Vsb3MgLnBhZ2UtdGl0bGV7Zm9udC1zaXplOjJyZW19c2VjdGlvbi5ibG9nLnNlYXJjaCAuYXJ0aWN1bG9zIC5wYWdlLXRpdGxlIHNwYW57Y29sb3I6IzYwY31zZWN0aW9uLm1hdGVyaWFsZXN7YmFja2dyb3VuZC1jb2xvcjojZjdmMGZmO3BhZGRpbmctYm90dG9tOjRyZW19c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uaGVhZGVye2JhY2tncm91bmQtY29sb3I6I2ZlZmVmZX1zZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5oZWFkZXIgaW1ne3dpZHRoOmF1dG87aGVpZ2h0OjE4MHB4fXNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmhlYWRlciBoMntsaW5lLWhlaWdodDowLjR9c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uZmlsdGVyc3tiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmV9c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uZmlsdGVycyAuYWNjb3JkaW9uLXRpdGxlLHNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmZpbHRlcnMgLmFjY29yZGlvbi1jb250ZW50e2JvcmRlcjowcHg7cGFkZGluZzowcHh9c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uZmlsdGVycyAuYWNjb3JkaW9uLXRpdGxle2ZvbnQtd2VpZ2h0OmJvbGQ7cGFkZGluZzouNXJlbTtmb250LXNpemU6MTAwJTtib3JkZXItcmFkaXVzOi41cmVtfXNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmZpbHRlcnMgLmJsb2Nre3BhZGRpbmctdG9wOjFyZW07cGFkZGluZy1ib3R0b206MS41cmVtfXNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmZpbHRlcnMgLmJsb2NrOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2NhY2FjYX1zZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5maWx0ZXJzIC5ibG9jayBzcGFue2Rpc3BsYXk6YmxvY2s7cGFkZGluZy1ib3R0b206LjVyZW19c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uZmlsdGVycyAuYmxvY2sgc3Bhbi50aXRsZXtmb250LXdlaWdodDpib2xkfXNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmZpbHRlcnMgLmJsb2NrIC5idXR0b24tZ3JvdXAgaW5wdXR7ZGlzcGxheTpub25lfXNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmZpbHRlcnMgLmJsb2NrIC5idXR0b24tZ3JvdXAgbGFiZWwuYnV0dG9ue2JvcmRlcjoxcHggc29saWQgIzhhOGE4YTtiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmU7Y29sb3I6IzhhOGE4YTttYXJnaW4tYm90dG9tOi41cmVtfXNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmZpbHRlcnMgLmJsb2NrIC5idXR0b24tZ3JvdXAgaW5wdXQ6Y2hlY2tlZCtsYWJlbCxzZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5maWx0ZXJzIC5ibG9jayAuYnV0dG9uLWdyb3VwIGlucHV0OmNoZWNrZWQrbGFiZWw6YWN0aXZle2JvcmRlcjoxcHggc29saWQgIzQyMDA4NTtiYWNrZ3JvdW5kLWNvbG9yOiM2MGM7Y29sb3I6I2ZlZmVmZX1zZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5maWx0ZXJzIC5ibG9jayAuZnN0RWxlbWVudC5tdGFne3dpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czouNXJlbTtib3JkZXI6MXB4IHNvbGlkICNjYWNhY2F9c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uZmlsdGVycyAuYmxvY2sgLmZzdEVsZW1lbnQubXRhZyAuZnN0VG9nZ2xlQnRue2ZvbnQtc2l6ZToxcmVtO3RleHQtYWxpZ246bGVmdDtwYWRkaW5nOi41cmVtO2xpbmUtaGVpZ2h0OjEuMjh9c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uZmlsdGVycyAuYmxvY2sgLmZzdEVsZW1lbnQubXRhZyAuZnN0UXVlcnlJbnB1dHtmb250LXNpemU6MXJlbX1zZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5maWx0ZXJzIC5ibG9jayAuZnN0RWxlbWVudC5tdGFnIC5mc3RSZXN1bHRJdGVte2ZvbnQtc2l6ZToxcmVtO3BhZGRpbmc6LjVyZW19c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24uZmlsdGVycyAuYmxvY2sgLmZzdEVsZW1lbnQubXRhZyAuZnN0UmVzdWx0SXRlbS5mc3RTZWxlY3RlZHtiYWNrZ3JvdW5kLWNvbG9yOiM2MGM7Ym9yZGVyOjFweCBzb2xpZCAjNDIwMDg1fXNlY3Rpb24ubWF0ZXJpYWxlcyBzZWN0aW9uLmZpbHRlcnMgLmJsb2NrIC5mc3RFbGVtZW50Lm10YWcgLmZzdFJlc3VsdEl0ZW06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojOWMzOGZmO2JvcmRlcjoxcHggc29saWQgIzYwY31zZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5maWx0ZXJzIC5ibG9jayAuZnN0RWxlbWVudC5tdGFnIC5mc3RDaG9pY2VJdGVte2ZvbnQtc2l6ZToxcmVtO2JhY2tncm91bmQtY29sb3I6IzYwYztib3JkZXI6MXB4IHNvbGlkICM0MjAwODV9c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24ucmVzdWx0cyAubWF0ZXJpYWx7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2U2ZTZlNjtwYWRkaW5nOjEuNXJlbTtwYWRkaW5nLWJvdHRvbTozZW19c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24ucmVzdWx0cyAubWF0ZXJpYWwgaW1ne2hlaWdodDoyLjVyZW19c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24ucmVzdWx0cyAubWF0ZXJpYWwgLmNhdGVnb3JpYXtkaXNwbGF5OmJsb2NrO2NvbG9yOiM4YThhOGE7cGFkZGluZy1ib3R0b206MXJlbX1zZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5yZXN1bHRzIC5tYXRlcmlhbCBhe2NvbG9yOiMwYTBhMGE7Zm9udC13ZWlnaHQ6Ym9sZH1zZWN0aW9uLm1hdGVyaWFsZXMgc2VjdGlvbi5yZXN1bHRzIC5tYXRlcmlhbCBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9c2VjdGlvbi5tYXRlcmlhbGVzIHNlY3Rpb24ucmVzdWx0cyAucGFnaW5hdGlvbi1uYXZ7bWFyZ2luLXRvcDoxLjVyZW19LnNwaW5uZXJ7bWFyZ2luOjEwMHB4IGF1dG87d2lkdGg6NTBweDtoZWlnaHQ6NDBweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MTBweDtkaXNwbGF5Om5vbmV9LnNwaW5uZXI+ZGl2e2JhY2tncm91bmQtY29sb3I6IzMzMztoZWlnaHQ6MTAwJTt3aWR0aDo2cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7LXdlYmtpdC1hbmltYXRpb246c2stc3RyZXRjaGRlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7YW5pbWF0aW9uOnNrLXN0cmV0Y2hkZWxheSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0fS5zcGlubmVyIC5yZWN0Mnstd2Via2l0LWFuaW1hdGlvbi1kZWxheTotMS4xczthbmltYXRpb24tZGVsYXk6LTEuMXN9LnNwaW5uZXIgLnJlY3Qzey13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi0xLjBzO2FuaW1hdGlvbi1kZWxheTotMS4wc30uc3Bpbm5lciAucmVjdDR7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6LTAuOXM7YW5pbWF0aW9uLWRlbGF5Oi0wLjlzfS5zcGlubmVyIC5yZWN0NXstd2Via2l0LWFuaW1hdGlvbi1kZWxheTotMC44czthbmltYXRpb24tZGVsYXk6LTAuOHN9QC13ZWJraXQta2V5ZnJhbWVzIHNrLXN0cmV0Y2hkZWxheXswJSw0MCUsMTAwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoMC40KX0yMCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKDEpfX1Aa2V5ZnJhbWVzIHNrLXN0cmV0Y2hkZWxheXswJSw0MCUsMTAwJXt0cmFuc2Zvcm06c2NhbGVZKDAuNCk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKDAuNCl9MjAle3RyYW5zZm9ybTpzY2FsZVkoMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVZKDEpfX1zZWN0aW9uLmhlbnRyeSBoZWFkZXIgLmJsb2ctdGl0bGV7Y29sb3I6IzYwYztmb250LXNpemU6MnJlbTtwYWRkaW5nLXRvcDoxLjVlbTtwYWRkaW5nLWJvdHRvbTouNWVtfXNlY3Rpb24uaGVudHJ5IGhlYWRlciAuYmxvZy1zdWJ0aXRsZXtjb2xvcjojMGEwYTBhO2ZvbnQtc2l6ZToxLjJyZW07cGFkZGluZy10b3A6MGVtO3BhZGRpbmctYm90dG9tOjEuNWVtfXNlY3Rpb24uaGVudHJ5IGhlYWRlciAuZGF0ZXtjb2xvcjojY2FjYWNhO2ZvbnQtc2l6ZToxLjJyZW19c2VjdGlvbi5oZW50cnkgaGVhZGVyIC5jYXRlZ29yeXtjb2xvcjojY2FjYWNhO2ZvbnQtc2l6ZToxLjJyZW07cGFkZGluZy1ib3R0b206MWVtfXNlY3Rpb24uaGVudHJ5IGhlYWRlciAuZW50cnktdGl0bGV7Zm9udC1zaXplOjIuMnJlbTtmb250LXdlaWdodDpib2xkO3BhZGRpbmctYm90dG9tOjFlbX1zZWN0aW9uLmhlbnRyeSBoZWFkZXIgaS5kYXNoaWNvbnN7Zm9udC1zaXplOjJyZW19c2VjdGlvbi5oZW50cnkgLnBhZ2UtY29udGVudCAuYXV0aG9ye2ZvbnQtd2VpZ2h0OmJvbGQ7bGluZS1oZWlnaHQ6NH1zZWN0aW9uLmhlbnRyeSAucGFnZS1jb250ZW50IC5ldGlxdWV0YXN7Zm9udC13ZWlnaHQ6Ym9sZDtwYWRkaW5nLXRvcDoxZW07cGFkZGluZy1ib3R0b206MWVtfXNlY3Rpb24uaGVudHJ5IGZvb3RlciAucm93IC5yZWxhdGVkLXBvc3Rze2JvcmRlci10b3A6MXB4IHNvbGlkICNjYWNhY2E7cGFkZGluZy10b3A6MnJlbX1zZWN0aW9uLmhlbnRyeSBmb290ZXIgLnJvdyAucmVsYXRlZC1wb3N0cyAudGl0bGV7Y29sb3I6IzhhOGE4YTtmb250LXdlaWdodDpib2xkfXNlY3Rpb24uaGVudHJ5IGZvb3RlciAucm93IC5yZWxhdGVkLXBvc3RzIC5wb3N0c3twYWRkaW5nLXRvcDoycmVtfXNlY3Rpb24uaGVudHJ5IGZvb3RlciAucm93IC5yZWxhdGVkLXBvc3RzIC5wb3N0cyAuZmVjaGF7Y29sb3I6IzhhOGE4YX1zZWN0aW9uLmhlbnRyeSBmb290ZXIgLnJvdyAucmVsYXRlZC1wb3N0cyAucG9zdHMgYXtjb2xvcjojMGEwYTBhO2ZvbnQtd2VpZ2h0OmJvbGR9c2VjdGlvbi5tYXRlcmlhbCBoZWFkZXIgaW1ne2hlaWdodDoxMHJlbX1zZWN0aW9uLm1hdGVyaWFsIGhlYWRlciAuY2F0ZWdvcnktdGl0bGV7Y29sb3I6IzYwYztmb250LXNpemU6MS4ycmVtO3BhZGRpbmctdG9wOjJlbTtwYWRkaW5nLWJvdHRvbToxLjVlbX1zZWN0aW9uLm1hdGVyaWFsIGhlYWRlciAuZW50cnktdGl0bGV7Zm9udC1zaXplOjIuMnJlbTtmb250LXdlaWdodDpib2xkO3BhZGRpbmctYm90dG9tOjFlbX1AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pe3NlY3Rpb24ubWF0ZXJpYWwgaGVhZGVyIC5lbnRyeS10aXRsZXtwYWRkaW5nLWJvdHRvbTouNWVtfX1zZWN0aW9uLm1hdGVyaWFsIC5wYWdlLWNvbnRlbnQgLm1ldGFkYXRhe2NvbG9yOiM4YThhOGE7cGFkZGluZy1ib3R0b206MWVtO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNjYWNhY2F9c2VjdGlvbi5tYXRlcmlhbCAucGFnZS1jb250ZW50IC5tZXRhZGF0YSAuc21hbGwtMTJ7cGFkZGluZy10b3A6LjVlbTtwYWRkaW5nLWJvdHRvbTouNWVtfUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSl7c2VjdGlvbi5tYXRlcmlhbCAucGFnZS1jb250ZW50IC5tZXRhZGF0YSAubGFyZ2UtNHt0ZXh0LWFsaWduOmNlbnRlcn19c2VjdGlvbi5tYXRlcmlhbCAucGFnZS1jb250ZW50IHNwYW4uYm9sZHtmb250LXdlaWdodDpib2xkfXNlY3Rpb24ubWF0ZXJpYWwgLnBhZ2UtY29udGVudCAudGl0bGV7cGFkZGluZy1ib3R0b206LjVlbTtmb250LXdlaWdodDpib2xkO2ZvbnQtc2l6ZToxLjNlbX1zZWN0aW9uLm1hdGVyaWFsIC5wYWdlLWNvbnRlbnQgLnN0ZC10ZXh0e3BhZGRpbmctdG9wOjFlbX1zZWN0aW9uLm1hdGVyaWFsIC5wYWdlLWNvbnRlbnQgLmV0aXF1ZXRhc3t0ZXh0LWFsaWduOnJpZ2h0O2ZvbnQtd2VpZ2h0OmJvbGQ7cGFkZGluZy10b3A6MWVtO3BhZGRpbmctYm90dG9tOjFlbX1zZWN0aW9uLm1hdGVyaWFsIGZvb3RlciAucm93IC5yZWxhdGVkLXBvc3Rze2JvcmRlci10b3A6MXB4IHNvbGlkICNjYWNhY2E7cGFkZGluZy10b3A6MnJlbX1zZWN0aW9uLm1hdGVyaWFsIGZvb3RlciAucm93IC5yZWxhdGVkLXBvc3RzIGltZ3toZWlnaHQ6Mi41cmVtfXNlY3Rpb24ubWF0ZXJpYWwgZm9vdGVyIC5yb3cgLnJlbGF0ZWQtcG9zdHMgLm1hdGVyaWFse3BhZGRpbmc6MS41cmVtO3BhZGRpbmctYm90dG9tOjNlbX1zZWN0aW9uLm1hdGVyaWFsIGZvb3RlciAucm93IC5yZWxhdGVkLXBvc3RzIC5tYXRlcmlhbCAuY2F0ZWdvcmlhe2Rpc3BsYXk6YmxvY2s7Y29sb3I6IzhhOGE4YTtwYWRkaW5nLWJvdHRvbToxcmVtfXNlY3Rpb24ubWF0ZXJpYWwgZm9vdGVyIC5yb3cgLnJlbGF0ZWQtcG9zdHMgLm1hdGVyaWFsIGF7Y29sb3I6IzBhMGEwYTtmb250LXdlaWdodDpib2xkfXNlY3Rpb24ubWF0ZXJpYWwgZm9vdGVyIC5yb3cgLnJlbGF0ZWQtcG9zdHMgLm1hdGVyaWFsIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1cbiIsIi8qIVxuVGhlbWUgTmFtZTogQ2liZXJzZWd1cmFzXG5UaGVtZSBVUkk6IGh0dHBzOi8vd3d3LmNpYmVyc2VndXJhcy5vcmdcbkF1dGhvcjogRGVyZWNob3MgRGlnaXRhbGVzXG5BdXRob3IgVVJJOiBodHRwczovL3d3dy5kZXJlY2hvc2RpZ2l0YWxlcy5vcmdcbkRlc2NyaXB0aW9uOiBUaGVtZSBwYXJhIENpYmVyc2VndXJhc1xuVmVyc2lvbjogMS4wXG4qL1xuXG5AY2hhcnNldCAndXRmLTgnO1xuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcbi8vQGltcG9ydCAnbW90aW9uLXVpJztcblxuQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtdmlkZW87XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbi8vQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xuLy9AaW5jbHVkZSBtb3Rpb24tdWktYW5pbWF0aW9ucztcblxuQGltcG9ydCAnbWl4aW5zJztcbkBpbXBvcnQgJ2NvbW1vbnMnO1xuQGltcG9ydCAnc3R5bGUnO1xuQGltcG9ydCAnZm9udHMnO1xuXG4vLyBAaW1wb3J0ICdtb2R1bGVzLyc7XG5AaW1wb3J0ICdtb2R1bGVzL25hdi1kZXNrdG9wJztcbkBpbXBvcnQgJ21vZHVsZXMvbmF2LW1vYmlsZSc7XG5AaW1wb3J0ICdtb2R1bGVzL2Zvb3Rlcic7XG5AaW1wb3J0ICdtb2R1bGVzL2Zyb250cGFnZSc7XG5AaW1wb3J0ICdtb2R1bGVzL25vc290cmFzJztcbkBpbXBvcnQgJ21vZHVsZXMvYmxvZyc7XG5AaW1wb3J0ICdtb2R1bGVzL3NlYXJjaCc7XG5AaW1wb3J0ICdtb2R1bGVzL21hdGVyaWFsZXMnO1xuQGltcG9ydCAnbW9kdWxlcy9zcGlubmVyJztcbkBpbXBvcnQgJ21vZHVsZXMvc2luZ2xlJztcbkBpbXBvcnQgJ21vZHVsZXMvc2luZ2xlLW1hdGVyaWFsJzsiLCIvLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHRoZSBub3JtYWxpemUoKSBtaXhpbi5cbkBmdW5jdGlvbiBfbm9ybWFsaXplLWluY2x1ZGUoJHNlY3Rpb24sICRleGNsdWRlOiBudWxsKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGdsb2JhbCB2YXJpYWJsZXMgbmVlZGVkIGJ5IHRoaXMgZnVuY3Rpb24uXG4gIEBpZiBub3QgZ2xvYmFsX3ZhcmlhYmxlX2V4aXN0cyhfbm9ybWFsaXplLWluY2x1ZGUpIHtcbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiAoKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6ICgpICFnbG9iYWw7XG4gIH1cbiAgLy8gU2luY2Ugd2UgYXJlIGdpdmVuIDIgcGFyYW1ldGVycywgc2V0IHRoZSBnbG9iYWwgdmFyaWFibGVzLlxuICBAaWYgJGV4Y2x1ZGUgIT0gbnVsbCB7XG4gICAgJGluY2x1ZGU6ICRzZWN0aW9uO1xuICAgIC8vIFNhc3MgZG9lc24ndCBoYXZlIHN0YXRpYyB2YXJpYWJsZXMsIHNvIHRoZSB3b3JrLWFyb3VuZCBpcyB0byBzdHVmZiB0aGVzZVxuICAgIC8vIHZhbHVlcyBpbnRvIGdsb2JhbCB2YXJpYWJsZXMgc28gd2UgY2FuIGFjY2VzcyB0aGVtIGluIGZ1dHVyZSBjYWxscy5cbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiBpZih0eXBlLW9mKCRpbmNsdWRlKSA9PSAnbGlzdCcsICRpbmNsdWRlLCAoJGluY2x1ZGUpKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6IGlmKHR5cGUtb2YoJGV4Y2x1ZGUpID09ICdsaXN0JywgJGV4Y2x1ZGUsICgkZXhjbHVkZSkpICFnbG9iYWw7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHNlY3Rpb24gaXMgaW4gdGhlICRpbmNsdWRlIGxpc3QuXG4gIEBpZiBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCAkc2VjdGlvbikge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICAvLyBJZiAkaW5jbHVkZSBpcyBzZXQgdG8gKGFsbCksIG1ha2Ugc3VyZSAkc2VjdGlvbiBpcyBub3QgaW4gJGV4Y2x1ZGUuXG4gIEBlbHNlIGlmIG5vdCBpbmRleCgkX25vcm1hbGl6ZS1leGNsdWRlLCAkc2VjdGlvbikgYW5kIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsIGFsbCkge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplKCRpbmNsdWRlOiAoYWxsKSwgJGV4Y2x1ZGU6ICgpKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGhlbHBlciBmdW5jdGlvbiBieSBwYXNzaW5nIGl0IHRoaXMgbWl4aW4ncyBwYXJhbWV0ZXJzLlxuICAkaW5pdDogX25vcm1hbGl6ZS1pbmNsdWRlKCRpbmNsdWRlLCAkZXhjbHVkZSk7XG5cbiAgLy8gSWYgd2UndmUgY3VzdG9taXplZCBhbnkgZm9udCB2YXJpYWJsZXMsIHdlJ2xsIG5lZWQgZXh0cmEgcHJvcGVydGllcy5cbiAgQGlmICRiYXNlLWZvbnQtc2l6ZSAhPSAxNnB4XG4gICAgb3IgJGJhc2UtbGluZS1oZWlnaHQgIT0gMjRweFxuICAgIG9yICRiYXNlLXVuaXQgIT0gJ2VtJ1xuICAgIG9yICRoMS1mb250LXNpemUgIT0gMiAgICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoMi1mb250LXNpemUgIT0gMS41ICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoMy1mb250LXNpemUgIT0gMS4xNyAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNC1mb250LXNpemUgIT0gMSAgICAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNS1mb250LXNpemUgIT0gMC44MyAqICRiYXNlLWZvbnQtc2l6ZVxuICAgIG9yICRoNi1mb250LXNpemUgIT0gMC42NyAqICRiYXNlLWZvbnQtc2l6ZSB7XG4gICAgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG06IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShkb2N1bWVudCkge1xuICAgIC8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cblxuICAgIGh0bWwge1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5OyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvLyBDb3JyZWN0IG9sZCBicm93c2VyIGJ1ZyB0aGF0IHByZXZlbnRlZCBhY2Nlc3NpYmxlIHJlc2l6aW5nIG9mIHRleHRcbiAgICAgICAgLy8gd2hlbiByb290IGZvbnQtc2l6ZSBpcyBzZXQgd2l0aCBweCBvciBlbS5cbiAgICAgICAgZm9udC1zaXplOiAoJGJhc2UtZm9udC1zaXplIC8gMTZweCkgKiAxMDAlO1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMiAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMiAqL1xuICAgICAgfVxuICAgICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2VjdGlvbnMpIHtcbiAgICAvKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGJvZHkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgYXJ0aWNsZSxcbiAgICBhc2lkZSxcbiAgICBmb290ZXIsXG4gICAgaGVhZGVyLFxuICAgIG5hdixcbiAgICBzZWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDEtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLyogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuICovXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDEtZm9udC1zaXplKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgaDIge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDItZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDMtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDQtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDUtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDYge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDYtZm9udC1zaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGdyb3VwaW5nKSB7XG4gICAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgLyoqXG4gICAgICAgKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICovXG5cbiAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuXG4gICAgICBkbCxcbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgKi9cblxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIG9sLFxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGRkIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cblxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgZmlnY2FwdGlvbixcbiAgICBmaWd1cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuXG4gICAgZmlndXJlIHtcbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMWVtICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICovXG5cbiAgICBociB7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICAgICAgaGVpZ2h0OiAwOyAvKiAxICovXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgbWFpbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgLyoqXG4gICAgICAgKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICovXG5cbiAgICAgIHAsXG4gICAgICBwcmUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBwcmUge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUobGlua3MpIHtcbiAgICAvKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuXG4gICAgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAgICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYTphY3RpdmUsXG4gICAgYTpob3ZlciB7XG4gICAgICBvdXRsaW5lLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUodGV4dCkge1xuICAgIC8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYWJiclt0aXRsZV0ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBjb2RlLFxuICAgIGtiZCxcbiAgICBzYW1wIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAgICovXG5cbiAgICBkZm4ge1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1hcmsge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc21hbGwge1xuICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3ViLFxuICAgIHN1cCB7XG4gICAgICBmb250LXNpemU6IDc1JTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cblxuICAgIHN1YiB7XG4gICAgICBib3R0b206IC0wLjI1ZW07XG4gICAgfVxuXG4gICAgc3VwIHtcbiAgICAgIHRvcDogLTAuNWVtO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZW1iZWRkZWQpIHtcbiAgICAvKiBFbWJlZGRlZCBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgYXVkaW8sXG4gICAgdmlkZW8ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5cbiAgICBhdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGhlaWdodDogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIGltZyB7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBzdmc6bm90KDpyb290KSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZm9ybXMpIHtcbiAgICAvKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBpbnB1dCxcbiAgICBvcHRncm91cCxcbiAgICBzZWxlY3QsXG4gICAgdGV4dGFyZWEge1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5OyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAxICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gICAgICB9XG4gICAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbiB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgc2VsZWN0IHsgLyogMSAqL1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICB9XG5cbiAgICBidXR0b24sXG4gICAgW3R5cGU9XCJidXR0b25cIl0sXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuXG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqL1xuXG4gICAgICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICAgICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5cbiAgICBpbnB1dCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICAgICAqL1xuXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGxlZ2VuZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5cbiAgICBwcm9ncmVzcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGludGVyYWN0aXZlKSB7XG4gICAgLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBkZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIDEuIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgICAqIDIuIFNldCBjb25zaXN0ZW50IHNwYWNlIGZvciB0aGUgbGlzdCBzdHlsZSBpbWFnZS5cbiAgICAgICAgICovXG5cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApOyAvKiAxICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50OyAvKiAyICovXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICAgKi9cblxuICAgICAgICBtZW51ICYsXG4gICAgICAgIG9sICYsXG4gICAgICAgIHVsICYge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2NyaXB0aW5nKSB7XG4gICAgLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgY2FudmFzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRlbXBsYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShoaWRkZW4pIHtcbiAgICAvKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtYXR0cmlidXRlLW5lc3RpbmcsIGZvcmNlLXBzZXVkby1uZXN0aW5nLCBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IGZhbHNlICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJHNlY29uZGFyeS1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG4kc3VjY2Vzcy1jb2xvcjogZ2V0LWNvbG9yKHN1Y2Nlc3MpO1xuJHdhcm5pbmctY29sb3I6IGdldC1jb2xvcih3YXJuaW5nKTtcbiRhbGVydC1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIC16Zi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gTG9hZHMgbm9ybWFsaXplLmNzcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtemYtbm9ybWFsaXplIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplKCk7XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRm9ybXNcbi8vICAyMC4gTGFiZWxcbi8vICAyMS4gTWVkaWEgT2JqZWN0XG4vLyAgMjIuIE1lbnVcbi8vICAyMy4gTWV0ZXJcbi8vICAyNC4gT2ZmLWNhbnZhc1xuLy8gIDI1LiBPcmJpdFxuLy8gIDI2LiBQYWdpbmF0aW9uXG4vLyAgMjcuIFByb2dyZXNzIEJhclxuLy8gIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgMjkuIFJldmVhbFxuLy8gIDMwLiBTbGlkZXJcbi8vICAzMS4gU3dpdGNoXG4vLyAgMzIuIFRhYmxlXG4vLyAgMzMuIFRhYnNcbi8vICAzNC4gVGh1bWJuYWlsXG4vLyAgMzUuIFRpdGxlIEJhclxuLy8gIDM2LiBUb29sdGlwXG4vLyAgMzcuIFRvcCBCYXJcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjNjYwMENDLFxuICBzZWNvbmRhcnk6ICNGMzQyMTMsXG4gIHRoaXJkOiAjRjlCNjAyLFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbik7XG4kbGlnaHQtZ3JheTogI2U2ZTZlNjtcbiRtZWRpdW0tZ3JheTogI2NhY2FjYTtcbiRkYXJrLWdyYXk6ICM4YThhOGE7XG4kYmxhY2s6ICMwYTBhMGE7XG4kd2hpdGU6ICNmZWZlZmU7XG4kZGFyay1wdXJwbGU6ICM2NjAwQ0M7XG4kYm9keS1iYWNrZ3JvdW5kOiAjRkZGO1xuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xuJGJvZHktZm9udC1mYW1pbHk6ICdMYXRvV2ViJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiR0aXRsZS1mb250LWZhbWlseTogJ0xhdG9XZWJIZWF2eScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC1wYWRkaW5nOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IC41cmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiBmYWxzZTtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRibG9jay1ncmlkLW1heDogODtcblxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDguIEFjY29yZGlvbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjaztcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDogdHJ1ZTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMzUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cbi8vIDE5LiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMC4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIyLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtO1xuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJG1lbnUtYm9yZGVyOiAkbGlnaHQtZ3JheTtcblxuLy8gMjMuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNC4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEwO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNS4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI2LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogdHJ1ZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gMjkuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuXG4vLyAzMC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzEuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAzMi4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuXG4vLyAzMy4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDM0LiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAzNS4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gMzYuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM3LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7ICAgIFxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSBvciBicmVha3BvaW50IG5hbWUgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGZvciB0aGlzIHJvdy4gSWYgc2V0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpLCB0aGUgZ2xvYmFsIGNvbHVtbiBjb3VudCB3aWxsIGJlIHVzZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IGJhc2ljIHN0eWxlcyBmcm9tIGJlaW5nIG91dHB1dC4gVXNlZnVsIGlmIHlvdSdyZSBjYWxsaW5nIHRoaXMgbWl4aW4gb24gdGhlIHNhbWUgZWxlbWVudCB0d2ljZSwgYXMgaXQgcHJldmVudHMgZHVwbGljYXRlIENTUyBvdXRwdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmFzZTogdHJ1ZSxcbiAgJHdyYXA6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgJHdyYXA7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zLCAkYmFzZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBgZmxleGAgcHJvcGVydHkgZm9yIGEgZmxleCBncmlkIGNvbHVtbi4gSXQgYWNjZXB0cyBhbGwgb2YgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBiYXNpYyBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIGFsb25nIHdpdGggdHdvIGV4dHJhczpcbi8vLyAgIC0gYGV4cGFuZGAgKHRoZSBkZWZhdWx0KSB3aWxsIG1ha2UgdGhlIGNvbHVtbiBleHBhbmQgdG8gZmlsbCBzcGFjZS5cbi8vLyAgIC0gYHNocmlua2Agd2lsbCBtYWtlIHRoZSBjb2x1bW4gY29udHJhY3QsIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIGhvcml6b250YWwgc3BhY2UgaXQgbmVlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogZXhwYW5kKSB7XG4gICRmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuXG4gIEBpZiAkY29sdW1ucyA9PSBzaHJpbmsge1xuICAgICRmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAkY29sdW1ucyAhPSBleHBhbmQge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuLy8vIENyZWF0ZXMgYSBjb2x1bW4gZm9yIGEgZmxleCBncmlkLiBCeSBkZWZhdWx0LCB0aGUgY29sdW1uIHdpbGwgc3RyZXRjaCB0byB0aGUgZnVsbCB3aWR0aCBvZiBpdHMgY29udGFpbmVyLCBidXQgdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHNpemluZyBjbGFzc2VzLCBvciBieSB1c2luZyB0aGUgYHVuc3RhY2tgIGNsYXNzIG9uIHRoZSBwYXJlbnQgZmxleCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycyB3aWR0aC4gU2VlIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyYCBtaXhpbi5cbkBtaXhpbiBmbGV4LWdyaWQtY29sdW1uKFxuICAkY29sdW1uczogZXhwYW5kLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIC8vIEJhc2UgcHJvcGVydGllc1xuICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSgkY29sdW1ucyk7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBmaXhlcyByZWNlbnQgQ2hyb21lIHZlcnNpb24gbm90IGxpbWl0aW5nIGNoaWxkIHdpZHRoXG4gIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0OTM0NTg2L3doaXRlLXNwYWNlLW5vd3JhcC1hbmQtZmxleGJveC1kaWQtbm90LXdvcmstaW4tY2hyb21lXG4gIEBpZiAkY29sdW1ucyA9PSBleHBhbmQge1xuICAgIG1pbi13aWR0aDogaW5pdGlhbDtcbiAgfVxuICAvLyBtYXgtd2lkdGggZml4ZXMgSUUgMTAvMTEgbm90IHJlc3BlY3RpbmcgdGhlIGZsZXgtYmFzaXMgcHJvcGVydHlcbiAgQGlmICRjb2x1bW5zICE9IGV4cGFuZCBhbmQgJGNvbHVtbnMgIT0gc2hyaW5rIHtcbiAgICBtYXgtd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGJsb2NrIGdyaWQgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBjb2x1bW5zIHRvIGRpc3BsYXkgb24gZWFjaCByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciAtIFNlbGVjdG9yIHRvIHVzZSB0byB0YXJnZXQgY29sdW1ucyB3aXRoaW4gdGhlIHJvdy5cbkBtaXhpbiBmbGV4LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbidcbikge1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICRwY3Q6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICBmbGV4OiAwIDAgJHBjdDtcbiAgICBtYXgtd2lkdGg6ICRwY3Q7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHdpZHRoIGZsZXggZ3JpZCBjb2x1bW4uXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBmbGV4LWdyaWQtc2l6ZSgkY29sdW1uczogbnVsbCkge1xuICAkY29sdW1uczogJGNvbHVtbnMgb3IgZXhwYW5kO1xuXG4gIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuXG4gIC8vIG1heC13aWR0aCBmaXhlcyBJRSAxMC8xMSBub3QgcmVzcGVjdGluZyB0aGUgZmxleC1iYXNpcyBwcm9wZXJ0eVxuICBAaWYgJGNvbHVtbnMgIT0gZXhwYW5kIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1ncmlkIHtcbiAgLy8gUm93XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XG5cbiAgICAvLyBOZXN0aW5nIGJlaGF2aW9yXG4gICAgJiAucm93IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3cobmVzdCwgJGJhc2U6IGZhbHNlKTtcblxuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgcm93XG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7IFxuICAgICAgXG4gICAgICAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguZXhwYW5kZWQpIC5yb3cge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW5kbyBuZWdhdGl2ZSBtYXJnaW5zXG4gICAgLy8gRnJvbSBjb2xsYXBzZWQgY2hpbGRcbiAgICAmLmlzLWNvbGxhcHNlLWNoaWxkLFxuICAgICYuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLmNvbHVtbiB7XG4gICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbjtcbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuY29sdW1uLnJvdy5yb3cge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC5yb3cgLmNvbHVtbi5yb3cucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuXG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWxheW91dCgkaSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAvLyBTaXppbmcgKGV4cGFuZClcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tZXhwYW5kIHtcbiAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gZGlyZWN0aW9uIGhlbHBlciBjbGFzc2VzXG4gICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC8vIGNoaWxkIGhlbHBlciBjbGFzc2VzXG4gICAgICAuI3skLXpmLXNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgfVxuXG4gICAgICAuI3skLXpmLXNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgfVxuXG4gICAgICAuI3skLXpmLXNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICB9XG5cbiAgICAgIC8vIEF1dG8tc3RhY2tpbmcvdW5zdGFja2luZ1xuICAgICAgQGF0LXJvb3QgKHdpdGhvdXQ6IG1lZGlhKSB7XG4gICAgICAgIC5yb3cuI3skLXpmLXNpemV9LXVuc3RhY2sge1xuICAgICAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKDEwMCUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS1jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tdW5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNpemluZyAoc2hyaW5rKVxuICAuc2hyaW5rIHtcbiAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKHNocmluayk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC5jb2x1bW4tYmxvY2sge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIC5jb2x1bW5zIHtcbiAgICBAZXh0ZW5kIC5jb2x1bW47IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnWW91ciBzbWFsbGVzdCBicmVha3BvaW50IChkZWZpbmVkIGluICRicmVha3BvaW50cykgbXVzdCBiZSBzZXQgdG8gXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAoMS8xNik7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDb252ZXJzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFVuLWNvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlLWFkZGluZyB0aGUgcGFkZGluZy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLlxuQG1peGluIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbHVtbi1ndXR0ZXIoKS4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXIpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bmNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bmNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sLWd1dHRlcigpLiBncmlkLWNvbC11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcik7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIiQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICdsZWZ0JzogZmxleC1zdGFydCxcbiAgJ3JpZ2h0JzogZmxleC1lbmQsXG4gICdjZW50ZXInOiBjZW50ZXIsXG4gICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbik7XG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBsaXN0IG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiAod2l0aG91dCBxdW90ZXMpIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIERpcmVjdGlvbiBhbmQgYW1vdW50IHRvIG1vdmUuIFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50IHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZSBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuIFNldCB0byBjZW50ZXIgdG8gY2VudGVyIHRoZSBjb2x1bW4uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIG9yIGNlbnRlci4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkYmFzZS1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldHMgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVybiB0aGVuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksIGxlZnQpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNiB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTsgIFxuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlb2NyYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIGN1cnNvcjogaGVscDtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIFVzZSB0byByZW1vdmUgdGhlIGJ1bGxldHMgZnJvbSBhbiB1bm9yZGVyZWQgbGlzdFxuICAubm8tYnVsbGV0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG5cbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRwcmltYXJ5LWNvbG9yLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsIFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG4vLy8gQHBhcmFtIFtDb2xvcl0gJGJhY2tncm91bmQgWyRwcmltYXJ5LWNvbG9yXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgJGZvcm0tc3BhY2luZyAqIDEuNSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyKTtcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbG9hdFxuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzIHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLmNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBBcHBsaWVkIHRvIG5lc3RlZCA8dWw+c1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgIH1cbiAgfVxuXG4gIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcmlsbGRvd24tYXJyb3ctc2l6ZTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG5cbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBmb3IgYm9yZGVyZWQgbWVudVxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBtYXJnaW46ICRtZW51LW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXMgYXJlIHRhYmxlIGNlbGwgdG8gYWxsb3cgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJhbGwgaXRlbSBlYXNpZXIgdG8gY2FsY3VsYXRlXG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cblxuICA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgPiBsaSAgPiBhIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFNldCB0byBgbnVsbGAgdG8gZG8gbm90IGdlbmVyYXRlIHN0eWxlcyBmb3IgZGlyZWN0aW9uLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCkge1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgQGlmICRkaXIgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVudS1zaW1wbGUtZGlyZWN0aW9uKCRkaXIpO1xuICB9XG59XG5cbi8vLyBEaXJlY3Rpb24gbW9kaWZpZXIgZm9yIGEgc2ltcGxlIE1lbnVcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnVcbkBtaXhpbiBtZW51LXNpbXBsZS1kaXJlY3Rpb24oJGRpcjogJGdsb2JhbC1sZWZ0KSB7XG4gICRuby1tYXJnaW4tZGlyOiAkZGlyO1xuICAkbWFyZ2luLWRpcjogZGlyZWN0aW9uLW9wcG9zaXRlKCRkaXIpO1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skbm8tbWFyZ2luLWRpcn06IDA7XG4gICAgbWFyZ2luLSN7JG1hcmdpbi1kaXJ9OiBnZXQtc2lkZSgkbWVudS1pdGVtLXBhZGRpbmcsICRtYXJnaW4tZGlyKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRwYWRkaW5nIFthdXRvXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuQG1peGluIG1lbnUtbmVzdGVkKCRtYXJnaW46ICRtZW51LW1hcmdpbi1uZXN0ZWQpIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbn1cblxuLy8vIEFkZHMgc3VwcG9ydCBmb3IgaWNvbnMgdG8gTWVudSBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRwb3NpdGlvbiBbc2lkZV0gLSBQb3NpdGlvbmluZyBmb3IgaWNvbnMuIENhbiBiZSBgc2lkZWAgKGxlZnQsIG9yIHJpZ2h0IG9uIFJUTCkgb3IgYHRvcGAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IHRoZSBzaGFyZWQgQ1NTIGJldHdlZW4gc2lkZS0gYW5kIHRvcC1hbGlnbmVkIGljb25zIGZyb20gYmVpbmcgcHJpbnRlZC4gU2V0IHRoaXMgdG8gYGZhbHNlYCBpZiB5b3UncmUgY2FsbGluZyB0aGUgbWl4aW4gbXVsdGlwbGUgdGltZXMgb24gdGhlIHNhbWUgZWxlbWVudC5cbkBtaXhpbiBtZW51LWljb25zKCRwb3NpdGlvbjogc2lkZSwgJGJhc2U6IHRydWUpIHtcbiAgQGlmICRiYXNlIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBpbWcsXG4gICAgICAgIGksXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICsgc3BhbiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9zaXRpb24gPT0gc2lkZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWVudS1pY29uLXNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRtZW51LWljb24tc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJG1lbnUtaXRlbS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuXG4gICAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZS1kaXJlY3Rpb24oJGdsb2JhbC1yaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgaWNvbnNcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnModG9wLCAkYmFzZTogZmFsc2UpO1xuICAgICAgLy8gTWFrZSB2ZXJ0aWNhbCBtZW51IHdpdGggaWNvbnMgb24gdG9wIHdvcmtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICBhID4gc3BhbiB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLy8gTWVudSB3aXRoIGJvcmRlclxuICAgICYubWVudS1ib3JkZXJlZCB7XG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZW51LWJvcmRlcjtcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lbnUgd2l0aCBiYWNrZ3JvdW5kIGhvdmVyXG4gICAgJi5tZW51LWhvdmVyIHtcbiAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZW51LXRleHQge1xuICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgfVxuXG4gIC8vIEFsaWduIGNlbnRlclxuICAubWVudS1jZW50ZXJlZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgPiAubWVudSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogdG9wKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtZWxlbWVudC1uZXN0aW5nLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogMCkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBpbm5lciBwYWRkaW5nIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGNhbGxvdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGNhbGxvdXQtZm9udC1jb2xvciwgJGNhbGxvdXQtZm9udC1jb2xvci1hbHQpKTtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LWJhc2U7XG4gIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoMC41cmVtKTtcbiAgICB9XG5cbiAgICAmLmxhcmdlIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgzcmVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJysnO1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxMyc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIgKFxuICAkbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbSxcbiAgJGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplLFxuICAkc3BhY2luZzogJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nLFxuICAkcmFkaXVzOiAkcGFnaW5hdGlvbi1yYWRpdXMsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcixcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcblxuICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmxhc3QtY2hpbGQsXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbSB7XG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYWInO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBiYic7XG4gICAgfVxuICB9XG59XG4iLCJib2R5IHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG4uaW5uZXItc3BhY2Uge1xuXHRwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG5cdFx0cGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xuXHR9XG5cdCYubm8tc3BhY2UtYm90dG9tIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuXHR9XG5cdCYubm8tc3BhY2UtdG9wIHtcblx0XHRwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuXHR9XG59XG4uYnV0dG9uIHtcblx0Ly8gY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRjb2xvcjogJHdoaXRlO1xuXHRmb250LWZhbWlseTogJHRpdGxlLWZvbnQtZmFtaWx5O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2JyZWFkY3J1bWJzIHtcblx0cGFkZGluZzogLjVyZW07XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXHRmb250LXNpemU6IC45cmVtO1xuXHRjb2xvcjogJGRhcmstZ3JheTtcblx0Zm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5yb3cuZnVsbC1oZWlnaHQge1xuXHRoZWlnaHQ6IDEwMCU7XG59IiwiLyogV2ViZm9udDogTGF0by1CbGFjayAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkJsYWNrJztcbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1CbGFjay5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLUJsYWNrLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1CbGFjay53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tQmxhY2sud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1CbGFjay50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1CbGFja0l0YWxpYyAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkJsYWNrJztcbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1CbGFja0l0YWxpYy5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLUJsYWNrSXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1CbGFja0l0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tQmxhY2tJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1CbGFja0l0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1Cb2xkICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViQm9sZCc7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tQm9sZC5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLUJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1Cb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLUJvbGRJdGFsaWMgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJCb2xkJztcbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1Cb2xkSXRhbGljLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tQm9sZEl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tQm9sZEl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tQm9sZEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUJvbGRJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGFpcmxpbmUgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJIYWlybGluZSc7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tSGFpcmxpbmUuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1IYWlybGluZS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGFpcmxpbmUud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUhhaXJsaW5lLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGFpcmxpbmUudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGFpcmxpbmVJdGFsaWMgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJIYWlybGluZSc7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tSGFpcmxpbmVJdGFsaWMuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1IYWlybGluZUl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGFpcmxpbmVJdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUhhaXJsaW5lSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGFpcmxpbmVJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGVhdnkgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJIZWF2eSc7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tSGVhdnkuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1IZWF2eS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGVhdnkud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUhlYXZ5LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGVhdnkudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGVhdnlJdGFsaWMgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJIZWF2eSc7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tSGVhdnlJdGFsaWMuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1IZWF2eUl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGVhdnlJdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUhlYXZ5SXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSGVhdnlJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tSXRhbGljICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViJztcbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1JdGFsaWMuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1JdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tSXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLUxpZ2h0ICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViTGlnaHQnO1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLUxpZ2h0LmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tTGlnaHQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUxpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUxpZ2h0LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLUxpZ2h0SXRhbGljICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViTGlnaHQnO1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLUxpZ2h0SXRhbGljLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tTGlnaHRJdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUxpZ2h0SXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1MaWdodEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLUxpZ2h0SXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLU1lZGl1bSAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYk1lZGl1bSc7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tTWVkaXVtLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tTWVkaXVtLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1NZWRpdW0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLU1lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLU1lZGl1bS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1NZWRpdW1JdGFsaWMgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJNZWRpdW0nO1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLU1lZGl1bUl0YWxpYy5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLU1lZGl1bUl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tTWVkaXVtSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1NZWRpdW1JdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1NZWRpdW1JdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tUmVndWxhciAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYic7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tUmVndWxhci5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLVJlZ3VsYXIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1SZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLVNlbWlib2xkICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViU2VtaWJvbGQnO1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLVNlbWlib2xkLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tU2VtaWJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLVNlbWlib2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1TZW1pYm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLVNlbWlib2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLVNlbWlib2xkSXRhbGljICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViU2VtaWJvbGQnO1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLVNlbWlib2xkSXRhbGljLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tU2VtaWJvbGRJdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLVNlbWlib2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1TZW1pYm9sZEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLVNlbWlib2xkSXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLVRoaW4gKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJUaGluJztcbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1UaGluLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0xhdG8tVGhpbi5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCAvKiBJRTYtSUU4ICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tVGhpbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tVGhpbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCdmb250cy9MYXRvLVRoaW4udHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tVGhpbkl0YWxpYyAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYlRoaW4nO1xuICAgIHNyYzogdXJsKCdmb250cy9MYXRvLVRoaW5JdGFsaWMuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgICBzcmM6IHVybCgnZm9udHMvTGF0by1UaGluSXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1UaGluSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICAgICAgIHVybCgnZm9udHMvTGF0by1UaGluSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJ2ZvbnRzL0xhdG8tVGhpbkl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cbiIsIi5tYWluLWhlYWRlciB7XG5cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQmLmhvbWUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICMzMzAwNjY7XG5cdH1cblxuXHQuaW5zaWRlLW5hdiB7XG5cblx0XHQubG9nbyB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdCYuYmxvZ25hbWUge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogMS41cmVtO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDExMCU7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOiA4MCU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lm1lbnUge1xuXHRcdFx0cGFkZGluZy10b3A6IDJyZW07XG5cdFx0XHRsaSB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYxNDBcIjtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDogLjNyZW07XG5cdFx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBcImRhc2hpY29uc1wiO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRkYXJrLWdyYXk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdCYuY3VycmVudF9wYWdlX2l0ZW0ge1xuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0d2lkdGg6IDE1cmVtO1xuXHRcdFx0XHRcdHBhZGRpbmc6IC43cmVtO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IC4zcmVtO1xuXHRcdFx0XHRcdGJveC1zaGFkb3c6IDFweCAxcHggNHB4ICRkYXJrLWdyYXk7XG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYxNDJcIjtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBcImRhc2hpY29uc1wiO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRcdHRvcDogLTEuNjVyZW07XG5cdFx0XHRcdFx0XHRjb2xvcjogJGxpZ2h0LWdyYXk7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDEuOHJlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAuNXJlbTtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSk7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0Ji5jdXJyZW50X3BhZ2VfaXRlbSB7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpO1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubmF2aWdhdGlvbiB7XG5cblx0XHQvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LmJsb2duYW1lIHtcblx0XHRcdHBhZGRpbmctdG9wOiAxLjVyZW07XG5cblx0XHRcdGltZyB7XG5cdFx0XHRcdG1heC13aWR0aDogODAlO1xuXHRcdFx0XHRmaWxsOiAkd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmhvbWUtc2VhcmNoIHtcblx0XHRcdHBhZGRpbmctdG9wOiAycmVtO1xuXHRcdH1cblxuXHRcdC5tYWluLW5hdmlnYXRpb24ge1xuXHRcdFx0Ly8gcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cGFkZGluZy10b3A6IDJyZW07XG5cdFx0XHQvLyB0b3A6IDFyZW07XG5cdFx0XHQvLyBsZWZ0OiAwO1xuXHRcdFx0Lm1lbnUge1xuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogJHRpdGxlLWZvbnQtZmFtaWx5O1xuXHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5zdWItbWVudSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDE1cmVtO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogLjdyZW07XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAuM3JlbTtcblx0XHRcdFx0XHRcdGJveC1zaGFkb3c6IDFweCAxcHggM3B4ICRibGFjaztcblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYxNDJcIjtcblx0XHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6IFwiZGFzaGljb25zXCI7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRcdFx0dG9wOiAtMS42NXJlbTtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxLjhyZW07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6IC41cmVtO1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSk7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHQmLmN1cnJlbnRfcGFnZV9pdGVtIHtcblx0XHRcdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSk7XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTQwXCI7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0dG9wOiAuM3JlbTtcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiBcImRhc2hpY29uc1wiO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHN2ZyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwdmg7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRoZWlnaHQ6IDh2aDtcblx0XHR9XG5cdH1cblxuXHQubWFpbi1iYWNrZ3JvdW5kIHtcblx0XHRwYWRkaW5nLXRvcDogM3JlbTtcblx0XHRoZWlnaHQ6IDI1cmVtO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvaG9tZS5wbmcpO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogIzMzMDA2Njtcblx0XHQvLyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuXHRcdC8vIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHR9XG5cblx0XHQud3JhcC10ZXh0IHtcblxuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdFx0LmZyb250cGFnZS1oZWFkZXItdGl0bGUge1xuXHRcdFx0XHRjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KTtcblx0XHRcdFx0Ly8gbWFyZ2luLXRvcDogNXJlbTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogNXJlbTtcblx0XHRcdFx0XHRmb250LXNpemU6IHgtbGFyZ2U7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5mcm9udHBhZ2UtaGVhZGVyLXRleHQge1xuXHRcdFx0XHRmb250LXNpemU6IGxhcmdlcjtcblx0XHRcdFx0cGFkZGluZzogMHJlbSAycmVtO1xuXHRcdFx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC42MCk7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDFyZW07XG5cdFx0XHRcdC8vIG1hcmdpbi10b3A6IDVyZW07XG5cdFx0XHRcdC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHQvLyBcdG1hcmdpbi10b3A6IDNyZW07XG5cdFx0XHRcdC8vIH1cblx0XHRcdH1cblx0XHRcdC5tYWluLWxvZ28ge1xuXHRcdFx0XHR3aWR0aDogMTByZW07XG5cdFx0XHRcdGhlaWdodDogMTByZW07XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1nL2xvZ28uc3ZnKTtcblx0XHRcdH1cblx0XHRcdC5tYWluLXRpdGxlIHtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0Zm9udC1zaXplOiAyLjVyZW07XG5cdFx0XHR9XG5cdFx0XHQubWVkaXVtLXRpdGxlIHtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0Zm9udC1zaXplOiAzcmVtO1xuXHRcdFx0fVxuXHRcdFx0LnN1YnRpdGxlIHtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdFx0Zm9udC1zaXplOiA0LjVyZW07XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0cmVtO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSBvbmx5KSB7XG5cdFx0XHRoZWlnaHQ6IDQwcmVtO1xuXHRcdFx0LndyYXAtdGV4dCB7XG5cdFx0XHRcdC5tYWluLWxvZ28ge1xuXHRcdFx0XHRcdHdpZHRoOiAxNXJlbTtcblx0XHRcdFx0XHRoZWlnaHQ6IDE1cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRoZWlnaHQ6IDI2cmVtO1xuXHRcdFx0LndyYXAtdGV4dCB7XG5cdFx0XHRcdC5tYWluLXRpdGxlIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5tZWRpdW0tdGl0bGUge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5zdWJ0aXRsZSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAycmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cblxufVxuIiwiLm1vYmlsZS1uYXYge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nLXRvcDogLjJyZW07XG5cdHBhZGRpbmctYm90dG9tOiAuMnJlbTtcblx0dG9wOiAwO1xuXHR6LWluZGV4OiA5OTA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgfVxuICAgIC5ibG9naW5mbyB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblx0Lm1vYmlsZS1sb2dvIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDVyZW07XG5cdFx0aGVpZ2h0OiA1cmVtO1xuXHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvbG9nby5zdmcpO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdH1cblx0Lm1vYmlsZS1uYXYtb3BlbiB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHQuZGFzaGljb25zIHtcblx0XHRcdCRzaXplIDogMi41cmVtO1xuXHRcdFx0Zm9udC1zaXplOiAkc2l6ZTtcblx0XHRcdHdpZHRoOiAkc2l6ZTtcblx0XHRcdGhlaWdodDogJHNpemU7XG5cdFx0fVxuXHR9XG59XG5cblxuLm1lbnUtbW9iaWxlLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY292ZXJlcjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpO1xuICAgIC5jbG9zZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLjVyZW07XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC5kYXNoaWNvbnMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNlYXJjaC1tb2JpbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5hdXhpbGlhci1tZW51IHtcbiAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBcdHRvcDogYXV0bztcbiAgICBcdHJpZ2h0OiBhdXRvO1xuICAgIFx0Ym90dG9tOiAxcmVtO1xuICAgIFx0bGVmdDogMXJlbTtcbiAgICBcdCNtZW51LWF1eGlsaWFyIHtcbiAgICBcdFx0bWFyZ2luOiAwO1xuXHQgICAgXHRsaSB7XG5cdCAgICBcdFx0YSB7XG5cdCAgICBcdFx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XG5cdCAgICBcdFx0XHRmb250LXNpemU6IC44cmVtO1xuXHQgICAgXHRcdH1cblx0ICAgIFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR9XG5cdCAgICBcdH1cbiAgICBcdH1cbiAgICBcdC5sYW5nLW1lbnUge1xuICAgIFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgXHRcdGxlZnQ6IC43cmVtO1xuICAgIFx0XHRyaWdodDogYXV0bztcbiAgICBcdFx0dG9wOiAtM3JlbTtcbiAgICBcdFx0bGkge1xuXHQgICAgXHRcdGEge1xuXHQgICAgXHRcdFx0Zm9udC1zaXplOiAxLjNyZW07XG5cdCAgICBcdFx0XHRjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cdCAgICBcdFx0fVxuXHQgICAgXHRcdCYuY3VycmVudC1sYW5nIHtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuICAgIFx0XHR9XG4gICAgXHR9XG4gICAgfVxuICAgIC5pcy1kcmlsbGRvd24ge1xuICAgIFx0bWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gICAgLm1lbnUge1xuICAgIFx0ZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMXJlbSAxLjVyZW0gMCAxLjVyZW07XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgXHRwYWRkaW5nOiAuOHJlbSAuNXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMnJlbTtcbiAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4obWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSwyMCk7XG4gICAgICAgICAgICAgICBcdFx0Y29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgXHRhIHtcbiAgICAgICAgICAgIFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIFx0fVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgICAgICAgIFx0Ly90b3A6IDVyZW07XG4gICAgICAgICAgICBcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSk7XG4gICAgICAgICAgICBcdGxpIHtcbiAgICAgICAgICAgIFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgXHRcdCYuanMtZHJpbGxkb3duLWJhY2sge1xuICAgICAgICAgICAgXHRcdFx0Jj5hIHtcbiAgICAgICAgICAgIFx0XHRcdFx0JjpiZWZvcmUge1xuICAgICAgICAgICAgXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIFx0XHRcdFx0fVxuICAgICAgICAgICAgXHRcdFx0fVxuICAgICAgICAgICAgXHRcdH1cbiAgICAgICAgICAgIFx0fVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5IHNlY3Rpb24ubWFpbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB9XG59IiwiQG1peGluIGJpZy10aXRsZSB7XG5cdGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udC1hbHQ7XG5cdGZvbnQtd2VpZ2h0OiAkYm9sZDtcblx0Zm9udC1zaXplOiByZW0tY2FsYygzMCk7XG5cdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn1cbkBtaXhpbiBsb3ctdGl0bGUge1xuXHRmb250LWZhbWlseTogJHRpdGxlLWZvbnQtYWx0O1xuXHRmb250LXdlaWdodDogJGJvbGQ7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbn1cbkBtaXhpbiBtaWRkbGUtdGl0bGUge1xuXHR3aWR0aDogMjUlO1xuXHRtYXJnaW46IDJyZW0gYXV0bztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LWZhbWlseTogJHRpdGxlLWZvbnQ7XG5cdGNvbG9yOiAkYmxhY2stZ3JheTtcblx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cdHNwYW4ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0b3A6IC42cmVtO1xuXHRcdHBhZGRpbmc6IC41cmVtO1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0fVxufVxuQG1peGluIHRoZW1lLWdyYXkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cdGNvbG9yOiAkZGFyay1ncmF5O1xuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdH1cbn1cbkBtaXhpbiB0aGVtZS1ncmF5LWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAgICYucGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBAY29udGVudDsgfVxufVxuQG1peGluIGNvdmVyZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5AbWl4aW4gcm90YXRlKCRkZWcpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoJGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWcpO1xufVxuQG1peGluIHJpYmJvbi1sZWZ0IHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDE5cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMTlweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogMTlweCBzb2xpZCBkYXJrZW4oJGdyYXktZGFyaywxMCk7XG4gICAgQGluY2x1ZGUgcm90YXRlKC00NWRlZyk7XG59XG5AbWl4aW4gcmliYm9uLWJvdHRvbSgkY29sb3IpIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDEycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogMTJweCBzb2xpZCAkY29sb3I7XG4gICAgQGluY2x1ZGUgcm90YXRlKDkwZGVnKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXRvLW5vbmUoJHIsJGcsJGIpIHtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKCRyLCRnLCRiLDApIDAlLCByZ2JhKCRyLCRnLCRiLC43KSAxMDAlKTsgLyogRkYzLjYrICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKCRyLCRnLCRiLDApKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoJHIsJGcsJGIsLjcpKSk7IC8qIENocm9tZSxTYWZhcmk0KyAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoJHIsJGcsJGIsMCkgMCUscmdiYSgkciwkZywkYiwuNykgMTAwJSk7IC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIHJnYmEoJHIsJGcsJGIsMCkgMCUscmdiYSgkciwkZywkYiwuNykgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqL1xuICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgkciwkZywkYiwwKSAwJSxyZ2JhKCRyLCRnLCRiLC43KSAxMDAlKTsgLyogSUUxMCsgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgcmdiYSgkciwkZywkYiwwKSAwJSxyZ2JhKCRyLCRnLCRiLC43KSAxMDAlKTsgLyogVzNDICovXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwJyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqL1xuXG59XG5AbWl4aW4gZ3JhZGllbnQtdG9wLWYoJGNvbG9yLCRmcm9tLCR0bykge1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgkY29sb3IsJGZyb20pIDAlLCByZ2JhKCRjb2xvciwkdG8pIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgkY29sb3IsJGZyb20pIDAlLHJnYmEoJGNvbG9yLCR0bykgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgkY29sb3IsJGZyb20pIDAlLHJnYmEoJGNvbG9yLCR0bykgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xufVxuQG1peGluIGdyYWRpZW50LXRvcCgkciwkZywkYikge1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgkciwkZywkYiwwLjUpIDAlLCByZ2JhKCRyLCRnLCRiLDApIDEwMCUpOyAvKiBGRjMuNi0xNSAqL1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgkciwkZywkYiwwLjUpIDAlLHJnYmEoJHIsJGcsJGIsMCkgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgkciwkZywkYiwwLjUpIDAlLHJnYmEoJHIsJGcsJGIsMCkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xufVxuQG1peGluIGdyYWRpZW50LWJvdHRvbSgkciwkZywkYikge1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgkciwkZywkYiwwKSAwJSwgcmdiYSgkciwkZywkYiwxKSAxMDAlKTsgLyogRkYzLjYtMTUgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoJHIsJGcsJGIsMCkgMCUscmdiYSgkciwkZywkYiwxKSAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKCRyLCRnLCRiLDApIDAlLHJnYmEoJHIsJGcsJGIsMSkgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgIC8vZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMGZmZmZmZicsIGVuZENvbG9yc3RyPScjZmZmZmZmJyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqL1xufVxuQG1peGluIHRyYW5zZm9ybS1kdXJhdGlvbigkdHlwZSwkZHVyYXRpb24sJGFuaW1hdGlvbikge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHR5cGUgJGR1cmF0aW9uICRhbmltYXRpb247IC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgLW1vei10cmFuc2l0aW9uOiAkdHlwZSAkZHVyYXRpb24gJGFuaW1hdGlvbjsgLyogRmlyZWZveCAqL1xuICAgIC1tcy10cmFuc2l0aW9uOiAkdHlwZSAkZHVyYXRpb24gJGFuaW1hdGlvbjsgLyogSUUgOSAqL1xuICAgIC1vLXRyYW5zaXRpb246ICR0eXBlICRkdXJhdGlvbiAkYW5pbWF0aW9uOyAvKiBPcGVyYSAqL1xuICAgIHRyYW5zaXRpb246ICR0eXBlICRkdXJhdGlvbiAkYW5pbWF0aW9uO1xufVxuQG1peGluIHRyYW5zZm9ybS1zY2FsZSgkc2NhbGUpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgkc2NhbGUpOyAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAgIC1tb3otdHJhbnNmb3JtOnNjYWxlKCRzY2FsZSk7IC8qIEZpcmVmb3ggKi9cbiAgICAtbXMtdHJhbnNmb3JtOnNjYWxlKCRzY2FsZSk7IC8qIElFIDkgKi9cbiAgICAtby10cmFuc2Zvcm06c2NhbGUoJHNjYWxlKTsgLyogT3BlcmEgKi9cbiAgICAgdHJhbnNmb3JtOnNjYWxlKCRzY2FsZSk7XG59XG5AbWl4aW4gdHJpYW5nbGUtdXAoJHNpemUsICRjb2xvcikge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCAkY29sb3I7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcG9zaXRpb246IHJlbGF0aXZlKSB7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5AbWl4aW4gZm9udEZhY2UoJGZhbWlseSwkc3JjLCRzdHlsZTogbm9ybWFsLCR3ZWlnaHQ6IG5vcm1hbCkge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogJGZhbWlseTtcbiAgICAgICAgc3JjOiB1cmwoJyN7JHNyY30uZW90Jyk7IC8vIElFOSBjb21wYXRcbiAgICAgICAgc3JjOiB1cmwoJyN7JHNyY30uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLy8gSUU4IGFuZCBiZWxvd1xuICAgICAgICAgICAgdXJsKCcjeyRzcmN9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLy8gc3RhbmRhcmRzXG4gICAgICAgICAgICB1cmwoJyN7JHNyY30udHRmJykgZm9ybWF0KCd0cnVldHlwZScpLCAvLyBTYWZhcmksIEFuZHJvaWQsIGlPU1xuICAgICAgICAgICAgdXJsKCcjeyRzcmN9LnN2ZyMjeyRmYW1pbHl9JykgZm9ybWF0KCdzdmcnKTsgLy8gbGVnYWN5IGlPU1xuXG4gICAgICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgfVxufSIsIi5tYWluLWZvb3RlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkZGFyay1wdXJwbGUsIDIwKTtcblx0Y29sb3I6ICRsaWdodC1ncmF5O1xuXG5cdC5jaWJlcnNlZ3VyYXMge1xuXHRcdGltZyB7XG5cdFx0XHRtYXgtd2lkdGg6IDE4MHB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQubGljZW5zZSB7XG5cdFx0XHRhIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdG1heC13aWR0aDogNDBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5sb2dvcyB7XG5cdFx0LmxvZ28ge1xuXHRcdFx0cGFkZGluZy10b3A6IDFyZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMXJlbTtcblx0XHRcdGltZyB7XG5cdFx0XHRcdG1heC1oZWlnaHQ6IDEwMHB4O1xuXHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCJzZWN0aW9uLmZyb250cGFnZSB7XG5cblx0c2VjdGlvbiB7XG5cdFx0cGFkZGluZy10b3A6IDJyZW07XG5cdFx0cGFkZGluZy1ib3R0b206IDJyZW07XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMXJlbTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdH1cblx0XHQuc3VidGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdH1cblx0fVxuXG5cdHNlY3Rpb24uZmlsdHJvIHtcblxuXHRcdC5mc3RFbGVtZW50Lm10YWcge1xuXG5cdFx0XHRib3JkZXItcmFkaXVzOiAuNXJlbTtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcblxuXHRcdFx0LmZzdFRvZ2dsZUJ0biB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0cGFkZGluZzogLjVyZW07XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI4O1xuXHRcdFx0fVxuXHRcdFx0LmZzdFF1ZXJ5SW5wdXQge1xuXHRcdFx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0XHR9XG5cdFx0XHQuZnN0UmVzdWx0SXRlbSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0cGFkZGluZzogLjVyZW07XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cblx0XHRcdFx0Ji5mc3RTZWxlY3RlZCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTM1JSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdGJ1dHRvbi5idXR0b24ge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxcmVtO1xuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cblx0c2VjdGlvbi5hY2Npb25lcyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpLCA1NyUpO1xuXHRcdC5zdWJ0aXRsZSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyLjVyZW07XG5cdFx0fVxuXHRcdC5hY2Npb24ge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBsaW5lYXI7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAuNXJlbTtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAuNXJlbTtcblx0XHRcdH1cblx0XHRcdGEge1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHQvLyBtYXJnaW4tdG9wOiAyLjVyZW07XG5cdFx0XHRcdFx0Ly8gbWFyZ2luLWJvdHRvbTogLjVyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0Ly8gaHR0cHM6Ly93d3cud2VicGFnZWZ4LmNvbS9ibG9nL3dlYi1kZXNpZ24vY2lyY3VsYXItaW1hZ2VzLWNzcy9cblx0XHRcdFx0LmNpcmN1bGFyLXNxdWFyZSB7XG5cdFx0XHRcdFx0d2lkdGg6IDIwMHB4O1xuXHRcdFx0XHRcdGhlaWdodDogMjAwcHg7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpLCA1MCUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHNlY3Rpb24uYmxvZyB7XG5cblx0XHRwYWRkaW5nLWJvdHRvbTogNHJlbTtcblx0XHRpbWcge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRoZWlnaHQ6IDE4MHB4O1xuXHRcdH1cblx0XHQuYXJ0aWN1bG8ge1xuXHRcdFx0bWFyZ2luLXRvcDogM3JlbTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAzcmVtO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDFyZW07XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0fVxuXHRcdFx0LmZlY2hhIHtcblx0XHRcdFx0Y29sb3I6ICRkYXJrLWdyYXk7XG5cdFx0XHR9XG5cdFx0XHQuY2F0ZWdvcmlhIHtcblx0XHRcdFx0Y29sb3I6ICRtZWRpdW0tZ3JheTtcblx0XHRcdH1cblx0XHRcdHAge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogLjVyZW07XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0Lm1vcmUuYnV0dG9uIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW0tZ3JheTtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRtYXJnaW4tdG9wOiAyLjVyZW07XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAtM3JlbTtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHNlY3Rpb24uYWdlbmRhIHtcblx0fVxufSIsInNlY3Rpb24ubm9zb3RyYXMge1xuXHQuaGVhZGVyIHtcblxuXHR9XG5cblx0LnF1aWVuZXMtc29tb3Mge1xuXHRcdC5sb2dvcyB7XG5cdFx0XHQubG9nbyB7XG5cdFx0XHRcdHdpZHRoOiAxNTBweDtcblx0XHRcdFx0bWF4LWhlaWdodDogMjAwcHg7XG5cdFx0XHRcdHBhZGRpbmc6IC41cmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5tYW5pZmllc3RvIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSksIDU3JSk7XG5cdFx0aW1nIHtcblx0XHRcdC8vIG1heC1oZWlnaHQ6IDMwMHB4O1xuXHRcdH1cblx0fVxuXG5cdC5nbG9zYXJpbyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbihtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpLCA0MCUpO1xuXHRcdC50ZXJtaW5vIHtcblx0XHRcdHBhZGRpbmc6IDFyZW0gMnJlbTtcblx0XHR9XG5cdH1cblxuXHQuY29tcGlzIHtcblx0XHRpbWcge1xuXHRcdFx0bWF4LXdpZHRoOiAxM3JlbTtcblx0XHR9XG5cdH1cblxuXHQuZG9uYXRlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSksIDU3JSk7XG5cblx0XHQuZG9uYXRlLmJ1dHRvbiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cdFx0XHRjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW4tdG9wOiAxLjVyZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogLTIuNXJlbTtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0fVxuXHRcdFx0aS5maS1oZWFydDpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBcIjwzXCI7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRcdGNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpO1xuXHRcdFx0fVxuXHRcdFx0aS5kYXNoaWNvbnMtaGVhcnQge1xuXHRcdFx0XHRjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDAuNztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCJzZWN0aW9uLmJsb2cge1xuXG5cdC5wYWdlLWhlYWRlciB7XG5cdFx0aW1nIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0aGVpZ2h0OiAxODBweDtcblx0XHR9XG5cdH1cblxuXHQuYXJ0aWN1bG9zIHtcblx0XHRtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG5cdFx0LmFydGljdWxvIHtcblx0XHRcdG1hcmdpbi10b3A6IDNyZW07XG5cdFx0XHRtYXJnaW4tbGVmdDogM3JlbTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxcmVtO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdH1cblx0XHRcdC5mZWNoYSB7XG5cdFx0XHRcdGNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0fVxuXHRcdFx0LmNhdGVnb3JpYSB7XG5cdFx0XHRcdGNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cdFx0XHR9XG5cdFx0XHRwIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IC41cmVtO1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lm1vcmUuYnV0dG9uIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW0tZ3JheTtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRtYXJnaW4tdG9wOiAyLjVyZW07XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAtM3JlbTtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5mZWF0dXJlZC1wb3N0cy1zbGlkZXIge1xuXHRcdC5mZWNoYSwuY2F0ZWdvcmlhIHtcblx0XHRcdGNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdH1cblx0XHQudGl0bGUge1xuXHRcdFx0cGFkZGluZy10b3A6IDEuNXJlbTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyLjVyZW07XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdH1cblx0XHQuc2xpY2stZG90cyB7XG5cdFx0XHRidXR0b246OmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6ICfimqsnO1xuXHRcdFx0XHRmb250LXNpemU6IDEuM3JlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCJzZWN0aW9uLmJsb2cuc2VhcmNoIHtcblx0LmFydGljdWxvcyB7XG5cdFx0LnBhZ2UtdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvclxuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsInNlY3Rpb24ubWF0ZXJpYWxlcyB7XG5cdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4obWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSwgNTclKTtcblx0cGFkZGluZy1ib3R0b206IDRyZW07XG5cblx0c2VjdGlvbi5oZWFkZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuXHRcdGltZyB7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdGhlaWdodDogMTgwcHg7XG5cdFx0fVxuXG5cdFx0aDIge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDAuNDtcblx0XHR9XG5cdH1cblxuXHRzZWN0aW9uLnNlYXJjaGJveCB7XG5cdH1cblxuXHRzZWN0aW9uLmZpbHRlcnMge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuXHRcdC5hY2NvcmRpb24tdGl0bGUsLmFjY29yZGlvbi1jb250ZW50IHtcblx0XHRcdGJvcmRlcjogMHB4O1xuXHRcdFx0cGFkZGluZzogMHB4O1xuXHRcdH1cblxuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRwYWRkaW5nOiAuNXJlbTtcblx0XHRcdGZvbnQtc2l6ZTogMTAwJTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IC41cmVtO1xuXHRcdH1cblxuXHRcdC5ibG9jayB7XG5cblx0XHRcdHBhZGRpbmctdG9wOiAxcmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDEuNXJlbTtcblx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cdFx0XHR9XG5cblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IC41cmVtO1xuXG5cdFx0XHRcdCYudGl0bGUge1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5idXR0b24tZ3JvdXAge1xuXHRcdFx0XHRpbnB1dCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGxhYmVsLmJ1dHRvbiB7XG5cdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0Y29sb3I6ICRkYXJrLWdyYXk7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogLjVyZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpbnB1dDpjaGVja2VkICsgbGFiZWwsIGlucHV0OmNoZWNrZWQgKyBsYWJlbDphY3RpdmUge1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTM1JSk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmZzdEVsZW1lbnQubXRhZyB7XG5cblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IC41cmVtO1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cblx0XHRcdFx0LmZzdFRvZ2dsZUJ0biB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0cGFkZGluZzogLjVyZW07XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMjg7XG5cdFx0XHRcdH1cblx0XHRcdFx0LmZzdFF1ZXJ5SW5wdXQge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHQuZnN0UmVzdWx0SXRlbSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdFx0XHRcdHBhZGRpbmc6IC41cmVtO1xuXG5cdFx0XHRcdFx0Ji5mc3RTZWxlY3RlZCB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG5cdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0zNSUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogMzUlKTtcblx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRidXR0b24tYmFja2dyb3VuZDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuZnN0Q2hvaWNlSXRlbSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcblx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0zNSUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cblxuXHRzZWN0aW9uLnJlc3VsdHMge1xuXHRcdC5tYXRlcmlhbCB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG5cdFx0XHRwYWRkaW5nOiAxLjVyZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogM2VtO1xuXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRoZWlnaHQ6IDIuNXJlbTtcblx0XHRcdH1cblxuXHRcdFx0LmNhdGVnb3JpYSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRjb2xvcjogJGRhcmstZ3JheTtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDFyZW07XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQucGFnaW5hdGlvbi1uYXYge1xuXHRcdFx0bWFyZ2luLXRvcDogMS41cmVtO1xuXHRcdH1cblx0fVxufSIsIi5zcGlubmVyIHtcbiAgbWFyZ2luOiAxMDBweCBhdXRvO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNwaW5uZXIgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAtd2Via2l0LWFuaW1hdGlvbjogc2stc3RyZXRjaGRlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogc2stc3RyZXRjaGRlbGF5IDEuMnMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG59XG5cbi5zcGlubmVyIC5yZWN0MiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbn1cblxuLnNwaW5uZXIgLnJlY3QzIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjBzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjBzO1xufVxuXG4uc3Bpbm5lciAucmVjdDQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTAuOXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLTAuOXM7XG59XG5cbi5zcGlubmVyIC5yZWN0NSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMC44cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC44cztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLXN0cmV0Y2hkZWxheSB7XG4gIDAlLCA0MCUsIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDAuNCkgfVxuICAyMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEuMCkgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLXN0cmV0Y2hkZWxheSB7XG4gIDAlLCA0MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDAuNCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwLjQpO1xuICB9ICAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEuMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxLjApO1xuICB9XG59Iiwic2VjdGlvbi5oZW50cnkge1xuXG5cdGhlYWRlciB7XG5cdFx0LmJsb2ctdGl0bGUge1xuXHRcdFx0Y29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSk7XG5cdFx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0XHRwYWRkaW5nLXRvcDogMS41ZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogLjVlbTtcblx0XHR9XG5cdFx0LmJsb2ctc3VidGl0bGUge1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRcdFx0cGFkZGluZy10b3A6IDBlbTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxLjVlbTtcblx0XHR9XG5cdFx0LmRhdGUge1xuXHRcdFx0Y29sb3I6ICRtZWRpdW0tZ3JheTtcblx0XHRcdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRcdH1cblx0XHQuY2F0ZWdvcnkge1xuXHRcdFx0Y29sb3I6ICRtZWRpdW0tZ3JheTtcblx0XHRcdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDFlbTtcblx0XHR9XG5cdFx0LmVudHJ5LXRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMi4ycmVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMWVtO1xuXHRcdH1cblx0XHRpLmRhc2hpY29ucyB7XG5cdFx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2UtY29udGVudCB7XG5cdFx0LmF1dGhvciB7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdGxpbmUtaGVpZ2h0OiA0O1xuXHRcdH1cblxuXHRcdC5ldGlxdWV0YXMge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRwYWRkaW5nLXRvcDogMWVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDFlbTtcblx0XHR9XG5cdH1cblxuXHRmb290ZXIge1xuXHRcdC5yb3cge1xuXHRcdFx0LnJlbGF0ZWQtcG9zdHMge1xuXHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMnJlbTtcblxuXHRcdFx0XHQudGl0bGUge1xuXHRcdFx0XHRcdGNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnBvc3RzIHtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogMnJlbTtcblxuXHRcdFx0XHRcdC5mZWNoYSB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGRhcmstZ3JheTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCJzZWN0aW9uLm1hdGVyaWFsIHtcblxuXHRoZWFkZXIge1xuXHRcdGltZyB7XG5cdFx0XHRoZWlnaHQ6IDEwcmVtO1xuXHRcdH1cblx0XHQuY2F0ZWdvcnktdGl0bGUge1xuXHRcdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0Zm9udC1zaXplOiAxLjJyZW07XG5cdFx0XHRwYWRkaW5nLXRvcDogMmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDEuNWVtO1xuXHRcdH1cblx0XHQuZW50cnktdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAyLjJyZW07XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxZW07XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IC41ZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2UtY29udGVudCB7XG5cblx0XHQubWV0YWRhdGEge1xuXHRcdFx0Y29sb3I6ICRkYXJrLWdyYXk7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMWVtO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcblxuXHRcdFx0LnNtYWxsLTEyIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IC41ZW07XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAuNWVtO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdC5sYXJnZS00IHtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRzcGFuLmJvbGQge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0fVxuXG5cdFx0LnRpdGxlIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAuNWVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRmb250LXNpemU6IDEuM2VtO1xuXHRcdH1cblxuXHRcdC5zdGQtdGV4dCB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMWVtO1xuXHRcdH1cblxuXHRcdC5ldGlxdWV0YXMge1xuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdHBhZGRpbmctdG9wOiAxZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMWVtO1xuXHRcdH1cblx0fVxuXG5cdGZvb3RlciB7XG5cdFx0LnJvdyB7XG5cdFx0XHQucmVsYXRlZC1wb3N0cyB7XG5cdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAycmVtO1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0aGVpZ2h0OiAyLjVyZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQubWF0ZXJpYWwge1xuXHRcdFx0XHRcdC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcblx0XHRcdFx0XHRwYWRkaW5nOiAxLjVyZW07XG5cdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDNlbTtcblxuXHRcdFx0XHRcdC5jYXRlZ29yaWEge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGRhcmstZ3JheTtcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */
