@charset "UTF-8";
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure{display:block}figure{margin:1em 40px;margin:1em 2.5rem}hr{box-sizing:content-box;overflow:visible}main{display:block}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit;font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText;outline:.0625rem 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;outline-offset:-.125rem}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}fieldset{border:1px solid silver;border:.0625rem solid silver;margin:0 2px;margin:0 .125rem;padding:.35em .625em .75em}legend{box-sizing:border-box;display:table;padding:0;color:inherit;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}details{display:block}summary{display:list-item}menu{display:block}canvas{display:inline-block}[hidden],template{display:none}.foundation-mq{font-family:"small=0em&medium=40em&tablet=48em&large=64em&xlarge=75em&xxlarge=90em"}html{box-sizing:border-box;font-size:100%}*,:after,:before{box-sizing:inherit}body{margin:0;padding:0;background:#ececec;font-family:Open Sans,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-weight:400;line-height:1.5;color:#333;-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;min-height:3.125rem;border-radius:0}select{width:100%}.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;background:transparent;line-height:1}[data-whatinput=mouse] button{outline:0}.is-visible{display:block!important}.is-hidden{display:none!important}.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}@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:48em){.tablet-order-1{-ms-flex-order:1;order:1}.tablet-order-2{-ms-flex-order:2;order:2}.tablet-order-3{-ms-flex-order:3;order:3}.tablet-order-4{-ms-flex-order:4;order:4}.tablet-order-5{-ms-flex-order:5;order:5}.tablet-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}}.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:-.46875rem;margin-left:-.46875rem}@media print,screen and (min-width:40em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}@media print,screen and (min-width:48em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}@media print,screen and (min-width:64em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}.row.expanded{max-width:none}.row.collapse>.column,.row.collapse>.columns{padding-right:0;padding-left:0}.row.collapse>.column>.row,.row.collapse>.columns>.row,.row.is-collapse-child{margin-right:0;margin-left:0}.column,.columns{-ms-flex:1 1 0px;-ms-flex:1 1 0rem;flex:1 1 0px;flex:1 1 0rem;padding-right:.46875rem;padding-left:.46875rem;min-width:0}@media print,screen and (min-width:40em){.column,.columns{padding-right:.9375rem;padding-left:.9375rem}}.column.row.row,.row.row.columns{display:-ms-flexbox;display:flex}.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:.46875rem;padding-left:.46875rem}@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;-ms-flex:1 1 0rem;flex:1 1 0px;flex:1 1 0rem}}@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;-ms-flex:1 1 0rem;flex:1 1 0px;flex:1 1 0rem}}@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:48em){.tablet-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.tablet-offset-0{margin-left:0}.tablet-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.tablet-offset-1{margin-left:8.33333%}.tablet-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.tablet-offset-2{margin-left:16.66667%}.tablet-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.tablet-offset-3{margin-left:25%}.tablet-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.tablet-offset-4{margin-left:33.33333%}.tablet-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.tablet-offset-5{margin-left:41.66667%}.tablet-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.tablet-offset-6{margin-left:50%}.tablet-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.tablet-offset-7{margin-left:58.33333%}.tablet-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.tablet-offset-8{margin-left:66.66667%}.tablet-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.tablet-offset-9{margin-left:75%}.tablet-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.tablet-offset-10{margin-left:83.33333%}.tablet-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.tablet-offset-11{margin-left:91.66667%}.tablet-order-1{-ms-flex-order:1;order:1}.tablet-order-2{-ms-flex-order:2;order:2}.tablet-order-3{-ms-flex-order:3;order:3}.tablet-order-4{-ms-flex-order:4;order:4}.tablet-order-5{-ms-flex-order:5;order:5}.tablet-order-6{-ms-flex-order:6;order:6}.tablet-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-1>.column,.tablet-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.tablet-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-2>.column,.tablet-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.tablet-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-3>.column,.tablet-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.tablet-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-4>.column,.tablet-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.tablet-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-5>.column,.tablet-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.tablet-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-6>.column,.tablet-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.tablet-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-7>.column,.tablet-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.tablet-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.tablet-up-8>.column,.tablet-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media print,screen and (min-width:48em) and (min-width:48em){.tablet-expand{-ms-flex:1 1 0px;-ms-flex:1 1 0rem;flex:1 1 0px;flex:1 1 0rem}}@media print,screen and (min-width:48em){.tablet-flex-dir-row{-ms-flex-direction:row;flex-direction:row}.tablet-flex-dir-row-reverse{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.tablet-flex-dir-column{-ms-flex-direction:column;flex-direction:column}.tablet-flex-dir-column-reverse{-ms-flex-direction:column-reverse;flex-direction:column-reverse}.tablet-flex-child-auto{-ms-flex:1 1 auto;flex:1 1 auto}.tablet-flex-child-grow{-ms-flex:1 0 auto;flex:1 0 auto}.tablet-flex-child-shrink{-ms-flex:0 1 auto;flex:0 1 auto}}.row.tablet-unstack>.column,.row.tablet-unstack>.columns{-ms-flex:0 0 100%;flex:0 0 100%}@media print,screen and (min-width:48em){.row.tablet-unstack>.column,.row.tablet-unstack>.columns{-ms-flex:1 1 0px;-ms-flex:1 1 0rem;flex:1 1 0px;flex:1 1 0rem}}@media print,screen and (min-width:48em){.tablet-collapse>.column,.tablet-collapse>.columns{padding-right:0;padding-left:0}.tablet-uncollapse>.column,.tablet-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;-ms-flex:1 1 0rem;flex:1 1 0px;flex:1 1 0rem}}@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;-ms-flex:1 1 0rem;flex:1 1 0px;flex:1 1 0rem}}@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%}.block-grid__title,blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}p{margin-bottom:1rem;font-size:inherit;line-height:1.4;text-rendering:optimizeLegibility}em,i{font-style:italic}b,em,i,strong{line-height:inherit}b,strong{font-weight:700}small{font-size:80%;line-height:inherit}.block-grid__title,h1,h2,h3,h4,h5,h6{font-family:Open Sans,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-style:normal;font-weight:400;color:inherit;text-rendering:optimizeLegibility}.block-grid__title small,h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{line-height:0;color:#979797}h1{font-size:2.625rem}h1,h2{line-height:1.4;margin-top:0;margin-bottom:.5rem}h2{font-size:2.125rem}h3{font-size:1.5rem}.block-grid__title,h3,h4{line-height:1.4;margin-top:0;margin-bottom:.5rem}.block-grid__title,h4{font-size:1.25rem}h5{font-size:1.125rem}h5,h6{line-height:1.4;margin-top:0;margin-bottom:.5rem}h6{font-size:1rem}a{line-height:inherit;color:#197da4;text-decoration:none;cursor:pointer}a:focus,a:hover{color:#166c8d}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 #979797;border-bottom:.0625rem solid #979797;border-left:0}dl,ol,ul{margin-bottom:1rem;list-style-position:outside;line-height:1.4}li{font-size:inherit}ul{list-style-type:disc}ol,ul{margin-left:1.25rem}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:700}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #979797;border-left:.0625rem solid #979797}blockquote,blockquote p{line-height:1.4;color:#373839}cite{display:block;font-size:.8125rem;color:#373839}cite:before{content:"— "}abbr{border-bottom:1px dotted #0a0a0a;border-bottom:.0625rem dotted #0a0a0a;color:#333;cursor:help}figure{margin:0}code{padding:.125rem .3125rem .0625rem;border:1px solid #979797;border:.0625rem solid #979797;font-weight:400}code,kbd{background-color:#e6e6e6;font-family:Consolas,Liberation Mono,Courier,monospace;color:#0a0a0a}kbd{margin:0;padding:.125rem .25rem 0}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:400;line-height:1.4;color:#373839}.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:48em){.tablet-text-left{text-align:left}.tablet-text-right{text-align:right}.tablet-text-center{text-align:center}.tablet-text-justify{text-align:justify}}@media print,screen and (min-width:64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{*{background:transparent!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}.show-for-print{display:block!important}.hide-for-print{display:none!important}table.show-for-print{display:table!important}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}abbr[title]:after{content:" (" attr(title) ")"}blockquote,pre{border:1px solid #373839;border:.0625rem solid #373839;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.button{display:inline-block;vertical-align:middle;margin:0;padding:.85em 35px;padding:.85em 2.1875rem;-webkit-appearance:none;border:1px solid transparent;border:.0625rem solid transparent;border-radius:48px;border-radius:3rem;transition:background-color .25s ease-out,color .25s ease-out;font-size:.9rem;line-height:1;text-align:center;cursor:pointer;background-color:#19a35a;color:#fefefe}[data-whatinput=mouse] .button{outline:0}.button:focus,.button:hover{background-color:#158b4d;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:#197da4;color:#fefefe}.button.primary:focus,.button.primary:hover{background-color:#146483;color:#fefefe}.button.secondary{background-color:#19a35a;color:#0a0a0a}.button.secondary:focus,.button.secondary:hover{background-color:#148248;color:#0a0a0a}.button.tertiary{background-color:#e9268b;color:#0a0a0a}.button.tertiary:focus,.button.tertiary:hover{background-color:#c51470;color:#0a0a0a}.button.success{background-color:#3adb76;color:#0a0a0a}.button.success:focus,.button.success:hover{background-color:#22bb5b;color:#0a0a0a}.button.warning{background-color:#ffae00;color:#0a0a0a}.button.warning:focus,.button.warning:hover{background-color:#cc8b00;color:#0a0a0a}.button.alert{background-color:#cc4b37;color:#fefefe}.button.alert:focus,.button.alert:hover{background-color:#a53b2a;color:#fefefe}.button.hollow{border:1px solid #197da4;border:.0625rem solid #197da4;color:#197da4}.button.hollow,.button.hollow:focus,.button.hollow:hover{background-color:transparent}.button.hollow:focus,.button.hollow:hover{border-color:#0d3f52;color:#0d3f52}.button.hollow.primary{border:1px solid #197da4;border:.0625rem solid #197da4;color:#197da4}.button.hollow.primary:focus,.button.hollow.primary:hover{border-color:#0d3f52;color:#0d3f52}.button.hollow.secondary{border:1px solid #19a35a;border:.0625rem solid #19a35a;color:#19a35a}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#0d522d;color:#0d522d}.button.hollow.tertiary{border:1px solid #e9268b;border:.0625rem solid #e9268b;color:#e9268b}.button.hollow.tertiary:focus,.button.hollow.tertiary:hover{border-color:#7b0c46;color:#7b0c46}.button.hollow.success{border:1px solid #3adb76;border:.0625rem solid #3adb76;color:#3adb76}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#157539;color:#157539}.button.hollow.warning{border:1px solid #ffae00;border:.0625rem solid #ffae00;color:#ffae00}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#805700;color:#805700}.button.hollow.alert{border:1px solid #cc4b37;border:.0625rem solid #cc4b37;color:#cc4b37}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#67251a;color:#67251a}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed}.button.disabled:focus,.button.disabled:hover,.button[disabled]:focus,.button[disabled]:hover{background-color:#197da4;color:#fefefe}.button.disabled.primary,.button[disabled].primary{opacity:.25;cursor:not-allowed}.button.disabled.primary:focus,.button.disabled.primary:hover,.button[disabled].primary:focus,.button[disabled].primary:hover{background-color:#197da4;color:#fefefe}.button.disabled.secondary,.button[disabled].secondary{opacity:.25;cursor:not-allowed}.button.disabled.secondary:focus,.button.disabled.secondary:hover,.button[disabled].secondary:focus,.button[disabled].secondary:hover{background-color:#19a35a;color:#fefefe}.button.disabled.tertiary,.button[disabled].tertiary{opacity:.25;cursor:not-allowed}.button.disabled.tertiary:focus,.button.disabled.tertiary:hover,.button[disabled].tertiary:focus,.button[disabled].tertiary:hover{background-color:#e9268b;color:#fefefe}.button.disabled.success,.button[disabled].success{opacity:.25;cursor:not-allowed}.button.disabled.success:focus,.button.disabled.success:hover,.button[disabled].success:focus,.button[disabled].success:hover{background-color:#3adb76;color:#fefefe}.button.disabled.warning,.button[disabled].warning{opacity:.25;cursor:not-allowed}.button.disabled.warning:focus,.button.disabled.warning:hover,.button[disabled].warning:focus,.button[disabled].warning:hover{background-color:#ffae00;color:#fefefe}.button.disabled.alert,.button[disabled].alert{opacity:.25;cursor:not-allowed}.button.disabled.alert:focus,.button.disabled.alert:hover,.button[disabled].alert:focus,.button[disabled].alert:hover{background-color:#cc4b37;color:#fefefe}.button.dropdown:after{display:block;width:0;height:0;border:.4em inset;content:"";border-bottom-width:0;border-top-style:solid;border-color:#fefefe transparent transparent;position:relative;top:.4em;display:inline-block;float:right;margin-left:35px;margin-left:2.1875rem}.button.arrow-only:after{top:-.1em;float:none;margin-left:0}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;margin:0 0 1rem;padding:.5rem;border:1px solid #979797;border:.0625rem solid #979797;border-radius:0;background-color:#fefefe;box-shadow:none;font-family:inherit;font-size:1rem;font-weight:400;color:#0a0a0a;transition:border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus{outline:none;border:1px solid #373839;border:.0625rem solid #373839;background-color:#fefefe;box-shadow:none;transition:border-color .25s ease-in-out}textarea{max-width:100%}textarea[rows]{height:auto}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#979797}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#979797}input::placeholder,textarea::placeholder{color:#979797}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:not-allowed}[type=button],[type=submit]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}input[type=search]{box-sizing:border-box}[type=checkbox],[type=file],[type=radio]{margin:0 0 1rem}[type=checkbox]+label,[type=radio]+label{display:inline-block;vertical-align:baseline;margin-left:.5rem;margin-right:1rem;margin-bottom:0}[type=checkbox]+label[for],[type=radio]+label[for]{cursor:pointer}label>[type=checkbox],label>[type=radio]{margin-right:.5rem}[type=file]{width:100%}label{display:block;margin:0;font-size:.875rem;font-weight:400;line-height:1.8;color:#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,.input-group>:last-child>*{border-radius:0 0 0 0}.input-group-button,.input-group-button a,.input-group-button button,.input-group-button input,.input-group-button label,.input-group-field,.input-group-label{margin:0;white-space:nowrap;display:table-cell;vertical-align:middle}.input-group-label{padding:0 1rem;border:1px solid #979797;border:.0625rem solid #979797;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 button,.input-group-button input,.input-group-button label{height:2.5rem;padding-top:0;padding-bottom:0;font-size:1rem}.input-group .input-group-button{display:table-cell}fieldset{margin:0;padding:0;border:0}legend{max-width:100%;margin-bottom:.5rem}.fieldset{margin:1.125rem 0;padding:1.25rem;border:1px solid #979797;border:.0625rem solid #979797}.fieldset legend{margin:0;margin-left:-.1875rem;padding:0 .1875rem;background:#ececec}select{height:2.4375rem;margin:0 0 1rem;padding:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #979797;border:.0625rem solid #979797;border-radius:0;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%2825, 163, 90%29'></polygon></svg>");background-origin:content-box;background-position:right -1rem center;background-repeat:no-repeat;background-size:9px 6px;background-size:.5625rem .375rem;padding-right:1.5rem;transition:border-color .25s ease-in-out}@media screen and (min-width:0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}select:focus{outline:none;border:1px solid #373839;border:.0625rem solid #373839;background-color:#fefefe;box-shadow:none;transition:border-color .25s ease-in-out}select:disabled{background-color:#e6e6e6;cursor:not-allowed}select::-ms-expand{display:none}select[multiple]{height:auto;background-image:none}.is-invalid-input:not(:focus){border-color:#cc4b37;background-color:#f9ecea}.is-invalid-input:not(:focus)::-webkit-input-placeholder{color:#cc4b37}.is-invalid-input:not(:focus):-ms-input-placeholder{color:#cc4b37}.is-invalid-input:not(:focus)::placeholder{color:#cc4b37}.form-error,.is-invalid-label{color:#cc4b37}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:700}.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:47.9375em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.9375em),screen and (min-width:48em){.show-for-medium-only{display:none!important}}@media print,screen and (min-width:48em){.hide-for-tablet{display:none!important}}@media screen and (max-width:47.9375em){.show-for-tablet{display:none!important}}@media screen and (min-width:48em) and (max-width:63.9375em){.hide-for-tablet-only{display:none!important}}@media screen and (max-width:47.9375em),screen and (min-width:64em){.show-for-tablet-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;width:.0625rem;height:1px;height:.0625rem;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}.hide-for-portrait,.show-for-landscape{display:block!important}@media screen and (orientation:landscape){.hide-for-portrait,.show-for-landscape{display:block!important}}@media screen and (orientation:portrait){.hide-for-portrait,.show-for-landscape{display:none!important}}.hide-for-landscape,.show-for-portrait{display:none!important}@media screen and (orientation:landscape){.hide-for-landscape,.show-for-portrait{display:none!important}}@media screen and (orientation:portrait){.hide-for-landscape,.show-for-portrait{display:block!important}}.float-left{float:left!important}.float-right{float:right!important}.float-center{display:block;margin-right:auto;margin-left:auto}.clearfix:after,.clearfix:before{display:table;content:" "}.clearfix:after{clear:both}.accordion{margin-left:0;background:#fefefe;list-style-type:none}.accordion-item:first-child>:first-child,.accordion-item:last-child>:last-child{border-radius:0 0 0 0}.accordion-title{position:relative;display:block;padding:1.25rem 1rem;border:1px solid #e6e6e6;border:.0625rem solid #e6e6e6;border-bottom:0;font-size:.75rem;line-height:1;color:#197da4}:last-child:not(.is-active)>.accordion-title{border-bottom:1px solid #e6e6e6;border-bottom:.0625rem solid #e6e6e6;border-radius:0 0 0 0}.accordion-title:focus,.accordion-title:hover{background-color:#e6e6e6}.accordion-title:before{position:absolute;top:50%;right:1rem;margin-top:-.5rem;content:"+"}.is-active>.accordion-title:before{content:"–"}.accordion-content{display:none;padding:1rem;border:1px solid #e6e6e6;border:.0625rem solid #e6e6e6;border-bottom:0;background-color:#fefefe;color:#333}:last-child>.accordion-content:last-child{border-bottom:1px solid #e6e6e6;border-bottom:.0625rem solid #e6e6e6}.breadcrumbs{margin:0 0 1rem;list-style:none}.breadcrumbs:after,.breadcrumbs:before{display:table;content:" "}.breadcrumbs:after{clear:both}.breadcrumbs li{float:left;font-size:.6875rem;color:#0a0a0a;cursor:default;text-transform:uppercase}.breadcrumbs li:not(:last-child):after{position:relative;top:1px;top:.0625rem;margin:0 .75rem;opacity:1;content:"/";color:#979797}.breadcrumbs a{color:#197da4}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs .disabled{color:#979797;cursor:not-allowed}.is-drilldown{position:relative;overflow:hidden}.is-drilldown li{display:block}.is-drilldown.animate-height{transition:height .5s}.is-drilldown-submenu{position:absolute;top:0;left:100%;z-index:-1;width:100%;background:#fefefe;transition:transform .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:6px inset;border:.375rem inset;content:"";border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #373839;position:absolute;top:50%;margin-top:-6px;margin-top:-.375rem;right:1rem}.js-drilldown-back>a:before{display:block;width:0;height:0;border:6px inset;border:.375rem inset;content:"";border-right-style:solid;border-color:transparent #373839 transparent transparent;display:inline-block;vertical-align:middle;margin-right:.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:.7rem 1rem;line-height:1}.menu a,.menu button,.menu input,.menu select{margin-bottom:0}.menu>li>a i,.menu>li>a i+span,.menu>li>a img,.menu>li>a img+span,.menu>li>a svg,.menu>li>a svg+span{vertical-align:middle}.menu>li>a i,.menu>li>a img,.menu>li>a svg{margin-right:.25rem;display:inline-block}.menu.horizontal>li,.menu>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:48em){.menu.tablet-horizontal>li{display:table-cell}.menu.tablet-expanded{display:table;width:100%;table-layout:fixed}.menu.tablet-expanded>li:first-child:last-child{width:100%}.menu.tablet-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;margin-right:1rem;line-height:1}.menu.simple a{padding:0}.menu.align-right:after,.menu.align-right:before{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 i,.menu.icon-top>li>a img,.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:#197da4;color:#fefefe}.menu.menu-bordered li{border:1px solid #e6e6e6;border:.0625rem 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:.7rem 1rem;font-weight:700;line-height:1;color:inherit}.menu-centered{text-align:center}.menu-centered>.menu{display:inline-block}.no-js [data-responsive-menu] ul{display:none}.dropdown.menu>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}[data-whatinput=mouse] .dropdown.menu a{outline:0}.no-js .dropdown.menu ul{display:none}.dropdown.menu.vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.vertical>li.opens-left>.is-dropdown-submenu{right:100%;left:auto}.dropdown.menu.vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}@media print,screen and (min-width:40em){.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.medium-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.medium-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.medium-vertical>li.opens-left>.is-dropdown-submenu{right:100%;left:auto}.dropdown.menu.medium-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}}@media print,screen and (min-width:48em){.dropdown.menu.tablet-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.tablet-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.tablet-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.tablet-vertical>li.opens-left>.is-dropdown-submenu{right:100%;left:auto}.dropdown.menu.tablet-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}}@media print,screen and (min-width:64em){.dropdown.menu.large-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.large-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.large-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.large-vertical>li.opens-left>.is-dropdown-submenu{right:100%;left:auto}.dropdown.menu.large-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}}.dropdown.menu.align-right .is-dropdown-submenu.first-sub{top:100%;right:0;left:auto}.is-dropdown-menu.vertical{width:100px;width:6.25rem}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a:after{position:absolute;top:50%;right:5px;right:.3125rem;margin-top:-6px;margin-top:-.375rem}.is-dropdown-submenu-parent.opens-inner>.is-dropdown-submenu{top:100%;left:auto}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu{right:100%;left:auto}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu{right:auto;left:100%}.is-dropdown-submenu{position:absolute;top:0;left:100%;z-index:1;display:none;min-width:200px;min-width:12.5rem;border:none;background:#eaf6fb}.is-dropdown-submenu>li{width:100%}.is-dropdown-submenu.js-dropdown-active{display:block}.flex-video,.responsive-embed{position:relative;height:0;margin-bottom:1rem;padding-bottom:75%;overflow:hidden}.flex-video embed,.flex-video iframe,.flex-video object,.flex-video video,.responsive-embed embed,.responsive-embed iframe,.responsive-embed object,.responsive-embed video{position:absolute;top:0;left:0;width:100%;height:100%}.flex-video.widescreen,.responsive-embed.widescreen{padding-bottom:56.25%}.pagination{margin-left:0;margin-bottom:1rem}.pagination:after,.pagination:before{display:table;content:" "}.pagination:after{clear:both}.pagination li{margin-right:.0625rem;border-radius:0;font-size:.875rem;display:none}.pagination li:first-child,.pagination li:last-child{display:inline-block}@media print,screen and (min-width:40em){.pagination li{display:inline-block}}.pagination a,.pagination button{display:block;padding:.1875rem .625rem;border-radius:0;color:#0a0a0a}.pagination a:hover,.pagination button:hover{background:#e6e6e6}.pagination .current{padding:.1875rem .625rem;background:#197da4;color:#fefefe;cursor:default}.pagination .disabled{padding:.1875rem .625rem;color:#979797;cursor:not-allowed}.pagination .disabled:hover{background:transparent}.pagination .ellipsis:after{padding:.1875rem .625rem;content:"\2026";color:#0a0a0a}.pagination-previous.disabled:before,.pagination-previous a:before{display:inline-block;margin-right:.5rem;content:"\00ab"}.pagination-next.disabled:after,.pagination-next a:after{display:inline-block;margin-left:.5rem;content:"\00bb"}.tabs{margin:0;border:1px solid #e6e6e6;border:.0625rem solid #e6e6e6;background:#fefefe;list-style-type:none}.tabs:after,.tabs:before{display:table;content:" "}.tabs:after{clear:both}.tabs.vertical>li{display:block;float:none;width:auto}.tabs.simple>li>a{padding:0}.tabs.simple>li>a:hover{background:transparent}.tabs.primary{background:#197da4}.tabs.primary>li>a{color:#fefefe}.tabs.primary>li>a:focus,.tabs.primary>li>a:hover{background:#1b88b2}.tabs-title{float:left}.tabs-title>a{display:block;padding:1.25rem 1.5rem;font-size:.75rem;line-height:1;color:#197da4}.tabs-title>a:hover{background:#fefefe;color:#166c8d}.tabs-title>a:focus,.tabs-title>a[aria-selected=true]{background:#e6e6e6;color:#197da4}.tabs-content{border:1px solid #e6e6e6;border:.0625rem solid #e6e6e6;border-top:0;background:#fefefe;color:#333;transition:all .5s ease}.tabs-content.vertical{border:1px solid #e6e6e6;border:.0625rem solid #e6e6e6;border-left:0}.tabs-panel{display:none;padding:1rem}.tabs-panel[aria-hidden=false]{display:block}.thumbnail{display:inline-block;max-width:100%;margin-bottom:1rem;border:4px solid #fefefe;border:.25rem solid #fefefe;border-radius:0;box-shadow:0 0 0 1px hsla(0,0%,4%,.2);box-shadow:0 0 0 .0625rem hsla(0,0%,4%,.2);line-height:0}a.thumbnail{transition:box-shadow .2s ease-out}a.thumbnail:focus,a.thumbnail:hover{box-shadow:0 0 6px 1px rgba(25,125,164,.5);box-shadow:0 0 .375rem .0625rem rgba(25,125,164,.5)}a.thumbnail image{box-shadow:none}.alignnone{margin:5px 20px 20px 0;margin:.3125rem 1.25rem 1.25rem 0}.aligncenter,div.aligncenter{display:block;margin:5px auto;margin:.3125rem auto}.alignright{float:right;margin:5px 0 20px 20px;margin:.3125rem 0 1.25rem 1.25rem}.alignleft{float:left;margin:5px 20px 20px 0;margin:.3125rem 1.25rem 1.25rem 0}a img.alignright{float:right;margin:5px 0 20px 20px;margin:.3125rem 0 1.25rem 1.25rem}a img.alignleft,a img.alignnone{margin:5px 20px 20px 0;margin:.3125rem 1.25rem 1.25rem 0}a img.alignleft{float:left}a img.aligncenter{display:block;margin-left:auto;margin-right:auto}.wp-caption{background:#fff;border:1px solid #f0f0f0;border:.0625rem solid #f0f0f0;max-width:96%;padding:5px 3px 10px;padding:.3125rem .1875rem .625rem;text-align:center}.wp-caption.alignleft,.wp-caption.alignnone{margin:5px 20px 20px 0;margin:.3125rem 1.25rem 1.25rem 0}.wp-caption.alignright{margin:5px 0 20px 20px;margin:.3125rem 0 1.25rem 1.25rem}.wp-caption img{border:0 none;height:auto;margin:0 0 5px;margin:0 0 .3125rem;max-width:98.5%;padding:0;width:auto}.wp-caption p.wp-caption-text{font-size:11px;font-size:.6875rem;line-height:17px;line-height:1.0625rem;margin:0;padding:0 4px 5px;padding:0 .25rem .3125rem}.screen-reader-text{clip:rect(1px,1px,1px,1px);clip:rect(.0625rem,.0625rem,.0625rem,.0625rem);position:absolute!important;height:1px;height:.0625rem;width:1px;width:.0625rem;overflow:hidden}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;border-radius:.1875rem;box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 .125rem .125rem rgba(0,0,0,.6);clip:auto!important;color:#21759b;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;left:5px;left:.3125rem;line-height:normal;padding:15px 23px 14px;padding:.9375rem 1.4375rem .875rem;text-decoration:none;top:5px;top:.3125rem;width:auto;z-index:100000}

/*! Lity - v2.2.0 - 2016-10-08
* http://sorgalla.com/lity/
* Copyright (c) 2015-2016 Jan Sorgalla; Licensed MIT */.lity{z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;white-space:nowrap;background:#0b0b0b;background:rgba(0,0,0,.9);outline:none!important;opacity:0;transition:opacity .3s ease}.lity.lity-opened{opacity:1}.lity.lity-closed{opacity:0}.lity *{box-sizing:border-box}.lity-wrap{z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;text-align:center;outline:none!important}.lity-wrap:before{content:"";display:inline-block;height:100%;vertical-align:middle;margin-right:-.25em}.lity-loader{z-index:9991;color:#fff;position:absolute;top:50%;margin-top:-.8em;width:100%;text-align:center;font-size:14px;font-size:.875rem;font-family:Arial,Helvetica,sans-serif;opacity:0;transition:opacity .3s ease}.lity-loading .lity-loader{opacity:1}.lity-container{z-index:9992;position:relative;text-align:left;vertical-align:middle;display:inline-block;white-space:normal;max-width:100%;max-height:100%;outline:none!important}.lity-content{z-index:9993;width:100%;-ms-transform:scale(1);transform:scale(1);transition:transform .3s ease}.lity-closed .lity-content,.lity-loading .lity-content{-ms-transform:scale(.8);transform:scale(.8)}.lity-content:after{content:"";position:absolute;left:0;top:0;bottom:0;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6);box-shadow:0 0 .5rem rgba(0,0,0,.6)}.lity-close{z-index:9994;width:35px;width:2.1875rem;height:35px;height:2.1875rem;position:fixed;right:0;top:0;-webkit-appearance:none;cursor:pointer;text-decoration:none;text-align:center;padding:0;color:#fff;font-style:normal;font-size:35px;font-size:2.1875rem;font-family:Arial,Baskerville,monospace;line-height:35px;line-height:2.1875rem;text-shadow:0 1px 2px rgba(0,0,0,.6);text-shadow:0 .0625rem .125rem rgba(0,0,0,.6);border:0;background:none;outline:none;box-shadow:none}.lity-close::-moz-focus-inner{border:0;padding:0}.lity-close:active,.lity-close:focus,.lity-close:hover,.lity-close:visited{text-decoration:none;text-align:center;padding:0;color:#fff;font-style:normal;font-size:35px;font-size:2.1875rem;font-family:Arial,Baskerville,monospace;line-height:35px;line-height:2.1875rem;text-shadow:0 1px 2px rgba(0,0,0,.6);text-shadow:0 .0625rem .125rem rgba(0,0,0,.6);border:0;background:none;outline:none;box-shadow:none}.lity-close:active{top:1px;top:.0625rem}.lity-image img{max-width:100%;display:block;line-height:0;border:0}.lity-iframe .lity-container{width:100%;max-width:964px;max-width:60.25rem}.lity-iframe-container{width:100%;height:0;padding-top:56.25%;overflow:auto;pointer-events:auto;transform:translateZ(0);-webkit-overflow-scrolling:touch}.lity-iframe-container iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);box-shadow:0 0 .5rem rgba(0,0,0,.6);background:#000}.lity-hide{display:none}

/*!
Chosen, a Select Box Enhancer for jQuery and Prototype
by Patrick Filler for Harvest, http://getharvest.com

Version 1.6.2
Full source at https://github.com/harvesthq/chosen
Copyright (c) 2011-2016 Harvest http://getharvest.com

MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
This file is generated by `grunt build`, do not edit it by hand.
*/.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;font-size:.8125rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chosen-container *{box-sizing:border-box}.chosen-container .chosen-drop{position:absolute;top:100%;left:-9999px;left:-624.9375rem;z-index:1010;width:100%;border:1px solid #aaa;border:.0625rem solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15);box-shadow:0 .25rem .3125rem rgba(0,0,0,.15)}.chosen-container.chosen-with-drop .chosen-drop{left:0}.chosen-container a{cursor:pointer}.chosen-container .chosen-single .group-name,.chosen-container .search-choice .group-name{margin-right:4px;margin-right:.25rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:400;color:#999}.chosen-container .chosen-single .group-name:after,.chosen-container .search-choice .group-name:after{content:":";padding-left:2px;padding-left:.125rem;vertical-align:top}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;padding:0 0 0 .5rem;height:25px;height:1.5625rem;border:1px solid #aaa;border:.0625rem solid #aaa;border-radius:5px;border-radius:.3125rem;background-color:#fff;background:linear-gradient(#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4);background-clip:padding-box;box-shadow:inset 0 0 3px #fff,0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 0 .1875rem #fff,0 .0625rem .0625rem rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px;line-height:1.5rem}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;margin-right:1.625rem;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px;margin-right:2.375rem}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;top:.375rem;right:26px;right:1.625rem;display:block;width:12px;width:.75rem;height:12px;height:.75rem;background:url(../img/chosen-sprite.png) -42px 1px no-repeat;background:url(../img/chosen-sprite.png) -2.625rem .0625rem no-repeat;font-size:1px;font-size:.0625rem}.chosen-container-single.chosen-disabled .chosen-single abbr:hover,.chosen-container-single .chosen-single abbr:hover{background-position:-42px -10px;background-position:-2.625rem -.625rem}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;width:1.125rem;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%;background:url(../img/chosen-sprite.png) no-repeat 0 2px;background:url(../img/chosen-sprite.png) no-repeat 0 .125rem}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;padding:.1875rem .25rem;white-space:nowrap}.chosen-container-single .chosen-search input[type=text]{margin:1px 0;margin:.0625rem 0;padding:4px 20px 4px 5px;padding:.25rem 1.25rem .25rem .3125rem;width:100%;height:auto;outline:0;border:1px solid #aaa;border:.0625rem solid #aaa;background:#fff url(../img/chosen-sprite.png) no-repeat 100% -20px;background:#fff url(../img/chosen-sprite.png) no-repeat 100% -1.25rem;background:url(../img/chosen-sprite.png) no-repeat 100% -20px;background:url(../img/chosen-sprite.png) no-repeat 100% -1.25rem;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;margin-top:-.0625rem;border-radius:0 0 4px 4px;border-radius:0 0 .25rem .25rem;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;left:-9999px;left:-624.9375rem}.chosen-container .chosen-results{color:#444;position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;margin:0 .25rem .25rem 0;padding:0 0 0 4px;padding:0 0 0 .25rem;max-height:240px;max-height:15rem;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;padding:.3125rem .375rem;list-style:none;line-height:15px;line-height:.9375rem;word-wrap:break-word;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{color:#777;display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px;padding-left:.9375rem}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;margin:0;padding:8px 5px;padding:.5rem .3125rem;width:100%;height:auto;border:1px solid #aaa;border:.0625rem solid #aaa;background-color:#fff;background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type=text]{margin:0;padding:0;height:21px;height:1.3125rem;outline:0;border:0!important;background:transparent!important;box-shadow:none;color:#999;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 5px 3px 0;margin:.1875rem .3125rem .1875rem 0;padding:3px 20px 3px 5px;padding:.1875rem 1.25rem .1875rem .3125rem;border:1px solid #aaa;border:.0625rem solid #aaa;max-width:100%;border-radius:3px;border-radius:.1875rem;background-color:#eee;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee);background-size:100% 19px;background-size:100% 1.1875rem;background-repeat:repeat-x;background-clip:padding-box;box-shadow:inset 0 0 2px #fff,0 1px 0 rgba(0,0,0,.05);box-shadow:inset 0 0 .125rem #fff,0 .0625rem 0 rgba(0,0,0,.05);color:#333;line-height:13px;line-height:.8125rem;cursor:default}.chosen-container-multi .chosen-choices li.search-choice span{word-wrap:break-word}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:4px;top:.25rem;right:3px;right:.1875rem;display:block;width:12px;width:.75rem;height:12px;height:.75rem;background:url(../img/chosen-sprite.png) -42px 1px no-repeat;background:url(../img/chosen-sprite.png) -2.625rem .0625rem no-repeat;font-size:1px;font-size:.0625rem}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{background-position:-42px -10px;background-position:-2.625rem -.625rem}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;padding-right:.3125rem;border:1px solid #ccc;border:.0625rem solid #ccc;background-color:#e4e4e4;background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close{background-position:-42px -10px;background-position:-2.625rem -.625rem}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;border:.0625rem solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3);box-shadow:0 0 .3125rem rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;border:.0625rem solid #aaa;border-bottom-right-radius:0;border-bottom-left-radius:0;background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 .0625rem 0 #fff}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:none;background:transparent}.chosen-container-active.chosen-with-drop .chosen-single div b{background-position:-18px 2px;background-position:-1.125rem .125rem}.chosen-container-active .chosen-choices{border:1px solid #5897fb;border:.0625rem solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3);box-shadow:0 0 .3125rem rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type=text]{color:#222!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-choices .search-choice .search-choice-close,.chosen-disabled .chosen-single{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0;padding:0 .5rem 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;margin-left:1.625rem;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px;margin-left:2.375rem}.chosen-rtl .chosen-single div{right:auto;left:3px;left:.1875rem}.chosen-rtl .chosen-single abbr{right:auto;left:26px;left:1.625rem}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type=text]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;margin:.1875rem .3125rem .1875rem 0;padding:3px 5px 3px 19px;padding:.1875rem .3125rem .1875rem 1.1875rem}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px;left:.25rem}.chosen-rtl.chosen-container-single-nosearch .chosen-search,.chosen-rtl .chosen-drop{left:9999px;left:624.9375rem}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;margin:0 0 .25rem .25rem;padding:0 4px 0 0;padding:0 .25rem 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-right:.9375rem;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:none}.chosen-rtl .chosen-search input[type=text]{padding:4px 5px 4px 20px;padding:.25rem .3125rem .25rem 1.25rem;background:#fff url(../img/chosen-sprite.png) no-repeat -30px -20px;background:#fff url(../img/chosen-sprite.png) no-repeat -1.875rem -1.25rem;background:url(../img/chosen-sprite.png) no-repeat -30px -20px;background:url(../img/chosen-sprite.png) no-repeat -1.875rem -1.25rem;direction:rtl}.chosen-rtl.chosen-container-single .chosen-single div b{background-position:6px 2px;background-position:.375rem .125rem}.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b{background-position:-12px 2px;background-position:-.75rem .125rem}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:1.5dppx),only screen and (min-resolution:144dpi){.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container-single .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span,.chosen-rtl .chosen-search input[type=text]{background-image:url(../img/chosen-sprite@2x.png)!important;background-size:52px 37px!important;background-size:3.25rem 2.3125rem!important;background-repeat:no-repeat!important}}.owl-carousel{display:none;width:100%;-webkit-tap-highlight-color:transparent;position:relative;z-index:0}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translateZ(0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0)}.owl-carousel .owl-item{position:relative;min-height:1px;min-height:.0625rem;float:left;-webkit-backface-visibility:hidden;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.owl-carousel .owl-dot{background-color:transparent;border:1px solid #fefefe;border:.0625rem solid #fefefe}.owl-carousel .owl-dot.active,.owl-carousel .owl-dot:hover{background-color:#fefefe}@media print,screen and (min-width:48em){.owl-carousel .owl-dot{width:22px;width:1.375rem;height:22px;height:1.375rem}}.owl-carousel .owl-dots{display:none;position:absolute;left:0;right:0;bottom:0}@media print,screen and (min-width:48em){.owl-carousel .owl-dots{bottom:22px;bottom:1.375rem;display:block}}.owl-carousel .owl-nav{position:absolute;bottom:35%;top:auto;width:100%}.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{position:absolute;height:49px;height:3.0625rem;width:49px;width:3.0625rem;vertical-align:middle;border-radius:50%;left:0;text-align:center;background-image:url(../img/chevron-right.svg);background-repeat:no-repeat;background-size:20px 20px;background-size:1.25rem 1.25rem;background-position:50%;background-color:transparent;text-indent:-9999px;text-indent:-624.9375rem;overflow:hidden;-ms-transform:rotate(180deg);transform:rotate(180deg);background-color:#fff}@media print,screen and (min-width:48em){.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{left:12px;left:.75rem;background-color:#fff}}.owl-carousel .owl-nav .owl-next{left:auto;right:0;-ms-transform:none;transform:none}@media print,screen and (min-width:48em){.owl-carousel .owl-nav .owl-next{right:12px;right:.75rem}}@media print,screen and (min-width:48em){.owl-carousel .owl-nav{top:calc(50% - 24px);top:calc(50% - 1.5rem);bottom:auto}}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;cursor:hand;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-loaded{display:block}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:-webkit-grab;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.no-js .owl-carousel{display:block}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:a}@keyframes a{0%{opacity:1}to{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;height:5rem;width:80px;width:5rem;left:50%;top:50%;margin-left:-40px;margin-left:-2.5rem;margin-top:-40px;margin-top:-2.5rem;background:url(../img/owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3);transform:scale(1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:50%;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}.owl-carousel .owl-video-wrapper{height:450px;height:28.125rem}@media screen and (max-width:47.9375em){.owl-carousel .owl-video-wrapper{height:250px;height:15.625rem}}.gform_validation_container,.gform_wrapper .gform_validation_container,body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container,body .gform_wrapper li.gform_validation_container,body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container{display:none!important;position:absolute!important;left:-9000px;left:-562.5rem}.gform_wrapper .clear-multi{display:-ms-flexbox;display:flex}.gform_wrapper .gfield_date_day,.gform_wrapper .gfield_date_year{display:inline-block}.gform_wrapper .gfield_date_day,.gform_wrapper .gfield_date_month,.gform_wrapper .gfield_date_year{width:33.333%;-ms-flex-direction:row;flex-direction:row}@media only screen and (min-width:321px){.gform_wrapper .gfield_date_day,.gform_wrapper .gfield_date_month{max-width:4rem}.gform_wrapper .gfield_date_year,.gform_wrapper .gfield_time_ampm{max-width:4.5rem}}.gform_wrapper .gfield_date_dropdown_day,.gform_wrapper .gfield_date_dropdown_month,.gform_wrapper .gfield_date_dropdown_year{vertical-align:top;-ms-flex-direction:row;flex-direction:row;margin-right:.5rem}.gform_wrapper .gfield_date_day,.gform_wrapper .gfield_date_month{width:4rem;margin-right:.5rem}.gform_wrapper .gfield_date_day input[type=number],.gform_wrapper .gfield_date_month input[type=number]{width:calc(3rem + 8px)!important;width:3.5rem!important}.gform_wrapper .gfield_date_year input[type=number]{width:calc(4rem + 8px)!important;width:4.5rem!important}.gform_wrapper .gfield_date_year{width:5rem}.gform_wrapper .gfield_date_day input,.gform_wrapper .gfield_date_month input{width:calc(3rem + 8px);width:3.5rem}.gform_wrapper .gfield_date_year input{width:4rem}.gform_wrapper .field_sublabel_above div[class*=gfield_date_].ginput_container label,.gform_wrapper .field_sublabel_below div[class*=gfield_date_].ginput_container label{width:3rem;text-align:center}.gform_wrapper .field_sublabel_above div.gfield_date_year.ginput_container label,.gform_wrapper .field_sublabel_below div.gfield_date_year.ginput_container label{width:4rem}.gform_wrapper input.datepicker_with_icon.large,.gform_wrapper input.datepicker_with_icon.medium,.gform_wrapper input.datepicker_with_icon.small{width:calc(100% - 24px);width:calc(100% - 1.5rem);display:inline-block}body .gform_wrapper img.ui-datepicker-trigger{width:17px!important;width:1.0625rem!important;height:16px!important;height:1rem!important;display:inline-block;margin-left:5px;margin-left:.3125rem}.gform_wrapper .gfield_time_ampm,.gform_wrapper .gfield_time_hour,.gform_wrapper .gfield_time_minute{width:33.333%;-ms-flex-direction:row;flex-direction:row}@media only screen and (min-width:321px){.gform_wrapper .gfield_time_hour,.gform_wrapper .gfield_time_minute{max-width:4rem}.gform_wrapper .gfield_time_ampm,.gform_wrapper .gfield_time_hour{max-width:4.5rem}}.gform_wrapper ul.gform_fields:not(.top_label) .ginput_container_time span{float:left}.gform_wrapper .gfield_time_hour i{font-style:normal!important;font-family:sans-serif!important;width:10px;width:.625rem;text-align:center;float:right;margin-top:4%}.gform_wrapper .gfield_time_minute{margin-right:.5rem}.gform_wrapper .gfield_time_hour{margin-right:.25rem}.gform_wrapper .gfield_time_ampm{vertical-align:top;display:inline-block}.gform_wrapper .gfield_time_ampm select{min-width:calc(2rem + 25px);min-width:3.5625rem;width:calc(3rem + 25px);width:4.5625rem}.gform_wrapper .gfield_time_hour input,.gform_wrapper .gfield_time_minute input{width:calc(3rem + 8px);width:3.5rem}.gform_wrapper .gfield_time_hour input[type=number],.gform_wrapper .gfield_time_minute input[type=number]{width:calc(3rem + 8px)!important;width:3.5rem!important}.gform_wrapper .ginput_complex .ginput_full,.gform_wrapper .ginput_complex .ginput_left,.gform_wrapper .ginput_complex .ginput_right{display:inline-block;margin-bottom:16px;margin-bottom:1rem;width:100%}.gform_wrapper .ginput_complex .ginput_left,.gform_wrapper .ginput_complex .ginput_right{display:inline-block;vertical-align:top;margin:0 -4px 0 0;margin:0 -.25rem 0 0}@media print,screen and (min-width:40em){.gform_wrapper .ginput_complex .ginput_left,.gform_wrapper .ginput_complex .ginput_right{width:50%}}.gform_wrapper .gfield_error .ginput_complex .ginput_left,.gform_wrapper .gfield_error .ginput_complex .ginput_right{width:50%}.gf_clear_complex{clear:both}.gform_wrapper .ginput_complex .ginput_left,.gform_wrapper .ginput_complex .ginput_right{float:left}.gform_wrapper .ginput_complex .ginput_left{margin:0;padding-right:15px;padding-right:.9375rem}.gform_wrapper .ginput_complex .ginput_right{margin-right:0;padding-left:15px;padding-left:.9375rem}ul.gform_fields:not(.top_label) div.ginput_complex.ginput_container.gf_name_has_1,ul.gform_fields:not(.top_label) div.ginput_complex.ginput_container.gf_name_has_2,ul.gform_fields:not(.top_label) div.ginput_complex.ginput_container.gf_name_has_3{width:calc(70% + 15px);width:calc(70% + .9375rem);margin-left:29%}ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_1,ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_2,ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_3{width:calc(70% + 24px);width:calc(70% + 1.5rem)}ul.gform_fields:not(.top_label) div.ginput_complex.ginput_container.gf_name_has_4{width:calc(70% + 13px);width:calc(70% + .8125rem);margin-left:29%}ul.gform_fields:not(.top_label) div.ginput_complex.ginput_container.gf_name_has_5{width:calc(70% + 14px);width:calc(70% + .875rem);margin-left:29%}div.ginput_container_name span{display:inline-block;width:100%;padding:0;margin:0;box-sizing:border-box;float:left;padding-right:0}@media print,screen and (min-width:40em){div.ginput_container_name span{width:50%;padding-right:15px;padding-right:.9375rem}}div.ginput_container_name span.name_last{padding-right:0}@media print,screen and (min-width:40em){div.ginput_container_name span.name_last{padding-left:15px;padding-left:.9375rem}}div.ginput_complex.ginput_container.gf_name_has_1 span{width:100%}div.ginput_complex.ginput_container.gf_name_has_3 span{width:33.3%}div.ginput_complex.ginput_container.gf_name_has_4 span{width:25%}div.ginput_complex.ginput_container.gf_name_has_5 span{width:19.95%}.gform_wrapper ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_1 span{width:99.75%!important}.gform_wrapper ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_2 span{width:49.75%!important}.gform_wrapper ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_3 span{width:33%!important}.gform_wrapper ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_4 span{width:24.75%!important}.gform_wrapper ul.gform_fields:not(.top_label) li.gfield.gfield_error div.ginput_complex.ginput_container.gf_name_has_5 span{width:19.75%!important}html div.ginput_complex.ginput_container.gf_name_has_2 span:first-child,html div.ginput_complex.ginput_container.gf_name_has_3 span:first-child,html div.ginput_complex.ginput_container.gf_name_has_4 span:first-child,html div.ginput_complex.ginput_container.gf_name_has_5 span:first-child{margin-left:0!important}.gform_wrapper .gform_fileupload_multifile .gform_drop_area{padding:24px;padding:1.5rem;border:1px dashed #ccc;border:.0625rem dashed #ccc;text-align:center;color:#aaa;margin-bottom:16px;margin-bottom:1rem;background:rgba(0,0,0,.02);border-radius:4px;border-radius:.25rem}.gform_wrapper span.gform_drop_instructions{display:block;margin-bottom:8px;margin-bottom:.5rem}.gform_delete{vertical-align:middle;cursor:pointer}.ui-datepicker{width:216px;width:13.5rem;height:auto;margin:5px auto 0;margin:.3125rem auto 0;font:9pt Arial,sans-serif;box-shadow:0 0 10px 0 rgba(0,0,0,.5);box-shadow:0 0 .625rem 0 rgba(0,0,0,.5)}.ui-datepicker a{text-decoration:none}.ui-datepicker table{width:100%;border-collapse:collapse}.ui-datepicker-header{background-color:#666;color:#e0e0e0;font-weight:700;box-shadow:inset 0 1px 1px 0 hsla(0,0%,98%,.2);box-shadow:inset 0 .0625rem .0625rem 0 hsla(0,0%,98%,.2);text-shadow:1px -1px 0 #000;text-shadow:.0625rem -.0625rem 0 #000;filter:dropshadow(color=#000,offx=1,offy=-1);line-height:30px;line-height:1.875rem;min-height:30px!important;min-height:1.875rem!important;border-width:1px 0 0;border-width:.0625rem 0 0;border-style:solid;border-color:#666}.ui-datepicker-title{text-align:center}.ui-datepicker-title select{margin-top:2.5%;margin-bottom:2.5%;width:auto}.ui-datepicker-next,.ui-datepicker-prev{display:inline-block;width:30px;width:1.875rem;height:30px;height:1.875rem;text-align:center;cursor:pointer;background-image:url(../img/arrow.png);background-repeat:no-repeat;line-height:600%;overflow:hidden;margin-top:10px;margin-top:.625rem}.ui-datepicker-prev{float:left;background-position:center -30px;background-position:center -1.875rem}.ui-datepicker-next{float:right;background-position:center 0}.ui-datepicker thead{background:#f7f7f7;background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y3ZjdmNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmMWYxZjEiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);background:linear-gradient(180deg,#f7f7f7 0,#f1f1f1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#f7f7f7",endColorstr="#f1f1f1",GradientType=0);border-bottom:1px solid #bbb;border-bottom:.0625rem solid #bbb}.ui-datepicker th{text-transform:uppercase;text-align:center;font-size:6pt;padding:5px 0;padding:.3125rem 0;color:#666;text-shadow:1px 0 0 #fff;text-shadow:.0625rem 0 0 #fff;filter:dropshadow(color=#fff,offx=1,offy=0)}.ui-datepicker tbody td{padding:0;border-top:1px solid #bbb;border-top:.0625rem solid #bbb;border-right:1px solid #bbb;border-right:.0625rem solid #bbb}.ui-datepicker tbody td:last-child{border-right:0}.ui-datepicker tbody tr{border-bottom:1px solid #bbb;border-bottom:.0625rem solid #bbb}.ui-datepicker tbody tr:last-child{border-bottom:0}.ui-datepicker td a,.ui-datepicker td span{display:inline-block;font-weight:700;text-align:center;width:30px;width:1.875rem;height:30px;height:1.875rem;line-height:30px;line-height:1.875rem;color:#666;text-shadow:1px 1px 0 #fff;text-shadow:.0625rem .0625rem 0 #fff;filter:dropshadow(color=#fff,offx=1,offy=1)}.ui-datepicker-calendar .ui-state-default{background:#ededed;background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VkZWRlZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNkZWRlZGUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);background:linear-gradient(180deg,#ededed 0,#dedede);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ededed",endColorstr="#dedede",GradientType=0);box-shadow:inset 1px 1px 0 0 hsla(0,0%,98%,.5);box-shadow:inset .0625rem .0625rem 0 0 hsla(0,0%,98%,.5)}.ui-datepicker-calendar .ui-state-hover{background:#f7f7f7}.ui-datepicker-calendar .ui-state-active{background:#fff2aa;border:1px solid #c19163;border:.0625rem solid #c19163;color:#666;box-shadow:inset 0 0 10px 0 rgba(0,0,0,.1);box-shadow:inset 0 0 .625rem 0 rgba(0,0,0,.1);text-shadow:0 1px 0 #fff;text-shadow:0 .0625rem 0 #fff;filter:dropshadow(color=#FFF,offx=0,offy=1);position:relative;margin:-1px;margin:-.0625rem}.ui-datepicker-unselectable .ui-state-default{background:#f4f4f4;color:#b4b3b3}.ui-datepicker-calendar td:first-child .ui-state-active{width:29px;width:1.8125rem;margin-left:0}.ui-datepicker-calendar td:last-child .ui-state-active{width:29px;width:1.8125rem;margin-right:0}.ui-datepicker-calendar tr:last-child .ui-state-active{height:29px;height:1.8125rem;margin-bottom:0}td.ui-datepicker-unselectable.ui-state-disabled{background-color:#d7d7d7}table.ui-datepicker-calendar{margin:0!important}body div#ui-datepicker-div[style]{z-index:9999!important}.gfield_checkbox,.gfield_radio,.inline-list,.no-bullet-list,.widget ul{padding:0;margin:0;list-style:none}.inline-list li{display:inline-block}.single-line-text,.widget ul a{display:block}.wysiwyg-content .block-grid__title,.wysiwyg-content blockquote,.wysiwyg-content h1,.wysiwyg-content h2,.wysiwyg-content h3,.wysiwyg-content h4,.wysiwyg-content h5,.wysiwyg-content h6,.wysiwyg-content li,.wysiwyg-content p,.wysiwyg-content span{color:#474747}body,body h1{font-weight:300}body h1{color:#135a76;letter-spacing:1.14px;letter-spacing:.07125rem;line-height:57px;line-height:3.5625rem}body h2{color:#474747;padding-top:20px;padding-top:1.25rem;line-height:27px;line-height:1.6875rem;font-size:20px;font-size:1.25rem;letter-spacing:.95px;letter-spacing:.05938rem;font-weight:300;padding-bottom:20px;padding-bottom:1.25rem}@media print,screen and (min-width:48em){body h2{padding-top:20px;padding-top:1.25rem;line-height:33px;line-height:2.0625rem;font-size:24px;font-size:1.5rem;letter-spacing:1.14px;letter-spacing:.07125rem}}body h3{letter-spacing:1.14px;letter-spacing:.07125rem;font-weight:300;padding-bottom:10px;padding-bottom:.625rem;padding-top:10px;padding-top:.625rem}body p{letter-spacing:.68px;letter-spacing:.0425rem;line-height:22px;line-height:1.375rem}.button--icon{padding-right:40px;padding-right:2.5rem}.button--arrow{position:relative}.button--arrow:after{content:"";width:15px;width:.9375rem;height:15px;height:.9375rem;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20width%3D%2220px%22%20height%3D%2220px%22%20x%3D%220%22%20y%3D%220%22%20xml%3Aspace%3D%22preserve%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpath%20fill%3D%22%23fefefe%22%20d%3D%22M13.25%2010l-7.141-7.42c-0.268-0.27-0.268-0.707%200-0.979%200.268-0.27%200.701-0.27%200.969%200l7.83%207.908c0.268%200.271%200.268%200.709%200%200.979l-7.83%207.908c-0.268%200.271-0.701%200.27-0.969%200s-0.268-0.707%200-0.979l7.141-7.417z%22%3E%3C%2Fpath%3E%0A%3C%2Fsvg%3E");background-size:15px 15px;background-size:.9375rem .9375rem;position:absolute;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);right:13px;right:.8125rem;transition:right .2s ease-in}.button--arrow:hover:after{right:8px;right:.5rem}.button.secondary,.button.secondary:active,.button.secondary:focus,.button.secondary:hover,.button.tertiary,.button.tertiary:active,.button.tertiary:focus,.button.tertiary:hover{color:#fff}.button{font-weight:700;font-size:16px;font-size:1rem;line-height:22px;line-height:1.375rem;letter-spacing:.04px;letter-spacing:.0025rem;padding:10px 55px;padding:.625rem 3.4375rem}.button-inline{display:inline-block;margin-right:18px;margin-right:1.125rem}.button-inline a{padding:10px 25px;padding:.625rem 1.5625rem}.button-inline:last-child{margin-right:0}.svg-icon{width:28px;width:1.75rem;height:28px;height:1.75rem;fill:currentColor}header{background-color:#fefefe;margin-bottom:2px;margin-bottom:.125rem}.home header{margin-bottom:0}.logo{padding:7px 0 0;padding:.4375rem 0 0;display:block;margin-left:9px;margin-left:.5625rem;width:72px;width:4.5rem;overflow:hidden}.logo svg{width:310px;width:19.375rem}@media print,screen and (min-width:48em){.logo svg{width:auto;max-width:100%}}@media print,screen and (min-width:48em){.logo{padding:28px 0 14px;padding:1.75rem 0 .875rem;width:auto}}@media print,screen and (min-width:64em){.logo{margin-left:0}}.logo__text{display:none}@media print,screen and (min-width:48em){.logo__text{display:block}}@media print,screen and (min-width:64em){.row.large-uncollapse>.column,.row.large-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}footer{padding:23px 30px;padding:1.4375rem 1.875rem;background-color:#373839}footer,footer .block-grid__title,footer blockquote,footer h1,footer h2,footer h3,footer h4,footer h5,footer h6,footer li,footer p,footer span{color:#fefefe}@media print,screen and (min-width:48em){footer{padding:40px 0;padding:2.5rem 0}}.footer__row{margin-bottom:35px;margin-bottom:2.1875rem}.footer__row:last-child{margin-bottom:0}.footer__cta-link{margin-bottom:14px;margin-bottom:.875rem}.button--footer{width:100%;margin-bottom:9px;margin-bottom:.5625rem;padding:.625rem 1em}@media screen and (min-width:48em) and (max-width:63.9375em){.button--footer{width:calc(50% - 10px);width:calc(50% - .625rem);float:left;margin-bottom:30px;margin-bottom:1.875rem}.button--footer:first-child{margin-right:20px;margin-right:1.25rem}}@media screen and (min-width:75em){.button--footer{margin-left:20px;margin-left:1.25rem;margin-top:24px;margin-top:1.5rem;margin-bottom:0;width:auto}}.footer__block{margin-bottom:17px;margin-bottom:1.0625rem}.footer__block:first-child{margin-top:17px;margin-top:1.0625rem}@media print,screen and (min-width:48em){.footer__block:first-child{margin-top:0}}.footer__block p{color:#fff}@media screen and (min-width:75em){.footer__block--address{margin-left:40px;margin-left:2.5rem}}.footer__label{display:inline-block;padding-right:30px;padding-right:1.875rem}.footer__table{display:table}.footer__table a{color:#fff;text-decoration:underline}.footer__table-row{display:table-row}.footer__table-cell{display:table-cell}.footer__table-cell:last-child{padding-left:25px;padding-left:1.5625rem}.nehc-flags img{max-width:30%;margin-bottom:20px;margin-bottom:1.25rem}@media print,screen and (min-width:48em){.nehc-flags img{max-width:75%}}.acknowledgement{font-size:12px;font-size:.75rem}@media print,screen and (min-width:48em){.acknowledgement{font-size:16px;font-size:1rem}}.acknowledgement__row{background-color:#fefefe;border-top:1px solid #4a4a4a;border-top:.0625rem solid #4a4a4a;padding:20px 30px;padding:1.25rem 1.875rem}@media print,screen and (min-width:48em){.acknowledgement__row{padding:50px 0;padding:3.125rem 0}}.no-js #main-nav-menu{display:none}.nav--social{padding:20px 0;padding:1.25rem 0}@media screen and (max-width:74.9375em){.nav--social .inline-list li{display:block}}.nav__toggle{position:absolute;top:43px;top:2.6875rem;-ms-transform:translateY(-50%);transform:translateY(-50%);right:21px;right:1.3125rem;width:30px;width:1.875rem;height:24px;height:1.5rem}@media print,screen and (min-width:48em){.nav__toggle{top:68px;top:4.25rem}}.toggle__line{display:block;width:30px;width:1.875rem;height:4px;height:.25rem;border-radius:10px;border-radius:.625rem;background-color:#373839;position:absolute;top:10px;top:.625rem;left:0;transition:transform .2s ease-in,color .2s ease-in}.toggle__line:first-child{top:0}.toggle__line:last-child{top:auto;bottom:0}.nav__toggle--active .toggle__line{display:none;background-color:#19a35a}.nav__toggle--active .toggle__line:first-child,.nav__toggle--active .toggle__line:last-child{display:block;top:11px;top:.6875rem}.nav__toggle--active .toggle__line:first-child{-ms-transform:rotate(45deg);transform:rotate(45deg)}.nav__toggle--active .toggle__line:last-child{-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.nav__menu,.nav__menu.dropdown.menu{z-index:8}@media screen and (max-width:47.9375em){.nav__menu,.nav__menu.dropdown.menu{width:100%}}.nav__menu.dropdown.menu>li>a,.nav__menu>li>a{padding:10px 20px;padding:.625rem 1.25rem}@media print,screen and (min-width:64em){.nav__menu.dropdown.menu>li>a,.nav__menu>li>a{padding:62px 20px;padding:3.875rem 1.25rem}}.nav-column{border-top:1px solid #979797;border-top:.0625rem solid #979797;padding-right:0!important}@media print,screen and (min-width:64em){.nav-column{border:none}}.menu{float:right}.menu li.is-drilldown-submenu-item{display:block}@media screen and (max-width:63.9375em){#main-nav-menu .nav-main-item.current-menu-ancestor a,#main-nav-menu .nav-main-item.current-menu-ancestor a:active,#main-nav-menu .nav-main-item.current-menu-ancestor a:focus,#main-nav-menu .nav-main-item.current-menu-ancestor a:hover,#main-nav-menu .nav-main-item.current-menu-item a,#main-nav-menu .nav-main-item.current-menu-item a:active,#main-nav-menu .nav-main-item.current-menu-item a:focus,#main-nav-menu .nav-main-item.current-menu-item a:hover,#main-nav-menu .nav-main-item.is-active a,#main-nav-menu .nav-main-item.is-active a:active,#main-nav-menu .nav-main-item.is-active a:focus,#main-nav-menu .nav-main-item.is-active a:hover,#main-nav-menu .nav-main-item:hover a,#main-nav-menu .nav-main-item:hover a:active,#main-nav-menu .nav-main-item:hover a:focus,#main-nav-menu .nav-main-item:hover a:hover{color:#fff}}.nav-main-item{background-color:#197da4}.nav-main-item a{font-size:16px;font-size:1rem;letter-spacing:.04px;letter-spacing:.0025rem;color:#fff}.nav-main-item .submenu li a{line-height:inherit;color:#000}.nav-main-item .submenu li:hover{background-color:#197da4}.nav-main-item .submenu li:hover a{color:#fff}@media print,screen and (min-width:64em){.nav-main-item .submenu{background-color:#eaf6fb}}.nav-main-item.current-menu-ancestor,.nav-main-item.current-menu-item,.nav-main-item.is-active,.nav-main-item:hover{background-color:#1c8eba}.nav-main-item.current-menu-ancestor a,.nav-main-item.current-menu-item a,.nav-main-item.is-active a,.nav-main-item:hover a{color:#fff}.nav-main-item .is-drilldown-submenu li{background-color:#197da4}.nav-main-item .is-drilldown-submenu li a{color:#fff}.nav-main-item .is-drilldown-submenu li:hover{background-color:#1c8eba}.dropdown.menu.large-horizontal>li.current-menu-ancestor.is-dropdown-submenu-parent>a:after,.dropdown.menu.large-horizontal>li.current-menu-item.is-dropdown-submenu-parent>a:after,.dropdown.menu.large-horizontal>li.is-active.is-dropdown-submenu-parent>a:after,.dropdown.menu.large-horizontal>li:hover.is-dropdown-submenu-parent>a:after{border-color:#fff transparent}.dropdown.menu.large-horizontal .is-active>a{color:#fff}.is-dropdown-submenu.js-dropdown-active{display:inline-block}.menu>li.js-drilldown-back{width:100%;display:block}@media print,screen and (min-width:48em){.header__search{position:relative}}.searchform .search__wrapper:after,.searchform .search__wrapper:before{display:table;content:" "}.searchform .search__wrapper:after{clear:both}.searchform input[type=text]{width:calc(100% - 40px);width:calc(100% - 2.5rem);float:left;margin:0}.searchform button[type=submit]{width:40px;width:2.5rem;height:40px;height:2.5rem;float:right;margin:0}.search-box--popup{width:320px;width:20rem;max-height:0;position:absolute;background-color:#197da4;border-radius:0;transition:opacity .2s ease-in,max-height .2s ease-in;overflow:hidden;opacity:0;top:calc(100% + 30px);top:calc(100% + 1.875rem)}.search-box--popup form{padding:28px;padding:1.75rem}.search-box--popup form button{background-color:#19a35a}@media screen and (max-width:47.9375em){.search-box{width:320px;width:20rem;max-height:0;position:absolute;background-color:#197da4;border-radius:0;transition:opacity .2s ease-in,max-height .2s ease-in;overflow:hidden;opacity:0;top:calc(100% + 30px);top:calc(100% + 1.875rem);top:117px;top:7.3125rem;left:0;width:100%}.search-box form{padding:28px;padding:1.75rem}.search-box form button{background-color:#19a35a}}.search-box--active{opacity:1;z-index:10;max-height:500px;max-height:31.25rem}.search__overlay{width:100%;height:100%;position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.3);z-index:9}.header__search-button{color:#197da4}@media screen and (max-width:47.9375em){.header__search-button{position:absolute;top:58.5px;top:3.65625rem;-ms-transform:translateY(-50%);transform:translateY(-50%);right:80px;right:5rem;z-index:10}}.header__search-button--close,.header__search-button--search{display:inline-block;width:30px;width:1.875rem;height:24px;height:1.5rem}.header__search-button--close .search-button__close-line{display:block;width:30px;width:1.875rem;height:2px;height:.125rem;background-color:#197da4;position:absolute;top:11px;top:.6875rem;left:0;transition:transform .2s ease-in,color .2s ease-in}.header__search-button--close .search-button__close-line:first-child{-ms-transform:rotate(45deg);transform:rotate(45deg)}.header__search-button--close .search-button__close-line:last-child{-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.header__search-button--hidden{display:none}#searchsubmit{color:#fefefe;background-color:#19a35a}#searchsubmit .svg-icon{width:16px;width:1rem;height:16px;height:1rem}.content-block{padding:28px 0;padding:1.75rem 0}@media print,screen and (min-width:48em){.content-block{padding:42px 0;padding:2.625rem 0}}.content-block.inverse-color-block{background-color:#197da4}.content-block.inverse-color-block .block-grid__title,.content-block.inverse-color-block h1,.content-block.inverse-color-block h2,.content-block.inverse-color-block h3,.content-block.inverse-color-block h4,.content-block.inverse-color-block h5,.content-block.inverse-color-block h6{color:#fefefe}.content-block.inverse-color-block h3{font-size:32px;font-size:2rem;line-height:43px;line-height:2.6875rem;letter-spacing:.87px;letter-spacing:.05438rem;font-weight:300;padding:0;margin:0}@media print,screen and (min-width:48em){.content-block.inverse-color-block h3{font-size:42px;font-size:2.625rem;line-height:57px;line-height:3.5625rem;letter-spacing:1.14px;letter-spacing:.07125rem}}.content-block.inverse-color-block p{color:#fefefe}.content-block.inverse-color-block .intro-content p{color:#4a4a4a}.content-block.inverse-color-block a{color:#fefefe;text-decoration:underline}.content-block.inverse-color-block ul li{color:#fefefe}.content-block.inverse-color-block .button-block a{text-decoration:none}.content-block .intro-content p{color:#4a4a4a}.content-block--simple{padding:7px 0;padding:.4375rem 0}.content-block--border-bottom{padding-bottom:0}.content-block--border-bottom:after{background:#135a76;height:1px;height:.0625rem;content:"";display:block;width:80%;margin:42px auto 0;margin:2.625rem auto 0}.content-block--grid h2{font-size:72px;font-size:4.5rem;letter-spacing:3.05px;letter-spacing:.19063rem;line-height:98px;line-height:6.125rem;font-weight:300}blockquote{padding-top:0;margin-top:10px;margin-top:.625rem;margin-bottom:20px;margin-bottom:1.25rem;overflow:hidden;position:relative;border-left:0;padding-left:50px;padding-left:3.125rem;font-family:Lora,serif;font-weight:400}blockquote:before{position:absolute;left:0;height:100%;top:0;border-radius:10px;border-radius:.625rem;width:25px;width:1.5625rem;content:"";background-color:#e9268b}@media print,screen and (min-width:48em){blockquote:before{width:14px;width:.875rem}}blockquote p{color:#4a4a4a;font-size:22px;font-size:1.375rem;line-height:29px;line-height:1.8125rem;margin-top:5px;margin-top:.3125rem;margin-bottom:10px;margin-bottom:.625rem}.masonry__block,.masonry__block--sizer{width:100%}@media print,screen and (min-width:40em){.masonry__block,.masonry__block--sizer{width:47%}}@media print,screen and (min-width:64em){.masonry__block,.masonry__block--sizer{width:31%}}.masonry__block{margin-bottom:21px;margin-bottom:1.3125rem;background-color:#e6e6e6}@media print,screen and (min-width:48em){.masonry__block{margin-bottom:35px;margin-bottom:2.1875rem}}.masonry__image{margin-bottom:35px;margin-bottom:2.1875rem;position:relative}.masonry__content{padding:21px;padding:1.3125rem}.full-row-list__item{margin-bottom:14px;margin-bottom:.875rem}@media print,screen and (min-width:48em){.full-row-list__item{margin-bottom:35px;margin-bottom:2.1875rem}}.full-row-list__item img{margin-bottom:14px;margin-bottom:.875rem}@media print,screen and (min-width:40em){.full-row-list__item img{margin-bottom:0}}.block-grid__item{margin-bottom:28px;margin-bottom:1.75rem;text-align:center}@media print,screen and (min-width:48em){.block-grid__item{text-align:left}}.block-grid__link{display:block;background-color:#e6e6e6}.block-grid__title{margin:0;padding:7px;padding:.4375rem}.grid-bg-img{position:absolute;top:0;height:220px;height:13.75rem;background-repeat:no-repeat;max-width:102%;width:102%;background-size:cover;background-position:top;margin-left:-15px;margin-left:-.9375rem;margin-right:-15px;margin-right:-.9375rem}.content-block--grid.inverse-color-block{background-color:transparent}.content-block--grid.inverse-color-block h1{color:#197da4;padding-bottom:50px;padding-bottom:3.125rem}.content-block--grid.inverse-color-block .block-grid__title,.content-block--grid.inverse-color-block h4{letter-spacing:.95px;letter-spacing:.05938rem;line-height:27px;line-height:1.6875rem;padding-bottom:10px;padding-bottom:.625rem}.content-block--grid.inverse-color-block p{padding-bottom:10px;padding-bottom:.625rem}.content-block--grid.inverse-color-block .content-block-item{overflow:hidden;padding-top:240px;padding-top:15rem;position:relative;background-color:#197da4}.content-block--grid.inverse-color-block .content-block-item .button-block{padding-bottom:10px;padding-bottom:.625rem}@media print,screen and (min-width:40em){.content-block--grid.inverse-color-block .content-block-item{margin-bottom:20px;margin-bottom:1.25rem}}@media print,screen and (min-width:48em){.content-block--grid.inverse-color-block .content-block-item{margin-bottom:0}}.content-block--grid.inverse-color-block .large-up-3 .content-block-item{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%;margin-right:0}.content-block--grid.inverse-color-block .large-up-3 .content-block-item:nth-child(2n+2){margin-right:0}@media print,screen and (min-width:40em){.content-block--grid.inverse-color-block .large-up-3 .content-block-item{margin-bottom:20px;margin-bottom:1.25rem;margin-right:4%;max-width:48%;-ms-flex:0 0 48%;flex:0 0 48%}}@media print,screen and (min-width:48em){.content-block--grid.inverse-color-block .large-up-3 .content-block-item{-ms-flex:0 0 32%;flex:0 0 32%;max-width:32%;margin-right:2%}.content-block--grid.inverse-color-block .large-up-3 .content-block-item:nth-child(2n+2){margin-right:2%}}.content-block--grid.inverse-color-block .large-up-3 .content-block-item:last-child{margin-right:0}.banner{position:relative;padding:0;margin:0}.banner.banner--overlay:after{content:"";width:100%;height:100%;position:absolute;top:0;left:0;right:0;bottom:0;opacity:.3;z-index:0}.banner.banner--overlay.banner--overlay-dark:after{background-color:#0a0a0a}.banner.banner--overlay.banner--overlay-dark .banner__content-inner .block-grid__title,.banner.banner--overlay.banner--overlay-dark .banner__content-inner blockquote,.banner.banner--overlay.banner--overlay-dark .banner__content-inner h1,.banner.banner--overlay.banner--overlay-dark .banner__content-inner h2,.banner.banner--overlay.banner--overlay-dark .banner__content-inner h3,.banner.banner--overlay.banner--overlay-dark .banner__content-inner h4,.banner.banner--overlay.banner--overlay-dark .banner__content-inner h5,.banner.banner--overlay.banner--overlay-dark .banner__content-inner h6,.banner.banner--overlay.banner--overlay-dark .banner__content-inner li,.banner.banner--overlay.banner--overlay-dark .banner__content-inner p,.banner.banner--overlay.banner--overlay-dark .banner__content-inner span{color:#fefefe}.banner.banner--overlay.banner--overlay-light:after{background-color:#fefefe}@media screen and (max-width:39.9375em){.banner--no-overlay-small .banner__content{position:static;-ms-transform:none;transform:none}.banner--no-overlay-small .banner__content-inner{padding:7px 0 0;padding:.4375rem 0 0}.banner--no-overlay-small.banner--overlay:after{display:none}.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner .block-grid__title,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner blockquote,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner h1,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner h2,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner h3,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner h4,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner h5,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner h6,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner li,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner p,.banner--no-overlay-small.banner--overlay.banner--overlay-dark .banner__content-inner span{color:#474747}}.banner--small{position:relative}.banner--small .banner__content>.row{margin-left:0;margin-right:0}@media print,screen and (min-width:40em){.banner--content-right .row{-ms-flex-pack:end;justify-content:flex-end}.banner--content-left .row{-ms-flex-pack:start;justify-content:flex-start}.banner--content-center .row{-ms-flex-pack:center;justify-content:center;text-align:center}}@media print,screen and (min-width:40em) and (min-width:40em){.banner--content-center .row .columns{-ms-flex:0 0 50%;flex:0 0 50%;padding-right:.46875rem;padding-left:.46875rem;max-width:50%}}@media print,screen and (min-width:40em) and (min-width:40em) and (min-width:40em){.banner--content-center .row .columns{padding-right:.9375rem;padding-left:.9375rem}}.banner__content{width:100%;position:absolute;top:50%;left:0;-ms-transform:translateY(-50%);transform:translateY(-50%);z-index:1}.banner__content-inner{padding:35px 0;padding:2.1875rem 0}.banner__content-inner--background{background-color:#fefefe;padding:35px;padding:2.1875rem}.gform_fields{list-style-type:none;max-width:75rem;margin-right:auto;margin-left:auto;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.gform_wrapper{margin-right:-.46875rem;margin-left:-.46875rem}@media print,screen and (min-width:40em){.gform_wrapper{margin-right:-.9375rem;margin-left:-.9375rem}}@media print,screen and (min-width:48em){.gform_wrapper{margin-right:-.9375rem;margin-left:-.9375rem}}@media print,screen and (min-width:64em){.gform_wrapper{margin-right:-.9375rem;margin-left:-.9375rem}}.gform_wrapper:after,.gform_wrapper:before{display:table;content:" "}.gform_wrapper:after{clear:both}.gform_footer,.gform_heading,.validation_error{max-width:75rem;margin-right:auto;margin-left:auto;width:100%;float:left;padding-right:.46875rem;padding-left:.46875rem}.gform_footer:after,.gform_footer:before,.gform_heading:after,.gform_heading:before,.validation_error:after,.validation_error:before{display:table;content:" "}.gform_footer:after,.gform_heading:after,.validation_error:after{clear:both}@media print,screen and (min-width:40em){.gform_footer,.gform_heading,.validation_error{padding-right:.9375rem;padding-left:.9375rem}}.gform_footer:last-child:not(:first-child),.gform_heading:last-child:not(:first-child),.validation_error:last-child:not(:first-child){float:right}.gform_footer,.gform_footer:last-child,.gform_heading,.gform_heading:last-child,.validation_error,.validation_error:last-child{float:none}.gfield{-ms-flex:0 0 100%;flex:0 0 100%;padding-right:.46875rem;padding-left:.46875rem;max-width:100%;margin-bottom:35px;margin-bottom:2.1875rem}@media print,screen and (min-width:40em){.gfield{padding-right:.9375rem;padding-left:.9375rem}}.gfield label{display:inline-block;margin-bottom:7px;margin-bottom:.4375rem}@media print,screen and (min-width:40em){.gfield.half{-ms-flex:0 0 50%;flex:0 0 50%;padding-right:.46875rem;padding-left:.46875rem;max-width:50%}}@media print,screen and (min-width:40em) and (min-width:40em){.gfield.half{padding-right:.9375rem;padding-left:.9375rem}}.widget .gfield.half{-ms-flex:0 0 100%;flex:0 0 100%;padding-right:.46875rem;padding-left:.46875rem;max-width:100%}@media print,screen and (min-width:40em){.widget .gfield.half{padding-right:.9375rem;padding-left:.9375rem}}.gfield [type=color],.gfield [type=date],.gfield [type=datetime-local],.gfield [type=datetime],.gfield [type=email],.gfield [type=month],.gfield [type=number],.gfield [type=password],.gfield [type=search],.gfield [type=tel],.gfield [type=text],.gfield [type=time],.gfield [type=url],.gfield [type=week],.gfield select,.gfield textarea{margin-bottom:0}.gfield .instruction{font-size:14px;font-size:.875rem;margin-top:8px;margin-top:.5rem}.gsection_title{padding-bottom:14px;padding-bottom:.875rem;border-bottom:1px solid #19a35a;border-bottom:.0625rem solid #19a35a}.gfield_checkbox li,.gfield_radio li{position:relative}.gfield_radio input[type=radio]{opacity:0;position:absolute;top:0;left:0;z-index:-1}.gfield_radio input[type=radio]:checked+label:before{background-color:#19a35a}.gfield_radio input[type=radio]:checked+label:after{content:"";background-color:#fefefe;width:5px;width:.3125rem;height:5px;height:.3125rem;border-radius:5px;border-radius:.3125rem;display:block;position:absolute;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);left:5px;left:.3125rem}.gfield_radio label{min-height:30px;min-height:1.875rem;padding-left:25px;padding-left:1.5625rem;padding-top:2px;padding-top:.125rem;margin:0}.gfield_radio label:before{content:"";position:absolute;width:15px;width:.9375rem;height:15px;height:.9375rem;border-radius:15px;border-radius:.9375rem;background-color:#e6e6e6;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);left:0;transition:background-color .1s ease-in}.gfield_checkbox input[type=checkbox]{opacity:0;position:absolute;top:0;left:0;z-index:-1}.gfield_checkbox input[type=checkbox]:checked+label:before{content:"";background:url(../img/tick.svg) no-repeat transparent 50%;background-size:8px 8px;background-size:.5rem .5rem;color:#fefefe;font-weight:700;background-color:#19a35a}.gfield_checkbox label{padding-left:25px;padding-left:1.5625rem;padding-top:2px;padding-top:.125rem;margin:0}.gfield_checkbox label:before{content:"";position:absolute;width:15px;width:.9375rem;height:15px;height:.9375rem;background-color:#e6e6e6;text-align:center;font-weight:700;font-size:12px;font-size:.75rem;line-height:11px;line-height:.6875rem;top:7px;top:.4375rem;left:0;transition:background-color .1s ease-in}.gfield_required{display:inline-block;padding:0 2px;padding:0 .125rem;color:#cc4b37}.validation_error{color:#cc4b37;margin-bottom:14px;margin-bottom:.875rem}.validation_message{padding-top:5px;padding-top:.3125rem;color:#cc4b37}.chosen-container-multi .chosen-choices{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%2825, 163, 90%29'></polygon></svg>");background-repeat:no-repeat;background-size:9px 5px;background-size:.5625rem .3125rem;background-position:right 10px center;background-position:right .625rem center}@media screen and (min-width:0\0){.chosen-container-multi .chosen-choices{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}@media screen and (max-width:39.9375em){.gform_wrapper .ginput_complex .ginput_left,.gform_wrapper .ginput_complex .ginput_right{padding:0}}.gallery__image{margin-bottom:35px;margin-bottom:2.1875rem}.owl-dots{width:100%;text-align:center;padding:14px 0;padding:.875rem 0}.owl-dot{width:15px;width:.9375rem;height:15px;height:.9375rem;border-radius:15px;border-radius:.9375rem;background-color:#197da4;display:inline-block;margin:0 7px;margin:0 .4375rem;transition:background-color .2s ease-in}.owl-dot.active,.owl-dot:active,.owl-dot:focus,.owl-dot:hover{background-color:#19a35a}.widget{margin-bottom:35px;margin-bottom:2.1875rem}.widget ul li{margin-bottom:14px;margin-bottom:.875rem}.breadcrumbs-wrapper{padding:14px 0;padding:.875rem 0;background-color:#e6e6e6}.social-icon{display:block;color:#197da4;transition:color .2s ease-in}.social-icon .svg-icon{transition:fill .2s ease-in}.social-icon:active,.social-icon:focus,.social-icon:hover{color:#19a35a}.social-icon:active .svg-icon,.social-icon:focus .svg-icon,.social-icon:hover .svg-icon{fill:#19a35a}.social-icon .svg-icon{width:24px;width:1.5rem;height:24px;height:1.5rem;vertical-align:bottom}.footer__row .social-icon{color:#fefefe}.social-icon.social-icon--twitter{margin-top:0}.social-icon.social-icon--twitter:hover .svg-icon{fill:#38a1f3}.accordion-title{font-size:100%}.accordion-content:after,.accordion-content:before{display:table;content:" "}.accordion-content:after{clear:both}.accordion-item{position:relative}.accordion-item .accordion-title{font-size:16px;font-size:1rem;line-height:34px;line-height:2.125rem;color:#4a4a4a;font-weight:600;text-decoration:underline;padding-top:15px;padding-top:.9375rem;padding-bottom:15px;padding-bottom:.9375rem;padding-left:30px;padding-left:1.875rem;border:0;border-bottom:1px solid #135a76;border-bottom:.0625rem solid #135a76}.accordion-item .accordion-title:focus,.accordion-item .accordion-title:hover{color:#4a4a4a;background-color:transparent}.accordion-item .accordion-title:before{transition:all .5s;transition-timing:ease-in-out;content:"";background:transparent url(../img/accordion-plus.svg) 50% no-repeat;left:0;top:50%;background-size:18px 18px;background-size:1.125rem 1.125rem;height:18px;height:1.125rem;width:18px;width:1.125rem}@media print,screen and (min-width:48em){.accordion-item .accordion-title{font-size:24px;font-size:1.5rem;line-height:57px;line-height:3.5625rem;padding-left:70px;padding-left:4.375rem}.accordion-item .accordion-title:before{left:20px;left:1.25rem;top:calc(50% - 11px);top:calc(50% - .6875rem);background-size:31px 31px;background-size:1.9375rem 1.9375rem;height:31px;height:1.9375rem;width:31px;width:1.9375rem}}.accordion-item .accordion-content{padding-left:30px;padding-left:1.875rem;border:0}.accordion-item .accordion-content p{font-size:16px;font-size:1rem;line-height:34px;line-height:2.125rem}@media print,screen and (min-width:48em){.accordion-item .accordion-content{padding-left:70px;padding-left:4.375rem}.accordion-item .accordion-content p{font-size:24px;font-size:1.5rem;line-height:42px;line-height:2.625rem}}.accordion-item.is-active .accordion-title{color:#4a4a4a;border-bottom:0}.accordion-item.is-active .accordion-content{border-bottom:1px solid #135a76;border-bottom:.0625rem solid #135a76}.is-active>.accordion-title:before{-ms-transform:rotate(180deg);transform:rotate(180deg);animation:3s;content:"";background:transparent url(../img/accordion-minus.svg) 50% no-repeat;left:0;top:50%;background-size:18px 18px;background-size:1.125rem 1.125rem;height:18px;height:1.125rem;width:18px;width:1.125rem}@media print,screen and (min-width:48em){.is-active>.accordion-title:before{left:20px;left:1.25rem;top:calc(50% - 11px);top:calc(50% - .6875rem);background-size:31px 31px;background-size:1.9375rem 1.9375rem;height:31px;height:1.9375rem;width:31px;width:1.9375rem}}:last-child:not(.is-active)>.accordion-title{border-bottom:1px solid #135a76;border-bottom:.0625rem solid #135a76}.nehc_sidebar h2{color:#135a76;font-size:22px;font-size:1.375rem;line-height:33px;line-height:2.0625rem;letter-spacing:1.02px;letter-spacing:.06375rem;font-weight:600;margin-bottom:0;padding-top:0}.nehc_sidebar .gfield{margin-bottom:0}.nehc_sidebar label{display:none}.nehc_sidebar input[type=email]{padding-left:20px;padding-left:1.25rem}.nehc_sidebar input[type=email],.nehc_sidebar input[type=submit]{width:100%;border-radius:50px;border-radius:3.125rem}.nehc_sidebar .content-block--useful-links{margin-bottom:50px;margin-bottom:3.125rem}.nehc_sidebar .content-block--useful-links a{color:#474747;font-weight:600;font-size:16px;font-size:1rem;line-height:31px;line-height:1.9375rem;letter-spacing:.76px;letter-spacing:.0475rem;text-decoration:underline}.nehc_sidebar .content-block--simple{padding:0}.nehc_sidebar .content-block--simple img{padding-bottom:20px;padding-bottom:1.25rem}.content-block--testimonials-list{padding-top:0}.content-block--testimonials-list.content-block--has-heading{padding-top:42px;padding-top:2.625rem}.row-testimonial{border-bottom:1px solid #135a76;border-bottom:.0625rem solid #135a76;padding-bottom:15px;padding-bottom:.9375rem;padding-top:35px;padding-top:2.1875rem;text-align:center}@media print,screen and (min-width:48em){.row-testimonial{padding-bottom:55px;padding-bottom:3.4375rem;padding-top:55px;padding-top:3.4375rem}}.row-testimonial.last-item{border-bottom:0;padding-bottom:0}.testimonial__image{border-radius:50%}.testimonial__heading{color:#474747;font-size:24px;font-size:1.5rem;line-height:33px;line-height:2.0625rem;letter-spacing:.65px;letter-spacing:.04063rem;text-transform:uppercase;padding-top:30px;padding-top:1.875rem;padding-bottom:12px;padding-bottom:.75rem;margin:0;font-weight:600}.testimonial__description{padding-top:5px;padding-top:.3125rem;text-align:left;color:#135a76;font-weight:600;font-size:20px;font-size:1.25rem;line-height:32px;line-height:2rem;letter-spacing:.95px;letter-spacing:.05938rem;font-family:Lora,serif}@media print,screen and (min-width:48em){.testimonial__description{padding-top:50px;padding-top:3.125rem;font-size:24px;font-size:1.5rem;line-height:39px;line-height:2.4375rem;letter-spacing:1.14px;letter-spacing:.07125rem}}.member p{font-family:Open Sans,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;text-align:center;color:#4a4a4a;font-size:20px;font-size:1.25rem;line-height:27px;line-height:1.6875rem;letter-spacing:.54px;letter-spacing:.03375rem;font-weight:300}.member p,.posts-list{padding-top:0}.posts-list h2{font-size:34px;font-size:2.125rem;line-height:39px;line-height:2.4375rem;color:#135a76;font-weight:300}.posts-list__post{margin-bottom:25px;margin-bottom:1.5625rem}.posts-list__post h2{line-height:16px;line-height:1rem;padding:0}.posts-list__post h2 a{font-family:Open Sans,Helvetica Neue,Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-size:1rem;color:#4a4a4a;line-height:22px;line-height:1.375rem;letter-spacing:.68px;letter-spacing:.0425rem;font-weight:700;text-decoration:underline}.post__info{margin-bottom:7px;margin-bottom:.4375rem}.post__info:last-child{margin-bottom:21px;margin-bottom:1.3125rem}.post__info .button.primary.small{padding:5px 25px;padding:.3125rem 1.5625rem}.single-post iframe{max-width:100%}body.home h1{text-align:center;border-bottom:10px solid #ed1c8b;border-bottom:.625rem solid #ed1c8b;line-height:36px;line-height:2.25rem;font-size:32px;font-size:2rem;letter-spacing:.87px;letter-spacing:.05438rem;padding-bottom:26px;padding-bottom:1.625rem}@media print,screen and (min-width:48em){body.home h1{line-height:57px;line-height:3.5625rem;font-size:42px;font-size:2.625rem;padding-bottom:44px;padding-bottom:2.75rem;letter-spacing:1.14px;letter-spacing:.07125rem}}body.home h2{text-align:center}@media print,screen and (min-width:48em){body.home h2{padding-top:40px;padding-top:2.5rem}}body.home h3{color:#197da4;padding-top:20px;padding-top:1.25rem;line-height:27px;line-height:1.6875rem;font-size:20px;font-size:1.25rem;letter-spacing:.95px;letter-spacing:.05938rem}@media print,screen and (min-width:48em){body.home h3{padding-top:40px;padding-top:2.5rem;line-height:33px;line-height:2.0625rem;font-size:24px;font-size:1.5rem;letter-spacing:1.14px;letter-spacing:.07125rem}}body.home .content-block--gallery{padding:0}body.home .content-block--gallery .columns{padding-left:0;padding-right:0}body.home .content-block--home-introduction{padding:2.625rem 0 0}body.home .content-block--home-introduction p{text-align:center}body.home .content-block--grid .block-grid__item{text-align:center;position:relative;transition:all .4s ease-in;box-shadow:2px 2px 2px 2px rgba(0,0,0,.1);box-shadow:.125rem .125rem .125rem .125rem rgba(0,0,0,.1);margin-bottom:16px;margin-bottom:1rem;max-width:100%;-ms-flex:0 0 100%;flex:0 0 100%;border-radius:8px;border-radius:.5rem}body.home .content-block--grid .block-grid__item:hover{box-shadow:4px 4px 12px 2px rgba(0,0,0,.3);box-shadow:.25rem .25rem .75rem .125rem rgba(0,0,0,.3)}@media print,screen and (min-width:48em){body.home .content-block--grid .block-grid__item{margin:1%;padding:15px;padding:.9375rem;max-width:31%;-ms-flex:0 0 31%;flex:0 0 31%}}body.home .content-block--grid h3{text-transform:uppercase;font-size:20px;font-size:1.25rem;line-height:27px;line-height:1.6875rem;letter-spacing:.76px;letter-spacing:.0475rem;font-weight:700;padding-top:0}body.home .content-block--grid p{padding-top:30px;padding-top:1.875rem;padding-bottom:30px;padding-bottom:1.875rem;margin-bottom:60px;margin-bottom:3.75rem}body.home .content-block--grid .button{position:absolute;bottom:15px;bottom:.9375rem;left:30px;left:1.875rem;right:30px;right:1.875rem;padding-left:15px;padding-left:.9375rem;padding-right:15px;padding-right:.9375rem}body.home .owl-carousel .banner-panel{transition:all .5s ease}body.home .owl-carousel .banner-panel h3{font-size:24px;font-size:1.5rem;padding-top:0;color:#135a76}body.home .owl-carousel .banner-panel h2{text-align:inherit}body.home .owl-carousel .banner-panel .columns{padding:15px;padding:.9375rem;background-color:#fefefe;border-radius:11px;border-radius:.6875rem;text-align:center;transition:all .5s ease}@media print,screen and (min-width:48em){body.home .owl-carousel .banner-panel .columns{text-align:left}}@media print,screen and (min-width:48em){body.home .owl-carousel .banner-panel{position:absolute;top:20px;top:1.25rem;left:0;width:100%}}@media print,screen and (min-width:64em){body.home .owl-carousel .banner-panel{top:90px;top:5.625rem}}.contact-page .content-block{padding-top:0;padding-bottom:0}.contact-page .content-block .content-block--simple{padding:0}.contact-page .content-block h2{padding-top:50px;padding-top:3.125rem;font-size:42px;font-size:2.625rem;letter-spacing:1.14px;letter-spacing:.07125rem;font-weight:300}.contact-image{padding:0}.styleguide-section{padding:30px 0;padding:1.875rem 0}.styleguide-section:after,.styleguide-section:before{display:table;content:" "}.styleguide-section:after{clear:both}.styleguide-section__title{font-weight:700;font-size:18px;font-size:1.125rem}.debug-mode-on .current-breakpoint{display:block;padding:10px;padding:.625rem;background-color:tomato;color:#fefefe;position:fixed;top:0;left:0;z-index:99999}.container{background-color:#fefefe;max-width:75rem;margin-right:auto;margin-left:auto}.container p{color:#474747}#about-respin{padding-top:0}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwic3R5bGUuY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJ2ZW5kb3JzL2ZvdW5kYXRpb24vX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2ZsZXguc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19mbGV4LWdyaWQuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwidmVuZG9ycy9fd29yZHByZXNzLWNvcmUuc2NzcyIsInZlbmRvcnMvX2xpdHkuc2NzcyIsInZlbmRvcnMvX2Nob3Nlbi5zY3NzIiwidmVuZG9ycy9fb3dsLWNhcm91c2VsLnNjc3MiLCJ2ZW5kb3JzL19ncmF2aXR5LWZvcm1zLnNjc3MiLCJiYXNlL19oZWxwZXJzLnNjc3MiLCJ1dGlscy9fbWl4aW5zLnNjc3MiLCJ1dGlscy9fdmFyaWFibGVzLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL19idXR0b25zLnNjc3MiLCJiYXNlL19pY29ucy5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJ1dGlscy9fZnVuY3Rpb25zLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX21haW4tbmF2aWdhdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LWJsb2NrLnNjc3MiLCJjb21wb25lbnRzL19tYXNvbnJ5LnNjc3MiLCJjb21wb25lbnRzL19mdWxsLXJvdy1saXN0LnNjc3MiLCJjb21wb25lbnRzL19ibG9jay1ncmlkLnNjc3MiLCJjb21wb25lbnRzL19iYW5uZXIuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsImNvbXBvbmVudHMvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvX3NsaWRlci5zY3NzIiwiY29tcG9uZW50cy9fc2lkZWJhci13aWRnZXRzLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9fc29jaWFsLWljb25zLnNjc3MiLCJjb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsImNvbXBvbmVudHMvX25laGMtc2lkZWJhci5zY3NzIiwiY29tcG9uZW50cy9fdGVzdGltb25pYWwtYmxvY2suc2NzcyIsInBhZ2VzL19wb3N0cy1saXN0LnNjc3MiLCJwYWdlcy9fc2luZ2xlLXBvc3Quc2NzcyIsInBhZ2VzL19ob21lLXBhZ2Uuc2NzcyIsInBhZ2VzL19jb250YWN0LXBhZ2Uuc2NzcyIsInN0eWxlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNGNFLGlCQXpPaUM7QUN0TGpDLGlFQUFpRSxBQWEvRCxLQUNFLHVCQzFDdUIsQURrRHJCLGlCQUFrQixBQUVwQiwwQkFBMkIsQUFDM0IsNkJBQStCLENBQ2hDLEFBbUJELHdD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SG5ELHlDQ2dEQSxVQUNFLHNCQUFBLEFJL0tnQixrQkFBQSxBSmdMaEIsa0JJaExnQixDSmlMakIsQUFLRCxpQkt6S0osYURoQnNCLENKMkxqQixBQVZELFVBQ0UsdUJBQUEsQUkvS2dCLG1CQUFBLEFKZ0xoQixtQkloTGdCLENKaUxqQixBQUtELGlCS3pLSixvQkRic0IsQ0p3TGpCLEFBVkQsVUFDRSxpQkFBQSxBSS9LZ0IsYUFBQSxBSmdMaEIsYUloTGdCLENKaUxqQixBQUtELGlCS3pLSixxQkRic0IsQ0p3TGpCLEFBVkQsVUFDRSx1QkFBQSxBSS9LZ0IsbUJBQUEsQUpnTGhCLG1CSWhMZ0IsQ0ppTGpCLEFBS0QsaUJLektKLGVEYnNCLENKd0xqQixBQVZELFVBQ0UsdUJBQUEsQUkvS2dCLG1CQUFBLEFKZ0xoQixtQkloTGdCLENKaUxqQixBQUtELGlCS3pLSixxQkRic0IsQ0p3TGpCLEFBVkQsVUFDRSxpQkFBQSxBSS9LZ0IsYUFBQSxBSmdMaEIsYUloTGdCLENKaUxqQixBQUtELGlCS3pLSixxQkRic0IsQ0p3TGpCLEFBVkQsVUFDRSx1QkFBQSxBSS9LZ0IsbUJBQUEsQUpnTGhCLG1CSWhMZ0IsQ0ppTGpCLEFBS0QsaUJLektKLGVEYnNCLENKd0xqQixBQVZELFVBQ0UsdUJBQUEsQUkvS2dCLG1CQUFBLEFKZ0xoQixtQkloTGdCLENKaUxqQixBQUtELGlCS3pLSixxQkRic0IsQ0p3TGpCLEFBVkQsVUFDRSxpQkFBQSxBSS9LZ0IsYUFBQSxBSmdMaEIsYUloTGdCLENKaUxqQixBQUtELGlCS3pLSixxQkRic0IsQ0p3TGpCLEFBVkQsV0FDRSx1QkFBQSxBSS9LZ0IsbUJBQUEsQUpnTGhCLG1CSWhMZ0IsQ0ppTGpCLEFBS0QsaUJLektKLGVEYnNCLENKd0xqQixBQVZELFdBQ0UsdUJBQUEsQUkvS2dCLG1CQUFBLEFKZ0xoQixtQkloTGdCLENKaUxqQixBQUtELGtCS3pLSixxQkRic0IsQ0p3TGpCLEFBVkQsV0FDRSxrQkFBQSxBSS9LZ0IsY0FBQSxBSmdMaEIsY0loTGdCLENKaUxqQixBQUtELGtC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UDNCLEFBYkgsTUFnQkksUUFBVSxDQUNYLEFBSUgsR0FDRSxXQUFZLEFBRVosZ0JhbFRrQixBYm1UbEIsU0FBVSxBQUNWLG9CTTdQeUIsQU4rUHpCLGFBQWMsQUFDZCxlQUFnQixBQUNoQixnQ0FBQSxBTXBWaUIscUNBQUEsQU5xVmpCLGFBQWUsQ0FDaEIsQUFHRCxTQUdFLG1CTXZSMEIsQU53UjFCLDRCTXRReUIsQU51UXpCLGVNMVJzQixDTjJSdkIsQUFHRCxHQUNFLGlCQUFtQixDQUNwQixBQUdELEdBRUUsb0JNblJrQixDTm9SbkIsQUFHRCxNQUxFLG1CTWhSc0IsQ051UnZCLEFBR0Qsd0JBRUksb0JNM1IyQixBTjRSM0IsZUFBaUIsQ0FDbEIsQUFJSCxHQUNFLGtCTWpTeUIsQ051UzFCLEFBUEQsTUFJSSxvQk1sUzhCLEFObVM5QixlTXBYbUIsQ05xWHBCLEFBSUgsV0FDRSxnQk1oVTBCLEFOaVUxQixxQ2ExV2tCLEFiMldsQiw4QkFBQSxBTXZZaUIsa0NBQUEsQ042WWxCLEFBVEQsd0JBTUksZ0JNdFVvQixBTnVVcEIsYU0xWWEsQ04yWWQsQUFJSCxLQUNFLGNBQWUsQUFDZixtQmF0WGtCLEFidVhsQixhTWxaZSxDTnVaaEIsQUFSRCxZQU1JLFlBL09nQixDQUFhLEFBb1BqQyxLQUNFLGlDQUFBLEFNMVpXLHNDQUFBLEFOMlpYLFdNeFprQixBTnlabEIsV0FBYSxDQUNkLEFBR0QsT0FDRSxRQUFVLENBQ1gsQUFHRCxLQUNFLGtDYTVZa0IsQWI4WWxCLHlCQUFBLEFNMWFpQiw4QkFBQSxBTjhhakIsZU1wYXlCLENOc2ExQixBQUdELFNBUkUseUJNNWFnQixBTjhhaEIsdURNM1htRSxBTjZYbkUsYU03YVcsQ05pYmIsQUFZQyxJQVhDLFNBQVUsQUFDVix3QmFwWlMsQ2I4WlYsQWlCNWNELFdBQ0UsaUJYNkh5QixBVzVIekIsb0JYNkg0QixBVzNINUIsZ0JYbUJ5QixBV2xCekIsZ0JYc0hzQixBV3JIdEIsYVhRZSxDV1BoQixBQUdELE1BQ0UsZVg4RzhCLEFXN0c5QixlWDhHaUIsQ1c3R2xCLEFB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QUEsQUFBYyxnQkFBQSxBQUNkLHdCQUF5QixBQUN6QixjdkVPVyxBdUVOWCxlQUFnQixBQUNoQixNQUFPLEFBQ1AsT0FBUSxBQUNSLGFBQWUsQ0FDbEIsQUFFRCxXQUNJLHlCdkVEVyxBdUVFWCxnQkFBaUIsQUFDakIsa0JBQW1CLEFBQ25CLGdCQUFrQixDQUlyQixBQVJELGFBTVEsYTVCL0RpQixDNEJnRXBCLEFBRUwsY0FDSSxhQUFlLENBQ2xCIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPuKAlDxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZW9jcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBjdXJzb3I6IGhlbHA7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gVmVydGljYWwgUmh5dGhtXG4vL1xuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcbi8vIENTUy4gSWYgeW91IGFyZSBsb29raW5nIGZvciBhIHJvYnVzdCBzb2x1dGlvbiwgbG9vayBhdCB0aGUgZXhjZWxsZW50IFR5cGV5XG4vLyBsaWJyYXJ5LiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qcHRhcmFudG8vdHlwZXlcblxuQGZ1bmN0aW9uIG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSwgJHVuaXQ6ICRiYXNlLXVuaXQpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBweCB7XG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgQGlmICR1bml0ID09IHJlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XG4gIH1cbiAgQGVsc2UgeyAvLyAkdW5pdCA9PSBweFxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG59XG5cbkBtaXhpbiBub3JtYWxpemUtZm9udC1zaXplKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncHgnIHtcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBmb250LXNpemU6IG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLXJoeXRobSgkcHJvcGVydHksICR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xuICAkc2VwOiBzcGFjZTtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XG4gIH1cblxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlLWxpc3Qge1xuICAgIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAkdmFsdWUgIT0gMCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XG4gICAgfVxuICAgICRub3JtYWxpemVkLXZhbHVlczogYXBwZW5kKCRub3JtYWxpemVkLXZhbHVlcywgJHZhbHVlLCAkc2VwKTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICRub3JtYWxpemVkLXZhbHVlcztcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1tYXJnaW4oJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShtYXJnaW4sICR2YWx1ZXMsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJG1pbi1saW5lLXBhZGRpbmc6IDJweCkge1xuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcbiAgLy8gSWYgbGluZXMgYXJlIGNyYW1wZWQgaW5jbHVkZSBzb21lIGV4dHJhIGxlYWRpbmcuXG4gIEBpZiAoJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplKSA8ICgkbWluLWxpbmUtcGFkZGluZyAqIDIpIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XG4gIH1cbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShsaW5lLWhlaWdodCwgJGxpbmVzLCAkZm9udC1zaXplKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjMuMFxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbi8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG4vKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovIH1cblxuLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDEgKi9cbiAgaGVpZ2h0OiAwO1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAgICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbi8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG4gIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovIH1cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovXG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICAgICAqLyB9XG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLCBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZ0YWJsZXQ9NDhlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjRUNFQ0VDO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMzMzO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi1qdXN0aWZ5IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXNlbGYtdG9wIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1taWRkbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5zbWFsbC1vcmRlci0xIHtcbiAgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHtcbiAgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm1lZGl1bS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubWVkaXVtLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5tZWRpdW0tb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLm1lZGl1bS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubWVkaXVtLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhYmxldC1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAudGFibGV0LW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC50YWJsZXQtb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnRhYmxldC1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAudGFibGV0LW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC50YWJsZXQtb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC40Njg3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNDY4NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdyAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5yb3cuaXMtY29sbGFwc2UtY2hpbGQsXG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyxcbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zID4gLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgZmxleDogMSAxIDBweDtcbiAgcGFkZGluZy1yaWdodDogMC40Njg3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjQ2ODc1cmVtO1xuICBtaW4td2lkdGg6IGluaXRpYWw7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1ncm93IHtcbiAgZmxleDogMSAwIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgZmxleDogMCAxIGF1dG87IH1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cblxuLmZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuXG4uc21hbGwtMSB7XG4gIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLnNtYWxsLTIge1xuICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLTMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uc21hbGwtNSB7XG4gIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLTYge1xuICBmbGV4OiAwIDAgNTAlO1xuICBtYXgtd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC03IHtcbiAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uc21hbGwtOCB7XG4gIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLTkge1xuICBmbGV4OiAwIDAgNzUlO1xuICBtYXgtd2lkdGg6IDc1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC0xMCB7XG4gIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLnNtYWxsLTExIHtcbiAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLTEyIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5zbWFsbC1vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4uc21hbGwtb3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5zbWFsbC1vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG4uc21hbGwtdXAtMSB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtdXAtMiB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5zbWFsbC11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXVwLTMge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtdXAtNSB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7IH1cblxuLnNtYWxsLXVwLTYge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuXG4uc21hbGwtdXAtOCB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtOCA+IC5jb2x1bW4sIC5zbWFsbC11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICBtYXgtd2lkdGg6IDEyLjUlOyB9XG5cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNDY4NzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC40Njg3NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAubWVkaXVtLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbiwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfSB9XG5cbi5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAudGFibGV0LTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnRhYmxldC1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC50YWJsZXQtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAudGFibGV0LW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC50YWJsZXQtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAudGFibGV0LW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC50YWJsZXQtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAudGFibGV0LW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAudGFibGV0LW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC50YWJsZXQtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAudGFibGV0LW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC50YWJsZXQtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAudGFibGV0LW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC50YWJsZXQtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAudGFibGV0LW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC50YWJsZXQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnRhYmxldC1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAudGFibGV0LTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC50YWJsZXQtb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC50YWJsZXQtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAudGFibGV0LW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAudGFibGV0LW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC50YWJsZXQtb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnRhYmxldC1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAudGFibGV0LW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC50YWJsZXQtb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnRhYmxldC1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAudGFibGV0LXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC50YWJsZXQtdXAtMSA+IC5jb2x1bW4sIC50YWJsZXQtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC50YWJsZXQtdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRhYmxldC11cC0yID4gLmNvbHVtbiwgLnRhYmxldC11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC50YWJsZXQtdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRhYmxldC11cC0zID4gLmNvbHVtbiwgLnRhYmxldC11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC50YWJsZXQtdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRhYmxldC11cC00ID4gLmNvbHVtbiwgLnRhYmxldC11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC50YWJsZXQtdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRhYmxldC11cC01ID4gLmNvbHVtbiwgLnRhYmxldC11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC50YWJsZXQtdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRhYmxldC11cC02ID4gLmNvbHVtbiwgLnRhYmxldC11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC50YWJsZXQtdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRhYmxldC11cC03ID4gLmNvbHVtbiwgLnRhYmxldC11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC50YWJsZXQtdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnRhYmxldC11cC04ID4gLmNvbHVtbiwgLnRhYmxldC11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC50YWJsZXQtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAudGFibGV0LWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAudGFibGV0LWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgLnRhYmxldC1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC50YWJsZXQtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAudGFibGV0LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfSB9XG5cbi5yb3cudGFibGV0LXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnRhYmxldC11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5yb3cudGFibGV0LXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnRhYmxldC11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YWJsZXQtY29sbGFwc2UgPiAuY29sdW1uLCAudGFibGV0LWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC50YWJsZXQtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC50YWJsZXQtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmxhcmdlLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAubGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5sYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5sYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZXhwYW5kIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH0gfVxuXG4ucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5zaHJpbmsge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuLmJsb2NrLWdyaWRfX3RpdGxlLFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG4uYmxvY2stZ3JpZF9fdGl0bGUsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLFxuICBoMiBzbWFsbCxcbiAgaDMgc21hbGwsXG4gIGg0IHNtYWxsLCAuYmxvY2stZ3JpZF9fdGl0bGUgc21hbGwsXG4gIGg1IHNtYWxsLFxuICBoNiBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29sb3I6ICM5Nzk3OTc7IH1cblxuaDEge1xuICBmb250LXNpemU6IDIuNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDIge1xuICBmb250LXNpemU6IDIuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg0LCAuYmxvY2stZ3JpZF9fdGl0bGUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMxOTdEQTQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTY2YzhkOyB9XG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk3OTc5NztcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOTc5Nzk3OyB9XG4gIGJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBjb2xvcjogIzM3MzgzOTsgfVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogIzM3MzgzOTsgfVxuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuYWJiciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTtcbiAgY29sb3I6ICMzMzM7XG4gIGN1cnNvcjogaGVscDsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5Nzk3OTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICMzNzM4Mzk7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG4ubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFibGV0LXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudGFibGV0LXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC50YWJsZXQtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudGFibGV0LXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzNzM4Mzk7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9IH1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjg1ZW0gMzVweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNDhweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOUEzNUE7XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNThiNGQ7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi50aW55IHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOTdEQTQ7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ2NDgzO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOUEzNUE7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE0ODI0ODtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24udGVydGlhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFOTI2OEI7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLnRlcnRpYXJ5OmhvdmVyLCAuYnV0dG9uLnRlcnRpYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjNTE0NzA7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE5N0RBNDtcbiAgICBjb2xvcjogIzE5N0RBNDsgfVxuICAgIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMGQzZjUyO1xuICAgICAgY29sb3I6ICMwZDNmNTI7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxOTdEQTQ7XG4gICAgICBjb2xvcjogIzE5N0RBNDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzBkM2Y1MjtcbiAgICAgICAgY29sb3I6ICMwZDNmNTI7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzE5QTM1QTtcbiAgICAgIGNvbG9yOiAjMTlBMzVBOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzBkNTIyZDtcbiAgICAgICAgY29sb3I6ICMwZDUyMmQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy50ZXJ0aWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjRTkyNjhCO1xuICAgICAgY29sb3I6ICNFOTI2OEI7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnRlcnRpYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy50ZXJ0aWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzdiMGM0NjtcbiAgICAgICAgY29sb3I6ICM3YjBjNDY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk3REE0O1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE5N0RBNDtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE5QTM1QTtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnRlcnRpYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS50ZXJ0aWFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC50ZXJ0aWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC50ZXJ0aWFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0udGVydGlhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnRlcnRpYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U5MjY4QjtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3Mge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNGVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDM1cHg7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgdG9wOiAtMC4xZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5Nzk3OTc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzczODM5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgdGV4dGFyZWFbcm93c10ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzk3OTc5NzsgfVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTc5Nzk3O1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiAyLjVyZW07IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTc5Nzk3OyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuMTg3NXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjRUNFQ0VDOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5Nzk3OTc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODI1LCAxNjMsIDkwJTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuICBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzM3MzgzOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZWNlYTsgfVxuICAuaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNzsgfVxuICAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oaWRlLWZvci10YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc2hvdy1mb3ItdGFibGV0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci10YWJsZXQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci10YWJsZXQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvOyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJzsgfVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzE5N0RBNDsgfVxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG4gIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cbiAgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICBjb250ZW50OiAnKyc7IH1cbiAgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ+KAkyc7IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMzMzM7IH1cbiAgOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJyZWFkY3J1bWJzIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIG1hcmdpbjogMCAwLjc1cmVtO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgY29sb3I6ICM5Nzk3OTc7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjMTk3REE0OyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICM5Nzk3OTc7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pcy1kcmlsbGRvd24gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5pcy1kcmlsbGRvd24uYW5pbWF0ZS1oZWlnaHQge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzOyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7IH1cbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1jbG9zaW5nIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4uaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzM3MzgzOTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICByaWdodDogMXJlbTsgfVxuXG4uanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMzczODM5IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG5cbi5tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLm1lbnUgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51ID4gbGkge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAubWVudSA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLm1lbnUgaW5wdXQsXG4gIC5tZW51IHNlbGVjdCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51ID4gbGkgPiBhIGltZyxcbiAgLm1lbnUgPiBsaSA+IGEgaSxcbiAgLm1lbnUgPiBsaSA+IGEgc3ZnIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm1lbnUgPiBsaSA+IGEgaW1nICsgc3BhbixcbiAgICAubWVudSA+IGxpID4gYSBpICsgc3BhbixcbiAgICAubWVudSA+IGxpID4gYSBzdmcgKyBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1lbnUgPiBsaSA+IGEgaW1nLFxuICAubWVudSA+IGxpID4gYSBpLFxuICAubWVudSA+IGxpID4gYSBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lbnUgPiBsaSwgLm1lbnUuaG9yaXpvbnRhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gIC5tZW51LmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG4gICAgLm1lbnUuZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZW51LnZlcnRpY2FsID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gICAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG4gICAgICAubWVudS5tZWRpdW0tZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm1lbnUudGFibGV0LWhvcml6b250YWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gICAgLm1lbnUudGFibGV0LWV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG4gICAgICAubWVudS50YWJsZXQtZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWVudS50YWJsZXQtdmVydGljYWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgICAubWVudS5sYXJnZS1leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDsgfVxuICAgICAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLm1lbnUuc2ltcGxlIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5tZW51LnNpbXBsZSBhIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0OjpiZWZvcmUsIC5tZW51LmFsaWduLXJpZ2h0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgPiBsaSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubWVudS5pY29uLXRvcCA+IGxpID4gYSBpbWcsXG4gICAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgaSxcbiAgICAubWVudS5pY29uLXRvcCA+IGxpID4gYSBzdmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgYXV0byAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tdG9wLnZlcnRpY2FsIGEgPiBzcGFuIHtcbiAgICBtYXJnaW46IGF1dG87IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAubWVudSAuYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogIzE5N0RBNDtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubWVudS5tZW51LWJvcmRlcmVkIGxpIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2OyB9XG4gICAgLm1lbnUubWVudS1ib3JkZXJlZCBsaTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gIC5tZW51Lm1lbnUtaG92ZXIgbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cblxuLm1lbnUtdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbnUtY2VudGVyZWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7IH1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS50YWJsZXQtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUudGFibGV0LXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LnRhYmxldC12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfSB9XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtNnB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogI0VBRjZGQjsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yZXNwb25zaXZlLWVtYmVkLCAuZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuICAucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbiwgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5wYWdpbmF0aW9uIGE6aG92ZXIsXG4gICAgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cbiAgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjMTk3REE0O1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogIzk3OTc5NztcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb250ZW50OiAnXFwyMDI2JztcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBhYic7IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGJiJzsgfVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC50YWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDsgfVxuICAudGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTk3REE0OyB9XG4gIC50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMWI4OGIyOyB9XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnRhYnMtdGl0bGUgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICMxOTdEQTQ7IH1cbiAgICAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICAgIGNvbG9yOiAjMTY2YzhkOyB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gICAgICBjb2xvcjogIzE5N0RBNDsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMzMzM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAudGFicy1wYW5lbFthcmlhLWhpZGRlbj1cImZhbHNlXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogc29saWQgNHB4ICNmZWZlZmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG5cbmEudGh1bWJuYWlsIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDsgfVxuICBhLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjUsIDEyNSwgMTY0LCAwLjUpOyB9XG4gIGEudGh1bWJuYWlsIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi8qID1Xb3JkUHJlc3MgQ29yZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDsgfVxuXG4uYWxpZ25jZW50ZXIsXG5kaXYuYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA1cHggYXV0byA1cHggYXV0bzsgfVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiA1cHggMCAyMHB4IDIwcHg7IH1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDsgfVxuXG5hIGltZy5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDVweCAwIDIwcHggMjBweDsgfVxuXG5hIGltZy5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDsgfVxuXG5hIGltZy5hbGlnbmxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7IH1cblxuYSBpbWcuYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4ud3AtY2FwdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmMGYwZjA7XG4gIG1heC13aWR0aDogOTYlO1xuICAvKiBJbWFnZSBkb2VzIG5vdCBvdmVyZmxvdyB0aGUgY29udGVudCBhcmVhICovXG4gIHBhZGRpbmc6IDVweCAzcHggMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi53cC1jYXB0aW9uLmFsaWdubm9uZSB7XG4gIG1hcmdpbjogNXB4IDIwcHggMjBweCAwOyB9XG5cbi53cC1jYXB0aW9uLmFsaWdubGVmdCB7XG4gIG1hcmdpbjogNXB4IDIwcHggMjBweCAwOyB9XG5cbi53cC1jYXB0aW9uLmFsaWducmlnaHQge1xuICBtYXJnaW46IDVweCAwIDIwcHggMjBweDsgfVxuXG4ud3AtY2FwdGlvbiBpbWcge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDAgMCA1cHggMDtcbiAgbWF4LXdpZHRoOiA5OC41JTtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IGF1dG87IH1cblxuLndwLWNhcHRpb24gcC53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgNHB4IDVweDsgfVxuXG4vKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDtcbiAgLyogQWJvdmUgV1AgdG9vbGJhci4gKi8gfVxuXG4vKiEgTGl0eSAtIHYyLjIuMCAtIDIwMTYtMTAtMDhcbiogaHR0cDovL3NvcmdhbGxhLmNvbS9saXR5L1xuKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNiBKYW4gU29yZ2FsbGE7IExpY2Vuc2VkIE1JVCAqL1xuLmxpdHkge1xuICB6LWluZGV4OiA5OTkwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZDogIzBiMGIwYjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTsgfVxuXG4ubGl0eS5saXR5LW9wZW5lZCB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmxpdHkubGl0eS1jbG9zZWQge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5saXR5ICoge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4ubGl0eS13cmFwIHtcbiAgei1pbmRleDogOTk5MDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5saXR5LXdyYXA6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1ZW07IH1cblxuLmxpdHktbG9hZGVyIHtcbiAgei1pbmRleDogOTk5MTtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0wLjhlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlOyB9XG5cbi5saXR5LWxvYWRpbmcgLmxpdHktbG9hZGVyIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ubGl0eS1jb250YWluZXIge1xuICB6LWluZGV4OiA5OTkyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmxpdHktY29udGVudCB7XG4gIHotaW5kZXg6IDk5OTM7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2UsIC1vLXRyYW5zZm9ybSAwLjNzIGVhc2U7IH1cblxuLmxpdHktbG9hZGluZyAubGl0eS1jb250ZW50LFxuLmxpdHktY2xvc2VkIC5saXR5LWNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cblxuLmxpdHktY29udGVudDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IC0xO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuXG4ubGl0eS1jbG9zZSB7XG4gIHotaW5kZXg6IDk5OTQ7XG4gIHdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IDM1cHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDM1cHg7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTtcbiAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubGl0eS1jbG9zZTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4ubGl0eS1jbG9zZTpob3Zlcixcbi5saXR5LWNsb3NlOmZvY3VzLFxuLmxpdHktY2xvc2U6YWN0aXZlLFxuLmxpdHktY2xvc2U6dmlzaXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDM1cHg7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTtcbiAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubGl0eS1jbG9zZTphY3RpdmUge1xuICB0b3A6IDFweDsgfVxuXG4vKiBJbWFnZSAqL1xuLmxpdHktaW1hZ2UgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG4vKiBpRnJhbWUgKi9cbi5saXR5LWlmcmFtZSAubGl0eS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA5NjRweDsgfVxuXG4ubGl0eS1pZnJhbWUtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cblxuLmxpdHktaWZyYW1lLWNvbnRhaW5lciBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5saXR5LWhpZGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIVxuQ2hvc2VuLCBhIFNlbGVjdCBCb3ggRW5oYW5jZXIgZm9yIGpRdWVyeSBhbmQgUHJvdG90eXBlXG5ieSBQYXRyaWNrIEZpbGxlciBmb3IgSGFydmVzdCwgaHR0cDovL2dldGhhcnZlc3QuY29tXG5cblZlcnNpb24gMS42LjJcbkZ1bGwgc291cmNlIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9oYXJ2ZXN0aHEvY2hvc2VuXG5Db3B5cmlnaHQgKGMpIDIwMTEtMjAxNiBIYXJ2ZXN0IGh0dHA6Ly9nZXRoYXJ2ZXN0LmNvbVxuXG5NSVQgTGljZW5zZSwgaHR0cHM6Ly9naXRodWIuY29tL2hhcnZlc3RocS9jaG9zZW4vYmxvYi9tYXN0ZXIvTElDRU5TRS5tZFxuVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBieSBgZ3J1bnQgYnVpbGRgLCBkbyBub3QgZWRpdCBpdCBieSBoYW5kLlxuKi9cbi8qIEBncm91cCBCYXNlICovXG4uY2hvc2VuLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDEzcHg7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyICoge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLWRyb3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogLTk5OTlweDtcbiAgei1pbmRleDogMTAxMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLmNob3Nlbi13aXRoLWRyb3AgLmNob3Nlbi1kcm9wIHtcbiAgbGVmdDogMDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lciBhIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyIC5zZWFyY2gtY2hvaWNlIC5ncm91cC1uYW1lLCAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXNpbmdsZSAuZ3JvdXAtbmFtZSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICM5OTk5OTk7IH1cblxuLmNob3Nlbi1jb250YWluZXIgLnNlYXJjaC1jaG9pY2UgLmdyb3VwLW5hbWU6YWZ0ZXIsIC5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tc2luZ2xlIC5ncm91cC1uYW1lOmFmdGVyIHtcbiAgY29udGVudDogXCI6XCI7XG4gIHBhZGRpbmctbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBTaW5nbGUgQ2hvc2VuICovXG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwIDAgMCA4cHg7XG4gIGhlaWdodDogMjVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgyMCUsICNmZmZmZmYpLCBjb2xvci1zdG9wKDUwJSwgI2Y2ZjZmNiksIGNvbG9yLXN0b3AoNTIlLCAjZWVlZWVlKSwgY29sb3Itc3RvcCgxMDAlLCAjZjRmNGY0KSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNmZmZmZmYgMjAlLCAjZjZmNmY2IDUwJSwgI2VlZWVlZSA1MiUsICNmNGY0ZjQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KCNmZmZmZmYgMjAlLCAjZjZmNmY2IDUwJSwgI2VlZWVlZSA1MiUsICNmNGY0ZjQgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCgjZmZmZmZmIDIwJSwgI2Y2ZjZmNiA1MCUsICNlZWVlZWUgNTIlLCAjZjRmNGY0IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2ZmZmZmZiAyMCUsICNmNmY2ZjYgNTAlLCAjZWVlZWVlIDUyJSwgI2Y0ZjRmNCAxMDAlKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogMCAwIDNweCB3aGl0ZSBpbnNldCwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29sb3I6ICM0NDQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7IH1cblxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tZGVmYXVsdCB7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1yaWdodDogMjZweDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlLXdpdGgtZGVzZWxlY3Qgc3BhbiB7XG4gIG1hcmdpbi1yaWdodDogMzhweDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgYWJiciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2cHg7XG4gIHJpZ2h0OiAyNnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Nob3Nlbi1zcHJpdGUucG5nXCIpIC00MnB4IDFweCBuby1yZXBlYXQ7XG4gIGZvbnQtc2l6ZTogMXB4OyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBhYmJyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQycHggLTEwcHg7IH1cblxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlLmNob3Nlbi1kaXNhYmxlZCAuY2hvc2VuLXNpbmdsZSBhYmJyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQycHggLTEwcHg7IH1cblxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlIGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlIGRpdiBiIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaG9zZW4tc3ByaXRlLnBuZ1wiKSBuby1yZXBlYXQgMHB4IDJweDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMTA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogM3B4IDRweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBtYXJnaW46IDFweCAwO1xuICBwYWRkaW5nOiA0cHggMjBweCA0cHggNXB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoXCIuLi9pbWcvY2hvc2VuLXNwcml0ZS5wbmdcIikgbm8tcmVwZWF0IDEwMCUgLTIwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaG9zZW4tc3ByaXRlLnBuZ1wiKSBuby1yZXBlYXQgMTAwJSAtMjBweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLWRyb3Age1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUtbm9zZWFyY2ggLmNob3Nlbi1zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5cHg7IH1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIFJlc3VsdHMgKi9cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyB7XG4gIGNvbG9yOiAjNDQ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWFyZ2luOiAwIDRweCA0cHggMDtcbiAgcGFkZGluZzogMCAwIDAgNHB4O1xuICBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4IDZweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5hY3RpdmUtcmVzdWx0IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLmRpc2FibGVkLXJlc3VsdCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY29sb3I6ICNjY2M7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkuaGlnaGxpZ2h0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg3NWQ3O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgyMCUsICMzODc1ZDcpLCBjb2xvci1zdG9wKDkwJSwgIzJhNjJiYykpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgjMzg3NWQ3IDIwJSwgIzJhNjJiYyA5MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCgjMzg3NWQ3IDIwJSwgIzJhNjJiYyA5MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoIzM4NzVkNyAyMCUsICMyYTYyYmMgOTAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCMzODc1ZDcgMjAlLCAjMmE2MmJjIDkwJSk7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5uby1yZXN1bHRzIHtcbiAgY29sb3I6ICM3Nzc7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkuZ3JvdXAtcmVzdWx0IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5ncm91cC1vcHRpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cblxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpIGVtIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4vKiBAZW5kICovXG4vKiBAZ3JvdXAgTXVsdGkgQ2hvc2VuICovXG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogOHB4IDVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDUwJSAwJSwgNTAlIDEwMCUsIGNvbG9yLXN0b3AoMSUsICNlZWVlZWUpLCBjb2xvci1zdG9wKDE1JSwgI2ZmZmZmZikpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgjZWVlZWVlIDElLCAjZmZmZmZmIDE1JSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMSUsICNmZmZmZmYgMTUlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMSUsICNmZmZmZmYgMTUlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMSUsICNmZmZmZmYgMTUlKTtcbiAgY3Vyc29yOiB0ZXh0OyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtZmllbGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAyMXB4O1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICM5OTk7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogM3B4IDVweCAzcHggMDtcbiAgcGFkZGluZzogM3B4IDIwcHggM3B4IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDIwJSwgI2Y0ZjRmNCksIGNvbG9yLXN0b3AoNTAlLCAjZjBmMGYwKSwgY29sb3Itc3RvcCg1MiUsICNlOGU4ZTgpLCBjb2xvci1zdG9wKDEwMCUsICNlZWVlZWUpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjZjRmNGY0IDIwJSwgI2YwZjBmMCA1MCUsICNlOGU4ZTggNTIlLCAjZWVlZWVlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTlweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IHdoaXRlIGluc2V0LCAwIDFweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGNvbG9yOiAjMzMzO1xuICBsaW5lLWhlaWdodDogMTNweDtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIHNwYW4ge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IH1cblxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2UgLnNlYXJjaC1jaG9pY2UtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNHB4O1xuICByaWdodDogM3B4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Nob3Nlbi1zcHJpdGUucG5nXCIpIC00MnB4IDFweCBuby1yZXBlYXQ7XG4gIGZvbnQtc2l6ZTogMXB4OyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIC5zZWFyY2gtY2hvaWNlLWNsb3NlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQycHggLTEwcHg7IH1cblxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2UtZGlzYWJsZWQge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDIwJSwgI2Y0ZjRmNCksIGNvbG9yLXN0b3AoNTAlLCAjZjBmMGYwKSwgY29sb3Itc3RvcCg1MiUsICNlOGU4ZTgpLCBjb2xvci1zdG9wKDEwMCUsICNlZWVlZWUpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjZjRmNGY0IDIwJSwgI2YwZjBmMCA1MCUsICNlOGU4ZTggNTIlLCAjZWVlZWVlIDEwMCUpO1xuICBjb2xvcjogIzY2NjsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZS1mb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNkNGQ0ZDQ7IH1cblxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2UtZm9jdXMgLnNlYXJjaC1jaG9pY2UtY2xvc2Uge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDJweCAtMTBweDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLXJlc3VsdHMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1kcm9wIC5yZXN1bHQtc2VsZWN0ZWQge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGNvbG9yOiAjY2NjO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIEFjdGl2ZSAgKi9cbi5jaG9zZW4tY29udGFpbmVyLWFjdGl2ZSAuY2hvc2VuLXNpbmdsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmI7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLWFjdGl2ZS5jaG9zZW4td2l0aC1kcm9wIC5jaG9zZW4tc2luZ2xlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDIwJSwgI2VlZWVlZSksIGNvbG9yLXN0b3AoODAlLCAjZmZmZmZmKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMjAlLCAjZmZmZmZmIDgwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMjAlLCAjZmZmZmZmIDgwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgjZWVlZWVlIDIwJSwgI2ZmZmZmZiA4MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2VlZWVlZSAyMCUsICNmZmZmZmYgODAlKTtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAjZmZmIGluc2V0OyB9XG5cbi5jaG9zZW4tY29udGFpbmVyLWFjdGl2ZS5jaG9zZW4td2l0aC1kcm9wIC5jaG9zZW4tc2luZ2xlIGRpdiB7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xOHB4IDJweDsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUgLmNob3Nlbi1jaG9pY2VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cblxuLmNob3Nlbi1jb250YWluZXItYWN0aXZlIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBjb2xvcjogIzIyMiAhaW1wb3J0YW50OyB9XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBEaXNhYmxlZCBTdXBwb3J0ICovXG4uY2hvc2VuLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41ICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uY2hvc2VuLWRpc2FibGVkIC5jaG9zZW4tc2luZ2xlIHtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5jaG9zZW4tZGlzYWJsZWQgLmNob3Nlbi1jaG9pY2VzIC5zZWFyY2gtY2hvaWNlIC5zZWFyY2gtY2hvaWNlLWNsb3NlIHtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBSaWdodCB0byBMZWZ0ICovXG4uY2hvc2VuLXJ0bCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5jaG9zZW4tcnRsIC5jaG9zZW4tc2luZ2xlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmc6IDAgOHB4IDAgMDsgfVxuXG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXNpbmdsZSBzcGFuIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMjZweDtcbiAgZGlyZWN0aW9uOiBydGw7IH1cblxuLmNob3Nlbi1ydGwgLmNob3Nlbi1zaW5nbGUtd2l0aC1kZXNlbGVjdCBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDM4cHg7IH1cblxuLmNob3Nlbi1ydGwgLmNob3Nlbi1zaW5nbGUgZGl2IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDNweDsgfVxuXG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXNpbmdsZSBhYmJyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDI2cHg7IH1cblxuLmNob3Nlbi1ydGwgLmNob3Nlbi1jaG9pY2VzIGxpIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jaG9zZW4tcnRsIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBkaXJlY3Rpb246IHJ0bDsgfVxuXG4uY2hvc2VuLXJ0bCAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZSB7XG4gIG1hcmdpbjogM3B4IDVweCAzcHggMDtcbiAgcGFkZGluZzogM3B4IDVweCAzcHggMTlweDsgfVxuXG4uY2hvc2VuLXJ0bCAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZSAuc2VhcmNoLWNob2ljZS1jbG9zZSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA0cHg7IH1cblxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUtbm9zZWFyY2ggLmNob3Nlbi1zZWFyY2gsXG4uY2hvc2VuLXJ0bCAuY2hvc2VuLWRyb3Age1xuICBsZWZ0OiA5OTk5cHg7IH1cblxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1yZXN1bHRzIHtcbiAgbWFyZ2luOiAwIDAgNHB4IDRweDtcbiAgcGFkZGluZzogMCA0cHggMCAwOyB9XG5cbi5jaG9zZW4tcnRsIC5jaG9zZW4tcmVzdWx0cyBsaS5ncm91cC1vcHRpb24ge1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYge1xuICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cblxuLmNob3Nlbi1ydGwgLmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBwYWRkaW5nOiA0cHggNXB4IDRweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoXCIuLi9pbWcvY2hvc2VuLXNwcml0ZS5wbmdcIikgbm8tcmVwZWF0IC0zMHB4IC0yMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hvc2VuLXNwcml0ZS5wbmdcIikgbm8tcmVwZWF0IC0zMHB4IC0yMHB4O1xuICBkaXJlY3Rpb246IHJ0bDsgfVxuXG4uY2hvc2VuLXJ0bC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDZweCAycHg7IH1cblxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMnB4IDJweDsgfVxuXG4vKiBAZW5kICovXG4vKiBAZ3JvdXAgUmV0aW5hIGNvbXBhdGliaWxpdHkgKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTQ0ZHBpKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMS41ZHBweCkge1xuICAuY2hvc2VuLXJ0bCAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlIGFiYnIsXG4gIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBkaXYgYixcbiAgLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2VhcmNoIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAuY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgLnNlYXJjaC1jaG9pY2UgLnNlYXJjaC1jaG9pY2UtY2xvc2UsXG4gIC5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cy1zY3JvbGwtZG93biBzcGFuLFxuICAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMtc2Nyb2xsLXVwIHNwYW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jaG9zZW4tc3ByaXRlQDJ4LnBuZ1wiKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNTJweCAzN3B4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50OyB9IH1cblxuLyogQGVuZCAqL1xuLyoqXG4gKiBPd2wgQ2Fyb3VzZWwgdjIuMi4wXG4gKiBDb3B5cmlnaHQgMjAxMy0yMDE2IERhdmlkIERldXRzY2hcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL093bENhcm91c2VsMi9Pd2xDYXJvdXNlbDIvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlOmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogZml4IGZvciBmbGFzaGluZyBiYWNrZ3JvdW5kICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcixcbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWRvdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmVmZWZlOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3QuYWN0aXZlLCAub3dsLWNhcm91c2VsIC5vd2wtZG90OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm93bC1jYXJvdXNlbCAub3dsLWRvdCB7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGhlaWdodDogMjJweDsgfSB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm93bC1jYXJvdXNlbCAub3dsLWRvdHMge1xuICAgICAgYm90dG9tOiAyMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDM1JTtcbiAgdG9wOiBhdXRvO1xuICB3aWR0aDogMTAwJTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDQ5cHg7XG4gICAgd2lkdGg6IDQ5cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NoZXZyb24tcmlnaHQuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgICAgIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1uZXh0IHtcbiAgICAgICAgbGVmdDogMTJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfSB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1uZXh0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAxMnB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IHtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAyNHB4KTtcbiAgICAgIGJvdHRvbTogYXV0bzsgfSB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuLm93bC1jYXJvdXNlbCAub3dsLWRvdHMuZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2LFxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsXG4ub3dsLWNhcm91c2VsIC5vd2wtZG90IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1sb2FkZWQge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1sb2FkaW5nIHtcbiAgb3BhY2l0eTogMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtaGlkZGVuIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtZ3JhYiB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0ge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWluIHtcbiAgei1pbmRleDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtb3V0IHtcbiAgei1pbmRleDogMTsgfVxuXG4ub3dsLWNhcm91c2VsIC5mYWRlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cbi5vd2wtaGVpZ2h0IHtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi8qXG4gKiAgT3dsIENhcm91c2VsIC0gTGF6eSBMb2FkIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi8qXG4gKiAgT3dsIENhcm91c2VsIC0gVmlkZW8gUGx1Z2luXG4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL293bC52aWRlby5wbGF5LnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDEwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRuIHtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDQ1MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgICAgIGhlaWdodDogMjUwcHg7IH0gfVxuXG4vKlxuKiAgIENTUyBpbiBoZXJlIGlzIHRha2VuIGZyb20gdGhlIENTUyBmaWxlcyBpbiB0aGUgR3Jhdml0eSBGb3JtcyBwbHVnaW4uIFRoZSBlbnRpcmUgZmlsZXMgYXJlbid0IGxvYWRlZCwgYXMgdGhleSBhZGQgb24gdG9vIG11Y2ggZXh0cmEgc3R5bGluZyB0aGF0IHdlIHdvdWxkIG5lZWQgdG8gdW5kb1xuKi9cbi5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lcixcbi5nZm9ybV93cmFwcGVyIC5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lcixcbmJvZHkgLmdmb3JtX3dyYXBwZXIgbGkuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBsZWZ0OiAtOTAwMHB4OyB9XG5cbi5nZm9ybV93cmFwcGVyIC5jbGVhci1tdWx0aSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLyogZGF0ZSDigItmaWVsZHMgKi9cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kYXksXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfeWVhciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfZGF5LFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX21vbnRoLFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX3llYXIge1xuICB3aWR0aDogMzMuMzMzJTtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMXB4KSB7XG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kYXksXG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9tb250aCB7XG4gICAgbWF4LXdpZHRoOiA0cmVtOyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV95ZWFyLFxuICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfYW1wbSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDRyZW0gKyAuNXJlbSk7IH0gfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfZHJvcGRvd25fbW9udGgsXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfZHJvcGRvd25fZGF5LFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2Ryb3Bkb3duX3llYXIge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kcm9wZG93bl9tb250aCxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kcm9wZG93bl9kYXksXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfZHJvcGRvd25feWVhciB7XG4gIG1hcmdpbi1yaWdodDogLjVyZW07IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX21vbnRoLFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2RheSB7XG4gIHdpZHRoOiA0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC41cmVtOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9tb250aCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2RheSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgd2lkdGg6IGNhbGMoM3JlbSArIDhweCkgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfeWVhciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgd2lkdGg6IGNhbGMoNHJlbSArIDhweCkgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfeWVhciB7XG4gIHdpZHRoOiA1cmVtOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9tb250aCBpbnB1dCxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kYXkgaW5wdXQge1xuICB3aWR0aDogY2FsYygzcmVtICsgOHB4KTsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfeWVhciBpbnB1dCB7XG4gIHdpZHRoOiA0cmVtOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5maWVsZF9zdWJsYWJlbF9hYm92ZSBkaXZbY2xhc3MqPVwiZ2ZpZWxkX2RhdGVfXCJdLmdpbnB1dF9jb250YWluZXIgbGFiZWwsXG4uZ2Zvcm1fd3JhcHBlciAuZmllbGRfc3VibGFiZWxfYmVsb3cgZGl2W2NsYXNzKj1cImdmaWVsZF9kYXRlX1wiXS5naW5wdXRfY29udGFpbmVyIGxhYmVsIHtcbiAgd2lkdGg6IDNyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZmllbGRfc3VibGFiZWxfYWJvdmUgZGl2LmdmaWVsZF9kYXRlX3llYXIuZ2lucHV0X2NvbnRhaW5lciBsYWJlbCxcbi5nZm9ybV93cmFwcGVyIC5maWVsZF9zdWJsYWJlbF9iZWxvdyBkaXYuZ2ZpZWxkX2RhdGVfeWVhci5naW5wdXRfY29udGFpbmVyIGxhYmVsIHtcbiAgd2lkdGg6IDRyZW07IH1cblxuLmdmb3JtX3dyYXBwZXIgaW5wdXQuZGF0ZXBpY2tlcl93aXRoX2ljb24uc21hbGwsXG4uZ2Zvcm1fd3JhcHBlciBpbnB1dC5kYXRlcGlja2VyX3dpdGhfaWNvbi5tZWRpdW0sXG4uZ2Zvcm1fd3JhcHBlciBpbnB1dC5kYXRlcGlja2VyX3dpdGhfaWNvbi5sYXJnZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyNHB4KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbmJvZHkgLmdmb3JtX3dyYXBwZXIgaW1nLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gIHdpZHRoOiAxN3B4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTZweCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7IH1cblxuLyogdGltZSDigItmaWVsZHMgKi9cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9ob3VyLFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX21pbnV0ZSxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9hbXBtIHtcbiAgd2lkdGg6IDMzLjMzMyU7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjFweCkge1xuICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfaG91cixcbiAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX21pbnV0ZSB7XG4gICAgbWF4LXdpZHRoOiA0cmVtOyB9XG4gIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9ob3VyLFxuICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfYW1wbSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDRyZW0gKyAuNXJlbSk7IH1cbiAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIge1xuICAgIG1heC13aWR0aDogY2FsYyg0cmVtICsgLjVyZW0pOyB9IH1cblxuLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzOm5vdCgudG9wX2xhYmVsKSAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIHNwYW4ge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfaG91ciBpIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogNCU7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX21pbnV0ZSB7XG4gIG1hcmdpbi1yaWdodDogLjVyZW07IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIge1xuICBtYXJnaW4tcmlnaHQ6IC4yNXJlbTsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfYW1wbSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3Qge1xuICBtaW4td2lkdGg6IGNhbGMoMnJlbSArIDI1cHgpO1xuICB3aWR0aDogY2FsYygzcmVtICsgMjVweCk7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIgaW5wdXQsXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfbWludXRlIGlucHV0IHtcbiAgd2lkdGg6IGNhbGMoM3JlbSArIDhweCk7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9taW51dGUgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gIHdpZHRoOiBjYWxjKDNyZW0gKyA4cHgpICFpbXBvcnRhbnQ7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfbGVmdCxcbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0LFxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfZnVsbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfbGVmdCxcbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IDAgLTRweCAwIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0LFxuICAgIC5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0IHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQsXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uZ2ZfY2xlYXJfY29tcGxleCB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQsXG4uZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9yaWdodCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5nZm9ybV93cmFwcGVyIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cblxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfcmlnaHQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMTVweDsgfVxuXG4vKiBhZGp1c3RpbmcgdGhlIG5hbWUgZmllbGQgc28gaXQgYWxpZ25zIHByb3Blcmx5ICovXG4vKiBhIGxpdHRsZSBiZXR0ZXIgc3BlY2lmaWN0eSB0byBhdm9pZCBwcm9ibGVtcyB3aXRoIGZvcm1zIGluIHdpZGdldHMgKi9cbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMSxcbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMixcbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMyB7XG4gIHdpZHRoOiBjYWxjKDcwJSArIDE1cHgpO1xuICBtYXJnaW4tbGVmdDogMjklOyB9XG5cbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc18xLFxudWwuZ2Zvcm1fZmllbGRzOm5vdCgudG9wX2xhYmVsKSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzIsXG51bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMyB7XG4gIHdpZHRoOiBjYWxjKDcwJSArIDI0cHgpOyB9XG5cbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNCB7XG4gIHdpZHRoOiBjYWxjKDcwJSArIDEzcHgpO1xuICBtYXJnaW4tbGVmdDogMjklOyB9XG5cbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNSB7XG4gIHdpZHRoOiBjYWxjKDcwJSArIDE0cHgpO1xuICBtYXJnaW4tbGVmdDogMjklOyB9XG5cbmRpdi5naW5wdXRfY29udGFpbmVyX25hbWUgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBkaXYuZ2lucHV0X2NvbnRhaW5lcl9uYW1lIHNwYW4ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuXG5kaXYuZ2lucHV0X2NvbnRhaW5lcl9uYW1lIHNwYW4ubmFtZV9sYXN0IHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGRpdi5naW5wdXRfY29udGFpbmVyX25hbWUgc3Bhbi5uYW1lX2xhc3Qge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4OyB9IH1cblxuZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMSBzcGFuIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMyBzcGFuIHtcbiAgd2lkdGg6IDMzLjMlOyB9XG5cbmRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzQgc3BhbiB7XG4gIHdpZHRoOiAyNSU7IH1cblxuZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNSBzcGFuIHtcbiAgd2lkdGg6IDE5Ljk1JTsgfVxuXG4vKiB0d2VhayB0aGUgc2l6ZXMgZm9yIHZhbGlkYXRpb24gYW5kIGxlZnQvcmlnaHQgbGFiZWwgbGF5b3V0cyAqL1xuLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzOm5vdCgudG9wX2xhYmVsKSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzEgc3BhbiB7XG4gIHdpZHRoOiA5OS43NSUgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMiBzcGFuIHtcbiAgd2lkdGg6IDQ5Ljc1JSAhaW1wb3J0YW50OyB9XG5cbi5nZm9ybV93cmFwcGVyIHVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc18zIHNwYW4ge1xuICB3aWR0aDogMzMlICFpbXBvcnRhbnQ7IH1cblxuLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzOm5vdCgudG9wX2xhYmVsKSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzQgc3BhbiB7XG4gIHdpZHRoOiAyNC43NSUgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNSBzcGFuIHtcbiAgd2lkdGg6IDE5Ljc1JSAhaW1wb3J0YW50OyB9XG5cbmh0bWwgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMiBzcGFuOmZpcnN0LWNoaWxkLFxuaHRtbCBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc18zIHNwYW46Zmlyc3QtY2hpbGQsXG5odG1sIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzQgc3BhbjpmaXJzdC1jaGlsZCxcbmh0bWwgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmlsZXVwbG9hZF9tdWx0aWZpbGUgLmdmb3JtX2Ryb3BfYXJlYSB7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCAjQ0NDO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjQUFBO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciBzcGFuLmdmb3JtX2Ryb3BfaW5zdHJ1Y3Rpb25zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDhweDsgfVxuXG4uZ2Zvcm1fZGVsZXRlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkdyYXZpdHkgRm9ybXMgRGF0ZSBQaWNrZXIgU3R5bGVzXG5odHRwOiAvL3d3dy5ncmF2aXR5Zm9ybXMuY29tXG51cGRhdGVkOiBKYW51YXJ5IDMxLCAyMDE0IDM6MzIgUE1cblxuQ3VzdG9taXplZCBzdHlsZXMgZm9yIHRoZSBqUXVlcnkgVUkgRGF0ZXBpY2tlciAxLjkuMlxuY29weXJpZ2h0IDIwMTIgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuc29tZSBzdHlsZXMgY291cnRlc3R5IG9mIGh0dHA6Ly93d3cuaG9uZ2tpYXQuY29tL1xuXG5HcmF2aXR5IEZvcm1zIGlzIGEgUm9ja2V0Z2VuaXVzIHByb2plY3RcbmNvcHlyaWdodCAyMDA4IC0gMjAxNCBSb2NrZXRnZW5pdXMgSW5jLlxuaHR0cDogLy93d3cucm9ja2V0Z2VuaXVzLmNvbVxuXG5OT1RFOiBETyBOT1QgRURJVCBUSElTIEZJTEUhIE1BS0UgQU5ZIE1PRElGSUNBVElPTlMgSU4gWU9VUlxuVEhFTUUgU1RZTEVTSEVFVC4gVEhJUyBGSUxFIElTIFJFUExBQ0VEIERVUklORyBBVVRPLVVQREFURVNcbkFORCBBTlkgQ0hBTkdFUyBNQURFIEhFUkUgV0lMTCBCRSBPVkVSV1JJVFRFTi5cblxuSWYgeW91IG5lZWQgdG8gbWFrZSBleHRlbnNpdmUgY3VzdG9taXphdGlvbnMsXG5jb3B5IHRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgdG8geW91ciB0aGVtZVxuc3R5bGUgc2hlZXQgZm9yIGVkaXRpbmcuIFRoZW4sIGdvIHRvIHRoZSBmb3JtXG5zZXR0aW5ncyBwYWdlICYgc2V0IHRoZSAnb3V0cHV0IENTUycgb3B0aW9uXG50byBuby5cblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi51aS1kYXRlcGlja2VyIHtcbiAgd2lkdGg6IDIxNnB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogNXB4IGF1dG8gMDtcbiAgZm9udDogOXB0IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4udWktZGF0ZXBpY2tlciBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi51aS1kYXRlcGlja2VyIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cblxuLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgLyogc2V0IHRoZSBoZWFkZXIgYmFja2dyb3VuZCBjb2xvciAqL1xuICBjb2xvcjogI2UwZTBlMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMHB4IDFweCAxcHggMHB4IHJnYmEoMjUwLCAyNTAsIDI1MCwgMC4yKTtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwcHggMXB4IDFweCAwcHggcmdiYSgyNTAsIDI1MCwgMjUwLCAwLjIpO1xuICBib3gtc2hhZG93OiBpbnNldCAwcHggMXB4IDFweCAwcHggcmdiYSgyNTAsIDI1MCwgMjUwLCAwLjIpO1xuICB0ZXh0LXNoYWRvdzogMXB4IC0xcHggMHB4ICMwMDA7XG4gIGZpbHRlcjogZHJvcHNoYWRvdyhjb2xvcj0jMDAwLCBvZmZ4PTEsIG9mZnk9LTEpO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgbWluLWhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjNjY2OyB9XG5cbi51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi51aS1kYXRlcGlja2VyLXRpdGxlIHNlbGVjdCB7XG4gIG1hcmdpbi10b3A6IDIuNSU7XG4gIG1hcmdpbi1ib3R0b206IDIuNSU7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi51aS1kYXRlcGlja2VyLXByZXYsXG4udWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2Fycm93LnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbGluZS1oZWlnaHQ6IDYwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLnVpLWRhdGVwaWNrZXItcHJldiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgLTMwcHg7IH1cblxuLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gIGZsb2F0OiByaWdodDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDBweDsgfVxuXG4udWktZGF0ZXBpY2tlciB0aGVhZCB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGJhY2tncm91bmQ6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l3SlNJZ2VUSTlJakV3TUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXdKU0lnYzNSdmNDMWpiMnh2Y2owaUkyWTNaamRtTnlJZ2MzUnZjQzF2Y0dGamFYUjVQU0l4SWk4K0NpQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqRXdNQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTm1NV1l4WmpFaUlITjBiM0F0YjNCaFkybDBlVDBpTVNJdlBnb2dJRHd2YkdsdVpXRnlSM0poWkdsbGJuUStDaUFnUEhKbFkzUWdlRDBpTUNJZ2VUMGlNQ0lnZDJsa2RHZzlJakVpSUdobGFXZG9kRDBpTVNJZ1ptbHNiRDBpZFhKc0tDTm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtLU0lnTHo0S1BDOXpkbWMrKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZjdmN2Y3IDAlLCAjZjFmMWYxIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjZjdmN2Y3KSwgY29sb3Itc3RvcCgxMDAlLCAjZjFmMWYxKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y3ZjdmNyAwJSwgI2YxZjFmMSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y3ZjdmNyAwJSwgI2YxZjFmMSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNmN2Y3ZjcgMCUsICNmMWYxZjEgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmN2Y3ZjcgMCUsICNmMWYxZjEgMTAwJSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZjdmN2Y3JywgZW5kQ29sb3JzdHI9JyNmMWYxZjEnLEdyYWRpZW50VHlwZT0wICk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmJiOyB9XG5cbi51aS1kYXRlcGlja2VyIHRoIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDZwdDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICB0ZXh0LXNoYWRvdzogMXB4IDBweCAwcHggI2ZmZjtcbiAgZmlsdGVyOiBkcm9wc2hhZG93KGNvbG9yPSNmZmYsIG9mZng9MSwgb2ZmeT0wKTsgfVxuXG4udWktZGF0ZXBpY2tlciB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYmJiO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjYmJiOyB9XG5cbi51aS1kYXRlcGlja2VyIHRib2R5IHRkOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDBweDsgfVxuXG4udWktZGF0ZXBpY2tlciB0Ym9keSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmJiOyB9XG5cbi51aS1kYXRlcGlja2VyIHRib2R5IHRyOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwcHg7IH1cblxuLnVpLWRhdGVwaWNrZXIgdGQgc3Bhbixcbi51aS1kYXRlcGlja2VyIHRkIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBjb2xvcjogIzY2NjY2NjtcbiAgdGV4dC1zaGFkb3c6IDFweCAxcHggMHB4ICNmZmY7XG4gIGZpbHRlcjogZHJvcHNoYWRvdyhjb2xvcj0jZmZmLCBvZmZ4PTEsIG9mZnk9MSk7IH1cblxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgLnVpLXN0YXRlLWRlZmF1bHQge1xuICBiYWNrZ3JvdW5kOiAjZWRlZGVkO1xuICBiYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJd0pTSWdlVEk5SWpFd01DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJMlZrWldSbFpDSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU5rWldSbFpHVWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2VkZWRlZCAwJSwgI2RlZGVkZSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgI2VkZWRlZCksIGNvbG9yLXN0b3AoMTAwJSwgI2RlZGVkZSkpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlZGVkZWQgMCUsICNkZWRlZGUgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZGVkZWQgMCUsICNkZWRlZGUgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZWRlZGVkIDAlLCAjZGVkZWRlIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWRlZGVkIDAlLCAjZGVkZWRlIDEwMCUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2VkZWRlZCcsIGVuZENvbG9yc3RyPScjZGVkZWRlJyxHcmFkaWVudFR5cGU9MCApO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMHB4IDBweCByZ2JhKDI1MCwgMjUwLCAyNTAsIDAuNSk7XG4gIC1tb3otYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCAwcHggMHB4IHJnYmEoMjUwLCAyNTAsIDI1MCwgMC41KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCAwcHggMHB4IHJnYmEoMjUwLCAyNTAsIDI1MCwgMC41KTsgfVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciAudWktc3RhdGUtaG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG5cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIC51aS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjRkZGMkFBO1xuICAvKiBzZXQgdGhlIGFjdGl2ZSBkYXRlIGJhY2tncm91bmQgY29sb3IgKi9cbiAgYm9yZGVyOiAxcHggc29saWQgI2MxOTE2MztcbiAgLyogc2V0IHRoZSBhY3RpdmUgZGF0ZSBib3JkZXIgY29sb3IgKi9cbiAgY29sb3I6ICM2NjY7XG4gIC8qIHNldCB0aGUgYWN0aXZlIGRhdGUgZm9udCBjb2xvciAqL1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgdGV4dC1zaGFkb3c6IDBweCAxcHggMHB4ICNGRkY7XG4gIGZpbHRlcjogZHJvcHNoYWRvdyhjb2xvcj0jRkZGLCBvZmZ4PTAsIG9mZnk9MSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAtMXB4OyB9XG5cbi51aS1kYXRlcGlja2VyLXVuc2VsZWN0YWJsZSAudWktc3RhdGUtZGVmYXVsdCB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGNvbG9yOiAjYjRiM2IzOyB9XG5cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRkOmZpcnN0LWNoaWxkIC51aS1zdGF0ZS1hY3RpdmUge1xuICB3aWR0aDogMjlweDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQ6bGFzdC1jaGlsZCAudWktc3RhdGUtYWN0aXZlIHtcbiAgd2lkdGg6IDI5cHg7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciB0cjpsYXN0LWNoaWxkIC51aS1zdGF0ZS1hY3RpdmUge1xuICBoZWlnaHQ6IDI5cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxudGQudWktZGF0ZXBpY2tlci11bnNlbGVjdGFibGUudWktc3RhdGUtZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDdkN2Q3OyB9XG5cbnRhYmxlLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIge1xuICBtYXJnaW46IDAgMCAwIDAgIWltcG9ydGFudDsgfVxuXG5ib2R5IGRpdiN1aS1kYXRlcGlja2VyLWRpdltzdHlsZV0ge1xuICB6LWluZGV4OiA5OTk5ICFpbXBvcnRhbnQ7IH1cblxuLypcbiogICBUaGVzZSBzaG91bGQgYmUgdGhlIHNsdWcgb2YgYSBmbGV4IGNvbnRlbnQgZmllbGQsIGFsb25nIHdpdGggdGhlIGRhc2hpY29ucyBjaGFyYWN0ZXJcbiovXG4vKlxuKiAgIElmIGRvaW5nIGFueSBpY29uIHNlbGVjdGlvbiBpbiBBQ0YsIGFwcGx5IHRoZSByYWRpby1idXR0b24taWNvbi1yZXBsYWNlbWVudHMgY2xhc3MgdG8gdGhlIEFDRiBmaWVsZFxuKiAgIFRoZSBpdGVtcyBpbiB0aGlzIGFycmF5IHNob3VsZCBtYXRjaCBib3RoIHRoZSByYWRpbyBidXR0b24gdmFsdWUsIGFuZCB0aGUgU1ZHIGltYWdlIGZpbGUgKGxvY2F0ZWQgdW5kZXIgYXNzZXRzL2ltZy8pXG4qL1xuLm5vLWJ1bGxldC1saXN0LCAuaW5saW5lLWxpc3QsIC5nZmllbGRfcmFkaW8sXG4uZ2ZpZWxkX2NoZWNrYm94LCAud2lkZ2V0IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5pbmxpbmUtbGlzdCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uc2luZ2xlLWxpbmUtdGV4dCwgLndpZGdldCB1bCBhIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnd5c2l3eWctY29udGVudCBwLFxuLnd5c2l3eWctY29udGVudCBzcGFuLFxuLnd5c2l3eWctY29udGVudCBsaSxcbi53eXNpd3lnLWNvbnRlbnQgYmxvY2txdW90ZSxcbi53eXNpd3lnLWNvbnRlbnQgaDEsXG4ud3lzaXd5Zy1jb250ZW50IGgyLFxuLnd5c2l3eWctY29udGVudCBoMyxcbi53eXNpd3lnLWNvbnRlbnQgaDQsXG4ud3lzaXd5Zy1jb250ZW50IC5ibG9jay1ncmlkX190aXRsZSxcbi53eXNpd3lnLWNvbnRlbnQgaDUsXG4ud3lzaXd5Zy1jb250ZW50IGg2IHtcbiAgY29sb3I6ICM0NzQ3NDc7IH1cblxuYm9keSB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgYm9keSBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogIzEzNUE3NjtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4xNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1N3B4OyB9XG4gIGJvZHkgaDIge1xuICAgIGNvbG9yOiAjNDc0NzQ3O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjk1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICBib2R5IGgyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjE0cHg7IH0gfVxuICBib2R5IGgzIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4xNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgYm9keSBwIHtcbiAgICBsZXR0ZXItc3BhY2luZzogLjY4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7IH1cblxuLmJ1dHRvbi0taWNvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7IH1cblxuLmJ1dHRvbi0tYXJyb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJ1dHRvbi0tYXJyb3c6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjAlMjAyMCUyMiUyMHdpZHRoJTNEJTIyMjBweCUyMiUyMGhlaWdodCUzRCUyMjIwcHglMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjIwJTIyJTIweG1sJTNBc3BhY2UlM0QlMjJwcmVzZXJ2ZSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcGF0aCUyMGZpbGwlM0QlMjIlMjNmZWZlZmUlMjIlMjBkJTNEJTIyTTEzLjI1JTIwMTBsLTcuMTQxLTcuNDJjLTAuMjY4LTAuMjctMC4yNjgtMC43MDclMjAwLTAuOTc5JTIwMC4yNjgtMC4yNyUyMDAuNzAxLTAuMjclMjAwLjk2OSUyMDBsNy44MyUyMDcuOTA4YzAuMjY4JTIwMC4yNzElMjAwLjI2OCUyMDAuNzA5JTIwMCUyMDAuOTc5bC03LjgzJTIwNy45MDhjLTAuMjY4JTIwMC4yNzEtMC43MDElMjAwLjI3LTAuOTY5JTIwMHMtMC4yNjgtMC43MDclMjAwLTAuOTc5bDcuMTQxLTcuNDE3eiUyMiUzRSUzQyUyRnBhdGglM0UlMEElM0MlMkZzdmclM0VcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICByaWdodDogMTNweDtcbiAgICB0cmFuc2l0aW9uOiByaWdodCAwLjJzIGVhc2UtaW47IH1cbiAgLmJ1dHRvbi0tYXJyb3c6aG92ZXI6YWZ0ZXIge1xuICAgIHJpZ2h0OiA4cHg7IH1cblxuLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmFjdGl2ZSwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMsXG4uYnV0dG9uLnRlcnRpYXJ5OmhvdmVyLFxuLmJ1dHRvbi50ZXJ0aWFyeTphY3RpdmUsXG4uYnV0dG9uLnRlcnRpYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmJ1dHRvbi5zZWNvbmRhcnksXG4uYnV0dG9uLnRlcnRpYXJ5IHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmJ1dHRvbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBsZXR0ZXItc3BhY2luZzogLjA0cHg7XG4gIHBhZGRpbmc6IDEwcHggNTVweDsgfVxuXG4uYnV0dG9uLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxOHB4OyB9XG4gIC5idXR0b24taW5saW5lIGEge1xuICAgIHBhZGRpbmc6IDEwcHggMjVweDsgfVxuICAuYnV0dG9uLWlubGluZTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnN2Zy1pY29uIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIG1hcmdpbi1ib3R0b206IDJweDsgfVxuXG4uaG9tZSBoZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5sb2dvIHtcbiAgcGFkZGluZzogN3B4IDAgMCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDlweDtcbiAgd2lkdGg6IDcycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmxvZ28gc3ZnIHtcbiAgICB3aWR0aDogMzEwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmxvZ28gc3ZnIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxvZ28ge1xuICAgICAgcGFkZGluZzogMjhweCAwIDE0cHg7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvZ28ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4ubG9nb19fdGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubG9nb19fdGV4dCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yb3cubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zLFxuICAucm93LmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLFxuICAucm93LmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuZm9vdGVyIHtcbiAgcGFkZGluZzogMjNweCAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzczODM5O1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICBmb290ZXIgcCxcbiAgZm9vdGVyIHNwYW4sXG4gIGZvb3RlciBsaSxcbiAgZm9vdGVyIGJsb2NrcXVvdGUsXG4gIGZvb3RlciBoMSxcbiAgZm9vdGVyIGgyLFxuICBmb290ZXIgaDMsXG4gIGZvb3RlciBoNCxcbiAgZm9vdGVyIC5ibG9jay1ncmlkX190aXRsZSxcbiAgZm9vdGVyIGg1LFxuICBmb290ZXIgaDYge1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDsgfSB9XG5cbi5mb290ZXJfX3JvdyB7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgLmZvb3Rlcl9fcm93Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvb3Rlcl9fY3RhLWxpbmsge1xuICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG5cbi5idXR0b24tLWZvb3RlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiA5cHg7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDFlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmJ1dHRvbi0tZm9vdGVyIHtcbiAgICAgIHdpZHRoOiBjYWxjKCA1MCUgLSAxMHB4KTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgLmJ1dHRvbi0tZm9vdGVyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5idXR0b24tLWZvb3RlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuXG4uZm9vdGVyX19ibG9jayxcbi5mb290ZXJfX2Jsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMTdweDsgfVxuICAuZm9vdGVyX19ibG9jazpmaXJzdC1jaGlsZCxcbiAgLmZvb3Rlcl9fYmxvY2s6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDE3cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmZvb3Rlcl9fYmxvY2s6Zmlyc3QtY2hpbGQsXG4gICAgICAuZm9vdGVyX19ibG9jazpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuZm9vdGVyX19ibG9jayBwLFxuICAuZm9vdGVyX19ibG9jayBwIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5mb290ZXJfX2Jsb2NrLS1hZGRyZXNzIHtcbiAgICBtYXJnaW4tbGVmdDogNDBweDsgfSB9XG5cbi5mb290ZXJfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9XG5cbi5mb290ZXJfX3RhYmxlIHtcbiAgZGlzcGxheTogdGFibGU7IH1cbiAgLmZvb3Rlcl9fdGFibGUgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmZvb3Rlcl9fdGFibGUtcm93IHtcbiAgZGlzcGxheTogdGFibGUtcm93OyB9XG5cbi5mb290ZXJfX3RhYmxlLWNlbGwge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gIC5mb290ZXJfX3RhYmxlLWNlbGw6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9XG5cbi5uZWhjLWZsYWdzIGltZyB7XG4gIG1heC13aWR0aDogMzAlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5laGMtZmxhZ3MgaW1nIHtcbiAgICAgIG1heC13aWR0aDogNzUlOyB9IH1cblxuLmFja25vd2xlZGdlbWVudCB7XG4gIGZvbnQtc2l6ZTogMTJweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hY2tub3dsZWRnZW1lbnQge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmFja25vd2xlZGdlbWVudF9fcm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM0YTRhNGE7XG4gIHBhZGRpbmc6IDIwcHggMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hY2tub3dsZWRnZW1lbnRfX3JvdyB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7IH0gfVxuXG4ubm8tanMgI21haW4tbmF2LW1lbnUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uYXYtLXNvY2lhbCB7XG4gIHBhZGRpbmc6IDIwcHggMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAubmF2LS1zb2NpYWwgLmlubGluZS1saXN0IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLm5hdl9fdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDQzcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcmlnaHQ6IDIxcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDI0cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubmF2X190b2dnbGUge1xuICAgICAgdG9wOiA2OHB4OyB9IH1cblxuLnRvZ2dsZV9fbGluZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNzM4Mzk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLCBjb2xvciAwLjJzIGVhc2UtaW47IH1cbiAgLnRvZ2dsZV9fbGluZTpmaXJzdC1jaGlsZCB7XG4gICAgdG9wOiAwOyB9XG4gIC50b2dnbGVfX2xpbmU6bGFzdC1jaGlsZCB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDsgfVxuXG4ubmF2X190b2dnbGUtLWFjdGl2ZSAudG9nZ2xlX19saW5lIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5QTM1QTsgfVxuICAubmF2X190b2dnbGUtLWFjdGl2ZSAudG9nZ2xlX19saW5lOmZpcnN0LWNoaWxkLCAubmF2X190b2dnbGUtLWFjdGl2ZSAudG9nZ2xlX19saW5lOmxhc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMTFweDsgfVxuICAubmF2X190b2dnbGUtLWFjdGl2ZSAudG9nZ2xlX19saW5lOmZpcnN0LWNoaWxkIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgLm5hdl9fdG9nZ2xlLS1hY3RpdmUgLnRvZ2dsZV9fbGluZTpsYXN0LWNoaWxkIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5uYXZfX21lbnUsXG4ubmF2X19tZW51LmRyb3Bkb3duLm1lbnUge1xuICB6LWluZGV4OiA4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5uYXZfX21lbnUsXG4gICAgLm5hdl9fbWVudS5kcm9wZG93bi5tZW51IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLm5hdl9fbWVudSA+IGxpID4gYSxcbiAgLm5hdl9fbWVudS5kcm9wZG93bi5tZW51ID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm5hdl9fbWVudSA+IGxpID4gYSxcbiAgICAgIC5uYXZfX21lbnUuZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDYycHggMjBweDsgfSB9XG5cbi5uYXYtY29sdW1uIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5Nzk3OTc7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXYtY29sdW1uIHtcbiAgICAgIGJvcmRlcjogbm9uZTsgfSB9XG5cbi5tZW51IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZW51IGxpLmlzLWRyaWxsZG93bi1zdWJtZW51LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAjbWFpbi1uYXYtbWVudSAubmF2LW1haW4taXRlbS5jdXJyZW50LW1lbnUtYW5jZXN0b3IgYSwgI21haW4tbmF2LW1lbnUgLm5hdi1tYWluLWl0ZW0uY3VycmVudC1tZW51LWFuY2VzdG9yIGE6aG92ZXIsICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtLmN1cnJlbnQtbWVudS1hbmNlc3RvciBhOmZvY3VzLCAjbWFpbi1uYXYtbWVudSAubmF2LW1haW4taXRlbS5jdXJyZW50LW1lbnUtYW5jZXN0b3IgYTphY3RpdmUsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtLmN1cnJlbnQtbWVudS1pdGVtIGEsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtLmN1cnJlbnQtbWVudS1pdGVtIGE6aG92ZXIsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtLmN1cnJlbnQtbWVudS1pdGVtIGE6Zm9jdXMsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtLmN1cnJlbnQtbWVudS1pdGVtIGE6YWN0aXZlLFxuICAjbWFpbi1uYXYtbWVudSAubmF2LW1haW4taXRlbS5pcy1hY3RpdmUgYSxcbiAgI21haW4tbmF2LW1lbnUgLm5hdi1tYWluLWl0ZW0uaXMtYWN0aXZlIGE6aG92ZXIsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtLmlzLWFjdGl2ZSBhOmZvY3VzLFxuICAjbWFpbi1uYXYtbWVudSAubmF2LW1haW4taXRlbS5pcy1hY3RpdmUgYTphY3RpdmUsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtOmhvdmVyIGEsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtOmhvdmVyIGE6aG92ZXIsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtOmhvdmVyIGE6Zm9jdXMsXG4gICNtYWluLW5hdi1tZW51IC5uYXYtbWFpbi1pdGVtOmhvdmVyIGE6YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjsgfSB9XG5cbi5uYXYtbWFpbi1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5N0RBNDsgfVxuICAubmF2LW1haW4taXRlbSBhIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wNHB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5uYXYtbWFpbi1pdGVtIC5zdWJtZW51IGxpIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5uYXYtbWFpbi1pdGVtIC5zdWJtZW51IGxpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk3REE0OyB9XG4gICAgLm5hdi1tYWluLWl0ZW0gLnN1Ym1lbnUgbGk6aG92ZXIgYSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uYXYtbWFpbi1pdGVtIC5zdWJtZW51IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQUY2RkI7IH0gfVxuICAubmF2LW1haW4taXRlbS5jdXJyZW50LW1lbnUtaXRlbSwgLm5hdi1tYWluLWl0ZW0uY3VycmVudC1tZW51LWFuY2VzdG9yLCAubmF2LW1haW4taXRlbS5pcy1hY3RpdmUsIC5uYXYtbWFpbi1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWM4ZWJhOyB9XG4gICAgLm5hdi1tYWluLWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gYSwgLm5hdi1tYWluLWl0ZW0uY3VycmVudC1tZW51LWFuY2VzdG9yIGEsIC5uYXYtbWFpbi1pdGVtLmlzLWFjdGl2ZSBhLCAubmF2LW1haW4taXRlbTpob3ZlciBhIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5uYXYtbWFpbi1pdGVtIC5pcy1kcmlsbGRvd24tc3VibWVudSBsaSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE5N0RBNDsgfVxuICAgIC5uYXYtbWFpbi1pdGVtIC5pcy1kcmlsbGRvd24tc3VibWVudSBsaSBhIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLm5hdi1tYWluLWl0ZW0gLmlzLWRyaWxsZG93bi1zdWJtZW51IGxpOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzhlYmE7IH1cblxuLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmN1cnJlbnQtbWVudS1pdGVtLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlciwgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmN1cnJlbnQtbWVudS1hbmNlc3Rvci5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIsIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1hY3RpdmUuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOmFmdGVyLCAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGk6aG92ZXIuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmIHRyYW5zcGFyZW50OyB9XG5cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgLmlzLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm1lbnUgPiBsaS5qcy1kcmlsbGRvd24tYmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyX19zZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbi5zZWFyY2hmb3JtIC5zZWFyY2hfX3dyYXBwZXI6OmJlZm9yZSwgLnNlYXJjaGZvcm0gLnNlYXJjaF9fd3JhcHBlcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnOyB9XG5cbi5zZWFyY2hmb3JtIC5zZWFyY2hfX3dyYXBwZXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLnNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICB3aWR0aDogY2FsYyggMTAwJSAtIDQwcHgpO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5zZWFyY2hmb3JtIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDA7IH1cblxuLnNlYXJjaC1ib3gtLXBvcHVwIHtcbiAgd2lkdGg6IDMyMHB4O1xuICBtYXgtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTdEQTQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLCBtYXgtaGVpZ2h0IDAuMnMgZWFzZS1pbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgdG9wOiBjYWxjKCAxMDAlICsgMzBweCk7IH1cbiAgLnNlYXJjaC1ib3gtLXBvcHVwIGZvcm0ge1xuICAgIHBhZGRpbmc6IDI4cHg7IH1cbiAgICAuc2VhcmNoLWJveC0tcG9wdXAgZm9ybSBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE5QTM1QTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNlYXJjaC1ib3gge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk3REE0O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4sIG1heC1oZWlnaHQgMC4ycyBlYXNlLWluO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICB0b3A6IGNhbGMoIDEwMCUgKyAzMHB4KTtcbiAgICB0b3A6IDExN3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VhcmNoLWJveCBmb3JtIHtcbiAgICAgIHBhZGRpbmc6IDI4cHg7IH1cbiAgICAgIC5zZWFyY2gtYm94IGZvcm0gYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE5QTM1QTsgfSB9XG5cbi5zZWFyY2gtYm94LS1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAxMDtcbiAgbWF4LWhlaWdodDogNTAwcHg7IH1cblxuLnNlYXJjaF9fb3ZlcmxheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIHotaW5kZXg6IDk7IH1cblxuLmhlYWRlcl9fc2VhcmNoLWJ1dHRvbiB7XG4gIGNvbG9yOiAjMTk3REE0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5oZWFkZXJfX3NlYXJjaC1idXR0b24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1OC41cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICByaWdodDogODBweDtcbiAgICAgIHotaW5kZXg6IDEwOyB9IH1cblxuLmhlYWRlcl9fc2VhcmNoLWJ1dHRvbi0tc2VhcmNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAyNHB4OyB9XG5cbi5oZWFkZXJfX3NlYXJjaC1idXR0b24tLWNsb3NlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAyNHB4OyB9XG4gIC5oZWFkZXJfX3NlYXJjaC1idXR0b24tLWNsb3NlIC5zZWFyY2gtYnV0dG9uX19jbG9zZS1saW5lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk3REE0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDExcHg7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLCBjb2xvciAwLjJzIGVhc2UtaW47IH1cbiAgICAuaGVhZGVyX19zZWFyY2gtYnV0dG9uLS1jbG9zZSAuc2VhcmNoLWJ1dHRvbl9fY2xvc2UtbGluZTpmaXJzdC1jaGlsZCB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAuaGVhZGVyX19zZWFyY2gtYnV0dG9uLS1jbG9zZSAuc2VhcmNoLWJ1dHRvbl9fY2xvc2UtbGluZTpsYXN0LWNoaWxkIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cblxuLmhlYWRlcl9fc2VhcmNoLWJ1dHRvbi0taGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4jc2VhcmNoc3VibWl0IHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOUEzNUE7IH1cbiAgI3NlYXJjaHN1Ym1pdCAuc3ZnLWljb24ge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDsgfVxuXG4uY29udGVudC1ibG9jayB7XG4gIHBhZGRpbmc6IDI4cHggMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb250ZW50LWJsb2NrIHtcbiAgICAgIHBhZGRpbmc6IDQycHggMDsgfSB9XG4gIC5jb250ZW50LWJsb2NrLmludmVyc2UtY29sb3ItYmxvY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOTdEQTQ7IH1cbiAgICAuY29udGVudC1ibG9jay5pbnZlcnNlLWNvbG9yLWJsb2NrIGgxLCAuY29udGVudC1ibG9jay5pbnZlcnNlLWNvbG9yLWJsb2NrIGgyLCAuY29udGVudC1ibG9jay5pbnZlcnNlLWNvbG9yLWJsb2NrIGgzLCAuY29udGVudC1ibG9jay5pbnZlcnNlLWNvbG9yLWJsb2NrIGg0LCAuY29udGVudC1ibG9jay5pbnZlcnNlLWNvbG9yLWJsb2NrIC5ibG9jay1ncmlkX190aXRsZSwgLmNvbnRlbnQtYmxvY2suaW52ZXJzZS1jb2xvci1ibG9jayBoNSwgLmNvbnRlbnQtYmxvY2suaW52ZXJzZS1jb2xvci1ibG9jayBoNiB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5jb250ZW50LWJsb2NrLmludmVyc2UtY29sb3ItYmxvY2sgaDMge1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQzcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjg3cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmNvbnRlbnQtYmxvY2suaW52ZXJzZS1jb2xvci1ibG9jayBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjE0cHg7IH0gfVxuICAgIC5jb250ZW50LWJsb2NrLmludmVyc2UtY29sb3ItYmxvY2sgcCB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5jb250ZW50LWJsb2NrLmludmVyc2UtY29sb3ItYmxvY2sgLmludHJvLWNvbnRlbnQgcCB7XG4gICAgICBjb2xvcjogIzRhNGE0YTsgfVxuICAgIC5jb250ZW50LWJsb2NrLmludmVyc2UtY29sb3ItYmxvY2sgYSB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmNvbnRlbnQtYmxvY2suaW52ZXJzZS1jb2xvci1ibG9jayB1bCBsaSB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5jb250ZW50LWJsb2NrLmludmVyc2UtY29sb3ItYmxvY2sgLmJ1dHRvbi1ibG9jayBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuY29udGVudC1ibG9jayAuaW50cm8tY29udGVudCBwIHtcbiAgICBjb2xvcjogIzRhNGE0YTsgfVxuXG4uY29udGVudC1ibG9jay0tc2ltcGxlIHtcbiAgcGFkZGluZzogN3B4IDA7IH1cblxuLmNvbnRlbnQtYmxvY2stLWJvcmRlci1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuY29udGVudC1ibG9jay0tYm9yZGVyLWJvdHRvbTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzEzNUE3NjtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogODAlO1xuICAgIG1hcmdpbjogNDJweCBhdXRvIDA7IH1cblxuLmNvbnRlbnQtYmxvY2stLWdyaWQgaDIge1xuICBmb250LXNpemU6IDcycHg7XG4gIGxldHRlci1zcGFjaW5nOiAzLjA1cHg7XG4gIGxpbmUtaGVpZ2h0OiA5OHB4O1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICBmb250LWZhbWlseTogJ0xvcmEnLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICBibG9ja3F1b3RlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB3aWR0aDogMjVweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFOTI2OEI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDE0cHg7IH0gfVxuICBibG9ja3F1b3RlIHAge1xuICAgIGNvbG9yOiAjNGE0YTRhO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4ubWFzb25yeV9fYmxvY2ssXG4ubWFzb25yeV9fYmxvY2stLXNpemVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFzb25yeV9fYmxvY2ssXG4gICAgLm1hc29ucnlfX2Jsb2NrLS1zaXplciB7XG4gICAgICB3aWR0aDogNDclOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFzb25yeV9fYmxvY2ssXG4gICAgLm1hc29ucnlfX2Jsb2NrLS1zaXplciB7XG4gICAgICB3aWR0aDogMzElOyB9IH1cblxuLm1hc29ucnlfX2Jsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMjFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5tYXNvbnJ5X19ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cblxuLm1hc29ucnlfX2ltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5tYXNvbnJ5X19jb250ZW50IHtcbiAgcGFkZGluZzogMjFweDsgfVxuXG4uZnVsbC1yb3ctbGlzdF9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDE0cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZnVsbC1yb3ctbGlzdF9faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgLmZ1bGwtcm93LWxpc3RfX2l0ZW0gaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mdWxsLXJvdy1saXN0X19pdGVtIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uYmxvY2stZ3JpZF9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDI4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ibG9jay1ncmlkX19pdGVtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4uYmxvY2stZ3JpZF9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG5cbi5ibG9jay1ncmlkX190aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogN3B4OyB9XG5cbi5ncmlkLWJnLWltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDIyMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXgtd2lkdGg6IDEwMiU7XG4gIHdpZHRoOiAxMDIlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7IH1cblxuLmNvbnRlbnQtYmxvY2stLWdyaWQuaW52ZXJzZS1jb2xvci1ibG9jayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5jb250ZW50LWJsb2NrLS1ncmlkLmludmVyc2UtY29sb3ItYmxvY2sgaDEge1xuICAgIGNvbG9yOiAjMTk3REE0O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIC5jb250ZW50LWJsb2NrLS1ncmlkLmludmVyc2UtY29sb3ItYmxvY2sgaDQsIC5jb250ZW50LWJsb2NrLS1ncmlkLmludmVyc2UtY29sb3ItYmxvY2sgLmJsb2NrLWdyaWRfX3RpdGxlIHtcbiAgICBsZXR0ZXItc3BhY2luZzogLjk1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgLmNvbnRlbnQtYmxvY2stLWdyaWQuaW52ZXJzZS1jb2xvci1ibG9jayBwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAuY29udGVudC1ibG9jay0tZ3JpZC5pbnZlcnNlLWNvbG9yLWJsb2NrIC5jb250ZW50LWJsb2NrLWl0ZW0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy10b3A6IDI0MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk3REE0OyB9XG4gICAgLmNvbnRlbnQtYmxvY2stLWdyaWQuaW52ZXJzZS1jb2xvci1ibG9jayAuY29udGVudC1ibG9jay1pdGVtIC5idXR0b24tYmxvY2sge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbnRlbnQtYmxvY2stLWdyaWQuaW52ZXJzZS1jb2xvci1ibG9jayAuY29udGVudC1ibG9jay1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jb250ZW50LWJsb2NrLS1ncmlkLmludmVyc2UtY29sb3ItYmxvY2sgLmNvbnRlbnQtYmxvY2staXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuY29udGVudC1ibG9jay0tZ3JpZC5pbnZlcnNlLWNvbG9yLWJsb2NrIC5sYXJnZS11cC0zIC5jb250ZW50LWJsb2NrLWl0ZW0ge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAuY29udGVudC1ibG9jay0tZ3JpZC5pbnZlcnNlLWNvbG9yLWJsb2NrIC5sYXJnZS11cC0zIC5jb250ZW50LWJsb2NrLWl0ZW06bnRoLWNoaWxkKDJuICsyKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbnRlbnQtYmxvY2stLWdyaWQuaW52ZXJzZS1jb2xvci1ibG9jayAubGFyZ2UtdXAtMyAuY29udGVudC1ibG9jay1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0JTtcbiAgICAgICAgbWF4LXdpZHRoOiA0OCU7XG4gICAgICAgIGZsZXg6IDAgMCA0OCU7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuY29udGVudC1ibG9jay0tZ3JpZC5pbnZlcnNlLWNvbG9yLWJsb2NrIC5sYXJnZS11cC0zIC5jb250ZW50LWJsb2NrLWl0ZW0ge1xuICAgICAgICBmbGV4OiAwIDAgMzIlO1xuICAgICAgICBtYXgtd2lkdGg6IDMyJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTsgfVxuICAgICAgICAuY29udGVudC1ibG9jay0tZ3JpZC5pbnZlcnNlLWNvbG9yLWJsb2NrIC5sYXJnZS11cC0zIC5jb250ZW50LWJsb2NrLWl0ZW06bnRoLWNoaWxkKDJuICsyKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTsgfSB9XG4gICAgLmNvbnRlbnQtYmxvY2stLWdyaWQuaW52ZXJzZS1jb2xvci1ibG9jayAubGFyZ2UtdXAtMyAuY29udGVudC1ibG9jay1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDsgfVxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgei1pbmRleDogMDsgfVxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyazphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIHAsXG4gIC5iYW5uZXIuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIgc3BhbixcbiAgLmJhbm5lci5iYW5uZXItLW92ZXJsYXkuYmFubmVyLS1vdmVybGF5LWRhcmsgLmJhbm5lcl9fY29udGVudC1pbm5lciBsaSxcbiAgLmJhbm5lci5iYW5uZXItLW92ZXJsYXkuYmFubmVyLS1vdmVybGF5LWRhcmsgLmJhbm5lcl9fY29udGVudC1pbm5lciBibG9ja3F1b3RlLFxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGgxLFxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGgyLFxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGgzLFxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGg0LFxuICAuYmFubmVyLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIC5ibG9jay1ncmlkX190aXRsZSxcbiAgLmJhbm5lci5iYW5uZXItLW92ZXJsYXkuYmFubmVyLS1vdmVybGF5LWRhcmsgLmJhbm5lcl9fY29udGVudC1pbm5lciBoNSxcbiAgLmJhbm5lci5iYW5uZXItLW92ZXJsYXkuYmFubmVyLS1vdmVybGF5LWRhcmsgLmJhbm5lcl9fY29udGVudC1pbm5lciBoNiB7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJhbm5lci5iYW5uZXItLW92ZXJsYXkuYmFubmVyLS1vdmVybGF5LWxpZ2h0OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuYmFubmVyLS1uby1vdmVybGF5LXNtYWxsIC5iYW5uZXJfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9XG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwgLmJhbm5lcl9fY29udGVudC1pbm5lciB7XG4gICAgcGFkZGluZzogN3B4IDAgMCAwOyB9XG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwuYmFubmVyLS1vdmVybGF5OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIgcCxcbiAgLmJhbm5lci0tbm8tb3ZlcmxheS1zbWFsbC5iYW5uZXItLW92ZXJsYXkuYmFubmVyLS1vdmVybGF5LWRhcmsgLmJhbm5lcl9fY29udGVudC1pbm5lciBzcGFuLFxuICAuYmFubmVyLS1uby1vdmVybGF5LXNtYWxsLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGxpLFxuICAuYmFubmVyLS1uby1vdmVybGF5LXNtYWxsLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGJsb2NrcXVvdGUsXG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIgaDEsXG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIgaDIsXG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIgaDMsXG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIgaDQsXG4gIC5iYW5uZXItLW5vLW92ZXJsYXktc21hbGwuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIgLmJsb2NrLWdyaWRfX3RpdGxlLFxuICAuYmFubmVyLS1uby1vdmVybGF5LXNtYWxsLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGg1LFxuICAuYmFubmVyLS1uby1vdmVybGF5LXNtYWxsLmJhbm5lci0tb3ZlcmxheS5iYW5uZXItLW92ZXJsYXktZGFyayAuYmFubmVyX19jb250ZW50LWlubmVyIGg2IHtcbiAgICBjb2xvcjogIzQ3NDc0NzsgfSB9XG5cbi5iYW5uZXItLXNtYWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5iYW5uZXItLXNtYWxsIC5iYW5uZXJfX2NvbnRlbnQgPiAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmJhbm5lci0tY29udGVudC1yaWdodCAucm93IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5iYW5uZXItLWNvbnRlbnQtbGVmdCAucm93IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmJhbm5lci0tY29udGVudC1jZW50ZXIgLnJvdyB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJhbm5lci0tY29udGVudC1jZW50ZXIgLnJvdyAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjQ2ODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjQ2ODc1cmVtO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJhbm5lci0tY29udGVudC1jZW50ZXIgLnJvdyAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5iYW5uZXJfX2NvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxOyB9XG5cbi5iYW5uZXJfX2NvbnRlbnQtaW5uZXIge1xuICBwYWRkaW5nOiAzNXB4IDA7IH1cblxuLmJhbm5lcl9fY29udGVudC1pbm5lci0tYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDM1cHg7IH1cblxuLmdmb3JtX2ZpZWxkcyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gIG1hcmdpbi1yaWdodDogLTAuNDY4NzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC40Njg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nZm9ybV93cmFwcGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdmb3JtX3dyYXBwZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAuZ2Zvcm1fd3JhcHBlcjo6YmVmb3JlLCAuZ2Zvcm1fd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuZ2Zvcm1fd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5nZm9ybV9oZWFkaW5nLFxuLmdmb3JtX2Zvb3Rlcixcbi52YWxpZGF0aW9uX2Vycm9yIHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjQ2ODc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNDY4NzVyZW07IH1cbiAgLmdmb3JtX2hlYWRpbmc6OmJlZm9yZSwgLmdmb3JtX2hlYWRpbmc6OmFmdGVyLFxuICAuZ2Zvcm1fZm9vdGVyOjpiZWZvcmUsXG4gIC5nZm9ybV9mb290ZXI6OmFmdGVyLFxuICAudmFsaWRhdGlvbl9lcnJvcjo6YmVmb3JlLFxuICAudmFsaWRhdGlvbl9lcnJvcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuZ2Zvcm1faGVhZGluZzo6YWZ0ZXIsXG4gIC5nZm9ybV9mb290ZXI6OmFmdGVyLFxuICAudmFsaWRhdGlvbl9lcnJvcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdmb3JtX2hlYWRpbmcsXG4gICAgLmdmb3JtX2Zvb3RlcixcbiAgICAudmFsaWRhdGlvbl9lcnJvciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nZm9ybV9oZWFkaW5nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIC5nZm9ybV9mb290ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLnZhbGlkYXRpb25fZXJyb3I6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5nZm9ybV9oZWFkaW5nLCAuZ2Zvcm1faGVhZGluZzpsYXN0LWNoaWxkLFxuICAuZ2Zvcm1fZm9vdGVyLFxuICAuZ2Zvcm1fZm9vdGVyOmxhc3QtY2hpbGQsXG4gIC52YWxpZGF0aW9uX2Vycm9yLFxuICAudmFsaWRhdGlvbl9lcnJvcjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuXG4uZ2ZpZWxkIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMC40Njg3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjQ2ODc1cmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2ZpZWxkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdmaWVsZCBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDdweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nZmllbGQuaGFsZiB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjQ2ODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjQ2ODc1cmVtO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2ZpZWxkLmhhbGYge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAud2lkZ2V0IC5nZmllbGQuaGFsZiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNDY4NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjQ2ODc1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAud2lkZ2V0IC5nZmllbGQuaGFsZiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2ZpZWxkIFt0eXBlPVwidGV4dFwiXSxcbiAgLmdmaWVsZCBbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAuZ2ZpZWxkIFt0eXBlPVwiZGF0ZVwiXSxcbiAgLmdmaWVsZCBbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAuZ2ZpZWxkIFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5nZmllbGQgW3R5cGU9XCJtb250aFwiXSxcbiAgLmdmaWVsZCBbdHlwZT1cIndlZWtcIl0sXG4gIC5nZmllbGQgW3R5cGU9XCJlbWFpbFwiXSxcbiAgLmdmaWVsZCBbdHlwZT1cIm51bWJlclwiXSxcbiAgLmdmaWVsZCBbdHlwZT1cInNlYXJjaFwiXSxcbiAgLmdmaWVsZCBbdHlwZT1cInRlbFwiXSxcbiAgLmdmaWVsZCBbdHlwZT1cInRpbWVcIl0sXG4gIC5nZmllbGQgW3R5cGU9XCJ1cmxcIl0sXG4gIC5nZmllbGQgW3R5cGU9XCJjb2xvclwiXSxcbiAgLmdmaWVsZCB0ZXh0YXJlYSxcbiAgLmdmaWVsZCBzZWxlY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmdmaWVsZCAuaW5zdHJ1Y3Rpb24ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cblxuLmdzZWN0aW9uX3RpdGxlIHtcbiAgcGFkZGluZy1ib3R0b206IDE0cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMTlBMzVBOyB9XG5cbi5nZmllbGRfcmFkaW8gbGksXG4uZ2ZpZWxkX2NoZWNrYm94IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5nZmllbGRfcmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IC0xOyB9XG5cbi5nZmllbGRfcmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTlBMzVBOyB9XG5cbi5nZmllbGRfcmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGxlZnQ6IDVweDsgfVxuXG4uZ2ZpZWxkX3JhZGlvIGxhYmVsIHtcbiAgbWluLWhlaWdodDogMzBweDtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwYWRkaW5nLXRvcDogMnB4O1xuICBtYXJnaW46IDA7IH1cbiAgLmdmaWVsZF9yYWRpbyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2UtaW47IH1cblxuLmdmaWVsZF9jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7IH1cblxuLmdmaWVsZF9jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvdGljay5zdmcpIG5vLXJlcGVhdCB0cmFuc3BhcmVudCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDhweCA4cHg7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTlBMzVBOyB9XG5cbi5nZmllbGRfY2hlY2tib3ggbGFiZWwge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctdG9wOiAycHg7XG4gIG1hcmdpbjogMDsgfVxuICAuZ2ZpZWxkX2NoZWNrYm94IGxhYmVsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTFweDtcbiAgICB0b3A6IDdweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLWluOyB9XG5cbi5nZmllbGRfcmVxdWlyZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMnB4O1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4udmFsaWRhdGlvbl9lcnJvciB7XG4gIGNvbG9yOiAjY2M0YjM3O1xuICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG5cbi52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODI1LCAxNjMsIDkwJTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICAuY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuZ2Zvcm1fd3JhcHBlciAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9yaWdodCxcbiAgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IC5naW5wdXRfbGVmdCB7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbi5nYWxsZXJ5X19pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cblxuLm93bC1kb3RzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTRweCAwOyB9XG5cbi5vd2wtZG90IHtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5N0RBNDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgN3B4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbjsgfVxuICAub3dsLWRvdC5hY3RpdmUsIC5vd2wtZG90OmZvY3VzLCAub3dsLWRvdDphY3RpdmUsIC5vd2wtZG90OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTlBMzVBOyB9XG5cbi53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gIC53aWRnZXQgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7IH1cblxuLmJyZWFkY3J1bWJzLXdyYXBwZXIge1xuICBwYWRkaW5nOiAxNHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cblxuLnNvY2lhbC1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMTk3REE0O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UtaW47IH1cbiAgLnNvY2lhbC1pY29uIC5zdmctaWNvbiB7XG4gICAgdHJhbnNpdGlvbjogZmlsbCAwLjJzIGVhc2UtaW47IH1cbiAgLnNvY2lhbC1pY29uOmhvdmVyLCAuc29jaWFsLWljb246Zm9jdXMsIC5zb2NpYWwtaWNvbjphY3RpdmUge1xuICAgIGNvbG9yOiAjMTlBMzVBOyB9XG4gICAgLnNvY2lhbC1pY29uOmhvdmVyIC5zdmctaWNvbiwgLnNvY2lhbC1pY29uOmZvY3VzIC5zdmctaWNvbiwgLnNvY2lhbC1pY29uOmFjdGl2ZSAuc3ZnLWljb24ge1xuICAgICAgZmlsbDogIzE5QTM1QTsgfVxuICAuc29jaWFsLWljb24gLnN2Zy1pY29uIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuICAuZm9vdGVyX19yb3cgLnNvY2lhbC1pY29uIHtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuc29jaWFsLWljb24uc29jaWFsLWljb24tLXR3aXR0ZXIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuc29jaWFsLWljb24uc29jaWFsLWljb24tLXR3aXR0ZXI6aG92ZXIgLnN2Zy1pY29uIHtcbiAgICAgIGZpbGw6ICMzOEExRjM7IH1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQ6OmJlZm9yZSwgLmFjY29yZGlvbi1jb250ZW50OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7IH1cblxuLmFjY29yZGlvbi1jb250ZW50OjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIGNvbG9yOiAjNGE0YTRhO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzEzNUE3NjsgfVxuICAgIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzRhNGE0YTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmc6IGVhc2UtaW4tb3V0O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWcvYWNjb3JkaW9uLXBsdXMuc3ZnXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxOHB4IDE4cHg7XG4gICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICB3aWR0aDogMThweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDU3cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNzBweDsgfVxuICAgICAgICAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAxMXB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMxcHggMzFweDtcbiAgICAgICAgICBoZWlnaHQ6IDMxcHg7XG4gICAgICAgICAgd2lkdGg6IDMxcHg7IH0gfVxuICAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7IH1cbiAgICAgICAgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQycHg7IH0gfVxuICAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGNvbG9yOiAjNGE0YTRhO1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMTM1QTc2OyB9XG5cbi5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIGFuaW1hdGlvbjogM3M7XG4gIGNvbnRlbnQ6ICcnO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWcvYWNjb3JkaW9uLW1pbnVzLnN2Z1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMThweCAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIHdpZHRoOiAxOHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gMTFweCk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMxcHggMzFweDtcbiAgICAgIGhlaWdodDogMzFweDtcbiAgICAgIHdpZHRoOiAzMXB4OyB9IH1cblxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMTM1QTc2OyB9XG5cbi5uZWhjX3NpZGViYXIgaDIge1xuICBjb2xvcjogIzEzNUE3NjtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBsaW5lLWhlaWdodDogMzNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMDJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDA7IH1cblxuLm5laGNfc2lkZWJhciAuZ2ZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubmVoY19zaWRlYmFyIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmVoY19zaWRlYmFyIGlucHV0W3R5cGU9ZW1haWxdLFxuLm5laGNfc2lkZWJhciBpbnB1dFt0eXBlPWVtYWlsXSB7XG4gIHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG4ubmVoY19zaWRlYmFyIGlucHV0W3R5cGU9ZW1haWxdLFxuLm5laGNfc2lkZWJhciBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNTBweDsgfVxuXG4ubmVoY19zaWRlYmFyIC5jb250ZW50LWJsb2NrLS11c2VmdWwtbGlua3Mge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIC5uZWhjX3NpZGViYXIgLmNvbnRlbnQtYmxvY2stLXVzZWZ1bC1saW5rcyBhIHtcbiAgICBjb2xvcjogIzQ3NDc0NztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjc2cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLm5laGNfc2lkZWJhciAuY29udGVudC1ibG9jay0tc2ltcGxlIHtcbiAgcGFkZGluZzogMDsgfVxuICAubmVoY19zaWRlYmFyIC5jb250ZW50LWJsb2NrLS1zaW1wbGUgaW1nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuXG4uY29udGVudC1ibG9jay0tdGVzdGltb25pYWxzLWxpc3Qge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICAuY29udGVudC1ibG9jay0tdGVzdGltb25pYWxzLWxpc3QuY29udGVudC1ibG9jay0taGFzLWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiA0MnB4OyB9XG5cbi5yb3ctdGVzdGltb25pYWwge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzEzNUE3NjtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucm93LXRlc3RpbW9uaWFsIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1NXB4O1xuICAgICAgcGFkZGluZy10b3A6IDU1cHg7IH0gfVxuICAucm93LXRlc3RpbW9uaWFsLmxhc3QtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4udGVzdGltb25pYWxfX2ltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi50ZXN0aW1vbmlhbF9faGVhZGluZyB7XG4gIGNvbG9yOiAjNDc0NzQ3O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICBsZXR0ZXItc3BhY2luZzogLjY1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi50ZXN0aW1vbmlhbF9fZGVzY3JpcHRpb24ge1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzEzNUE3NjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC45NXB4O1xuICBmb250LWZhbWlseTogJ0xvcmEnLCBzZXJpZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50ZXN0aW1vbmlhbF9fZGVzY3JpcHRpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxLjE0cHg7IH0gfVxuXG4ubWVtYmVyIHAge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDA7XG4gIGNvbG9yOiAjNGE0YTRhO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICBsZXR0ZXItc3BhY2luZzogLjU0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLnBvc3RzLWxpc3Qge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICAucG9zdHMtbGlzdCBoMiB7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICAgIGNvbG9yOiAjMTM1QTc2O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLnBvc3RzLWxpc3RfX3Bvc3Qge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIC5wb3N0cy1saXN0X19wb3N0IGgyIHtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnBvc3RzLWxpc3RfX3Bvc3QgaDIgYSB7XG4gICAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogIzRhNGE0YTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC42OHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5wb3N0X19pbmZvIHtcbiAgbWFyZ2luLWJvdHRvbTogN3B4OyB9XG4gIC5wb3N0X19pbmZvOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDIxcHg7IH1cbiAgLnBvc3RfX2luZm8gLmJ1dHRvbi5wcmltYXJ5LnNtYWxsIHtcbiAgICBwYWRkaW5nOiA1cHggMjVweDsgfVxuXG4uc2luZ2xlLXBvc3QgaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmJvZHkuaG9tZSBoMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAjRUQxQzhCO1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBsZXR0ZXItc3BhY2luZzogLjg3cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNnB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgYm9keS5ob21lIGgxIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQ0cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMS4xNHB4OyB9IH1cblxuYm9keS5ob21lIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgYm9keS5ob21lIGgyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9IH1cblxuYm9keS5ob21lIGgzIHtcbiAgY29sb3I6ICMxOTdEQTQ7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjdweDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsZXR0ZXItc3BhY2luZzogLjk1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBib2R5LmhvbWUgaDMge1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxLjE0cHg7IH0gfVxuXG5ib2R5LmhvbWUgLmNvbnRlbnQtYmxvY2stLWdhbGxlcnkge1xuICBwYWRkaW5nOiAwOyB9XG4gIGJvZHkuaG9tZSAuY29udGVudC1ibG9jay0tZ2FsbGVyeSAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuYm9keS5ob21lIC5jb250ZW50LWJsb2NrLS1ob21lLWludHJvZHVjdGlvbiB7XG4gIHBhZGRpbmc6IDIuNjI1cmVtIDAgMDsgfVxuICBib2R5LmhvbWUgLmNvbnRlbnQtYmxvY2stLWhvbWUtaW50cm9kdWN0aW9uIHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LmhvbWUgLmNvbnRlbnQtYmxvY2stLWdyaWQgLmJsb2NrLWdyaWRfX2l0ZW0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbjtcbiAgYm94LXNoYWRvdzogMnB4IDJweCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogOHB4OyB9XG4gIGJvZHkuaG9tZSAuY29udGVudC1ibG9jay0tZ3JpZCAuYmxvY2stZ3JpZF9faXRlbTpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogNHB4IDRweCAxMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBib2R5LmhvbWUgLmNvbnRlbnQtYmxvY2stLWdyaWQgLmJsb2NrLWdyaWRfX2l0ZW0ge1xuICAgICAgbWFyZ2luOiAxJTtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBtYXgtd2lkdGg6IDMxJTtcbiAgICAgIGZsZXg6IDAgMCAzMSU7IH0gfVxuXG5ib2R5LmhvbWUgLmNvbnRlbnQtYmxvY2stLWdyaWQgaDMge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICBsZXR0ZXItc3BhY2luZzogMC43NnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG5ib2R5LmhvbWUgLmNvbnRlbnQtYmxvY2stLWdyaWQgcCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuXG5ib2R5LmhvbWUgLmNvbnRlbnQtYmxvY2stLWdyaWQgLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNXB4O1xuICBsZWZ0OiAzMHB4O1xuICByaWdodDogMzBweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG5cbmJvZHkuaG9tZSAub3dsLWNhcm91c2VsIC5iYW5uZXItcGFuZWwge1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gIGJvZHkuaG9tZSAub3dsLWNhcm91c2VsIC5iYW5uZXItcGFuZWwgaDMge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBjb2xvcjogIzEzNUE3NjsgfVxuICBib2R5LmhvbWUgLm93bC1jYXJvdXNlbCAuYmFubmVyLXBhbmVsIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0OyB9XG4gIGJvZHkuaG9tZSAub3dsLWNhcm91c2VsIC5iYW5uZXItcGFuZWwgLmNvbHVtbnMge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGJvZHkuaG9tZSAub3dsLWNhcm91c2VsIC5iYW5uZXItcGFuZWwgLmNvbHVtbnMge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBib2R5LmhvbWUgLm93bC1jYXJvdXNlbCAuYmFubmVyLXBhbmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keS5ob21lIC5vd2wtY2Fyb3VzZWwgLmJhbm5lci1wYW5lbCB7XG4gICAgICB0b3A6IDkwcHg7IH0gfVxuXG4uY29udGFjdC1wYWdlIC5jb250ZW50LWJsb2NrIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5jb250YWN0LXBhZ2UgLmNvbnRlbnQtYmxvY2sgLmNvbnRlbnQtYmxvY2stLXNpbXBsZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAuY29udGFjdC1wYWdlIC5jb250ZW50LWJsb2NrIGgyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBmb250LXNpemU6IDQycHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMTRweDtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG5cbi5jb250YWN0LWltYWdlIHtcbiAgcGFkZGluZzogMDsgfVxuXG4uc3R5bGVndWlkZS1zZWN0aW9uIHtcbiAgcGFkZGluZzogMzBweCAwOyB9XG4gIC5zdHlsZWd1aWRlLXNlY3Rpb246OmJlZm9yZSwgLnN0eWxlZ3VpZGUtc2VjdGlvbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuc3R5bGVndWlkZS1zZWN0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnN0eWxlZ3VpZGUtc2VjdGlvbl9fdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5kZWJ1Zy1tb2RlLW9uIC5jdXJyZW50LWJyZWFrcG9pbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdG9tYXRvO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTk5OyB9XG5cbi5jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5jb250YWluZXIgcCB7XG4gICAgY29sb3I6ICM0NzQ3NDc7IH1cblxuI2Fib3V0LXJlc3BpbiB7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtYXR0cmlidXRlLW5lc3RpbmcsIGZvcmNlLXBzZXVkby1uZXN0aW5nLCBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IGZhbHNlICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJHNlY29uZGFyeS1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG4kc3VjY2Vzcy1jb2xvcjogZ2V0LWNvbG9yKHN1Y2Nlc3MpO1xuJHdhcm5pbmctY29sb3I6IGdldC1jb2xvcih3YXJuaW5nKTtcbiRhbGVydC1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIC16Zi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZvcm1zXG4vLyAgMjAuIExhYmVsXG4vLyAgMjEuIE1lZGlhIE9iamVjdFxuLy8gIDIyLiBNZW51XG4vLyAgMjMuIE1ldGVyXG4vLyAgMjQuIE9mZi1jYW52YXNcbi8vICAyNS4gT3JiaXRcbi8vICAyNi4gUGFnaW5hdGlvblxuLy8gIDI3LiBQcm9ncmVzcyBCYXJcbi8vICAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDI5LiBSZXZlYWxcbi8vICAzMC4gU2xpZGVyXG4vLyAgMzEuIFN3aXRjaFxuLy8gIDMyLiBUYWJsZVxuLy8gIDMzLiBUYWJzXG4vLyAgMzQuIFRodW1ibmFpbFxuLy8gIDM1LiBUaXRsZSBCYXJcbi8vICAzNi4gVG9vbHRpcFxuLy8gIDM3LiBUb3AgQmFyXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCk7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE5N0RBNCxcbiAgc2Vjb25kYXJ5OiAjMTlBMzVBLFxuICB0ZXJ0aWFyeTogI0U5MjY4QixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pO1xuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XG4kbWVkaXVtLWdyYXk6ICM5Nzk3OTc7XG4kZGFyay1ncmF5OiAjMzczODM5O1xuJGJsYWNrOiAjMGEwYTBhO1xuJHdoaXRlOiAjZmVmZWZlO1xuJGJvZHktYmFja2dyb3VuZDogI0VDRUNFQztcbiRib2R5LWZvbnQtY29sb3I6ICMzMzM7XG4kYm9keS1mb250LWZhbWlseTogJ09wZW4gU2FucycsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogZmFsc2U7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgdGFibGV0OiA3NjhweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIHRhYmxldCBsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMTVweCxcbiAgbWVkaXVtOiAzMHB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDIpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMzQpLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApXG4pO1xuXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjQ7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG5cbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG5cbi8vIDguIEFjY29yZGlvbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjaztcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDogdHJ1ZTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAzNXB4O1xuJGJ1dHRvbi1tYXJnaW46IDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiA0OHB4O1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKTtcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcblxuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG5cbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kY2FyZC1zaGFkb3c6IG5vbmU7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRjYXJkLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRkYXJrLWdyYXk7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiBmYWxzZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogI0VBRjZGQjtcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiBub25lO1xuXG5cbi8vIDE5LiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuJGlucHV0LXNoYWRvdzogbm9uZTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IG5vbmU7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjAuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMi4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbTtcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW07XG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRtZW51LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG5cbi8vIDIzLiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjQuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemU6IDI1MHB4O1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDE7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMDtcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjUuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNi4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG5cbi8vIDI3LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjguIFJlc3BvbnNpdmUgRW1iZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyAyOS4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG5cbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XG5cbi8vIDMwLiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAzMS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDMyLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG5cbi8vIDMzLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gMzQuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM1LiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyAzNi4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzcuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJzsgICAgXG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlIG9yIGJyZWFrcG9pbnQgbmFtZSB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksIGxlZnQpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgJ2xlZnQnOiBmbGV4LXN0YXJ0LFxuICAncmlnaHQnOiBmbGV4LWVuZCxcbiAgJ2NlbnRlcic6IGNlbnRlcixcbiAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuKTtcblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGZvciB0aGlzIHJvdy4gSWYgc2V0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpLCB0aGUgZ2xvYmFsIGNvbHVtbiBjb3VudCB3aWxsIGJlIHVzZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IGJhc2ljIHN0eWxlcyBmcm9tIGJlaW5nIG91dHB1dC4gVXNlZnVsIGlmIHlvdSdyZSBjYWxsaW5nIHRoaXMgbWl4aW4gb24gdGhlIHNhbWUgZWxlbWVudCB0d2ljZSwgYXMgaXQgcHJldmVudHMgZHVwbGljYXRlIENTUyBvdXRwdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmFzZTogdHJ1ZSxcbiAgJHdyYXA6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgJHdyYXA7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zLCAkYmFzZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBgZmxleGAgcHJvcGVydHkgZm9yIGEgZmxleCBncmlkIGNvbHVtbi4gSXQgYWNjZXB0cyBhbGwgb2YgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBiYXNpYyBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIGFsb25nIHdpdGggdHdvIGV4dHJhczpcbi8vLyAgIC0gYGV4cGFuZGAgKHRoZSBkZWZhdWx0KSB3aWxsIG1ha2UgdGhlIGNvbHVtbiBleHBhbmQgdG8gZmlsbCBzcGFjZS5cbi8vLyAgIC0gYHNocmlua2Agd2lsbCBtYWtlIHRoZSBjb2x1bW4gY29udHJhY3QsIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIGhvcml6b250YWwgc3BhY2UgaXQgbmVlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogZXhwYW5kKSB7XG4gICRmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuXG4gIEBpZiAkY29sdW1ucyA9PSBzaHJpbmsge1xuICAgICRmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAkY29sdW1ucyAhPSBleHBhbmQge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuLy8vIENyZWF0ZXMgYSBjb2x1bW4gZm9yIGEgZmxleCBncmlkLiBCeSBkZWZhdWx0LCB0aGUgY29sdW1uIHdpbGwgc3RyZXRjaCB0byB0aGUgZnVsbCB3aWR0aCBvZiBpdHMgY29udGFpbmVyLCBidXQgdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHNpemluZyBjbGFzc2VzLCBvciBieSB1c2luZyB0aGUgYHVuc3RhY2tgIGNsYXNzIG9uIHRoZSBwYXJlbnQgZmxleCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNlIGJldHdlZW4gY29sdW1ucywgYWRkZWQgYXMgYSBsZWZ0IGFuZCByaWdodCBwYWRkaW5nLlxuQG1peGluIGZsZXgtZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiBleHBhbmQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgLy8gQmFzZSBwcm9wZXJ0aWVzXG4gIEBpbmNsdWRlIGZsZXgtZ3JpZC1zaXplKCRjb2x1bW5zKTtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIGZpeGVzIHJlY2VudCBDaHJvbWUgdmVyc2lvbiBub3QgbGltaXRpbmcgY2hpbGQgd2lkdGhcbiAgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzQ5MzQ1ODYvd2hpdGUtc3BhY2Utbm93cmFwLWFuZC1mbGV4Ym94LWRpZC1ub3Qtd29yay1pbi1jaHJvbWVcbiAgQGlmICRjb2x1bW5zID09IGV4cGFuZCB7XG4gICAgbWluLXdpZHRoOiBpbml0aWFsO1xuICB9XG4gIC8vIG1heC13aWR0aCBmaXhlcyBJRSAxMC8xMSBub3QgcmVzcGVjdGluZyB0aGUgZmxleC1iYXNpcyBwcm9wZXJ0eVxuICBAaWYgJGNvbHVtbnMgIT0gZXhwYW5kIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgYmxvY2sgZ3JpZCBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gZGlzcGxheSBvbiBlYWNoIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIC0gU2VsZWN0b3IgdG8gdXNlIHRvIHRhcmdldCBjb2x1bW5zIHdpdGhpbiB0aGUgcm93LlxuQG1peGluIGZsZXgtZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJ1xuKSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgJHBjdDogcGVyY2VudGFnZSgxLyRuKTtcblxuICAgIGZsZXg6IDAgMCAkcGN0O1xuICAgIG1heC13aWR0aDogJHBjdDtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgd2lkdGggZmxleCBncmlkIGNvbHVtbi5cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGZsZXgtZ3JpZC1zaXplKCRjb2x1bW5zOiBudWxsKSB7XG4gICRjb2x1bW5zOiAkY29sdW1ucyBvciBleHBhbmQ7XG5cbiAgZmxleDogZmxleC1ncmlkLWNvbHVtbigkY29sdW1ucyk7XG5cbiAgLy8gbWF4LXdpZHRoIGZpeGVzIElFIDEwLzExIG5vdCByZXNwZWN0aW5nIHRoZSBmbGV4LWJhc2lzIHByb3BlcnR5XG4gIEBpZiAkY29sdW1ucyAhPSBleHBhbmQgYW5kICRjb2x1bW5zICE9IHNocmluayB7XG4gICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG4gIH1cbn1cblxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWdyaWQge1xuICAvLyBSb3dcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdztcblxuICAgIC8vIE5lc3RpbmcgYmVoYXZpb3JcbiAgICAmIC5yb3cge1xuICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdyhuZXN0LCAkYmFzZTogZmFsc2UpO1xuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIHJvd1xuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW5kbyBuZWdhdGl2ZSBtYXJnaW5zXG4gICAgLy8gRnJvbSBjb2xsYXBzZWQgY2hpbGRcbiAgICAmLmlzLWNvbGxhcHNlLWNoaWxkLFxuICAgICYuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLmNvbHVtbiB7XG4gICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbjtcbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuY29sdW1uLnJvdy5yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG5cbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGkpO1xuICAgICAgICBtYXgtd2lkdGg6IGdyaWQtY29sdW1uKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNiB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtbGF5b3V0KCRpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC8vIFNpemluZyAoZXhwYW5kKVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXNpemUpIHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS1leHBhbmQge1xuICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBkaXJlY3Rpb24gaGVscGVyIGNsYXNzZXNcbiAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAuI3skLXpmLXNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gY2hpbGQgaGVscGVyIGNsYXNzZXNcbiAgICAgIC4jeyQtemYtc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICB9XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICB9XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIH1cblxuICAgICAgLy8gQXV0by1zdGFja2luZy91bnN0YWNraW5nXG4gICAgICBAYXQtcm9vdCAod2l0aG91dDogbWVkaWEpIHtcbiAgICAgICAgLnJvdy4jeyQtemYtc2l6ZX0tdW5zdGFjayB7XG4gICAgICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oMTAwJSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LWNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS11bmNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkLXpmLXNpemUpOyB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6aW5nIChzaHJpbmspXG4gIC5zaHJpbmsge1xuICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oc2hyaW5rKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuY29sdW1ucyB7XG4gICAgQGV4dGVuZCAuY29sdW1uOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRiYXNlLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuLy8gQ29udmVydHMgYSB1bml0bGVzcywgcGl4ZWwsIG9yIHJlbSB2YWx1ZSB0byBlbSwgZm9yIHVzZSBpbiBicmVha3BvaW50cy5cbkBmdW5jdGlvbiAtemYtYnAtdG8tZW0oJHZhbHVlKSB7XG4gIC8vIFBpeGVsIGFuZCB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byByZW1zXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyBvciB1bml0bGVzcygkdmFsdWUpIHtcbiAgICAkdmFsdWU6IHJlbS1jYWxjKCR2YWx1ZSwgJGJhc2U6IDE2cHgpO1xuICB9XG5cbiAgLy8gVGhlbiB0aGUgdmFsdWUgaXMgY29udmVydGVkIHRvIGVtc1xuICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFlbTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gQmFzZSBmb3IgcGl4ZWwgY29udmVyc2lvbi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpICE9ICdudW1iZXInIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsLCBwZXJjZW50YWdlLCByZW0gb3IgZW0gdmFsdWUgdG8gYSB1bml0bGVzcyB2YWx1ZSBiYXNlZCBvbiBhIGdpdmVuIGZvbnQgc2l6ZS4gSWRlYWwgZm9yIHdvcmtpbmcgb3V0IHVuaXRsZXNzIGxpbmUgaGVpZ2h0cy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0IHRvIGEgdW5pdGxlc3MgbGluZSBoZWlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgZm9udCBzaXplIHRvIHVzZSB0byB3b3JrIG91dCB0aGUgbGluZSBoZWlnaHQgLSBkZWZhdWx0cyB0byAkZ2xvYmFsLWZvbnQtc2l6ZVxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHVuaXRsZXNzLWNhbGMoJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIEZpcnN0LCBsZXRzIGNvbnZlcnQgb3VyICRiYXNlIHRvIHBpeGVsc1xuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0cyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXJuIHRoZW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtblxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRndXR0ZXIgW2F1dG9dXG4vLy8gICBTcGFjaW5nIGJldHdlZW4gY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJGd1dHRlcnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIGd1dHRlciByZXNwb25zaXZlLCB1c2luZyB0aGUgJGd1dHRlcnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGd1dHRlciwgJGd1dHRlcnMpIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gVW4tY29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmUtYWRkaW5nIHRoZSBwYWRkaW5nLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sdW1uLWd1dHRlcigpLiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVuY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZ3JpZC1jb2wtZ3V0dGVyKCkuIGdyaWQtY29sLXVuY29sbGFwc2UoKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyKTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBzdHJpbmcgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIERpcmVjdGlvbiBhbmQgYW1vdW50IHRvIG1vdmUuIFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50IHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZSBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuIFNldCB0byBjZW50ZXIgdG8gY2VudGVyIHRoZSBjb2x1bW4uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIG9yIGNlbnRlci4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIFVzZSB0byByZW1vdmUgdGhlIGJ1bGxldHMgZnJvbSBhbiB1bm9yZGVyZWQgbGlzdFxuICAubm8tYnVsbGV0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcblxuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJHByaW1hcnktY29sb3IsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgY29sb3I6ICRidXR0b24tY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAkZm9ybS1zcGFjaW5nICogMS41KTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIpO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gKDEgLyAxNik7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAoMSAvIDE2KTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfigJMnO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFkY3J1bWJzXG4vLy8vXG5cbi8vLyBNYXJnaW4gYXJvdW5kIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGFjdGl2ZSBicmVhZGNydW1iIGxpbmsuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIE9wYWNpdHkgb2YgZGlzYWJsZWQgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBicmVhZGNydW1iIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBtYWtlcyBicmVhZGNydW1iIGxpbmtzIHVwcGVyY2FzZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgYSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBicmVhZGNydW1icyBjb250YWluZXIsIGFsb25nIHdpdGggdGhlIHN0eWxlcyBmb3IgdGhlIGA8bGk+YCBhbmQgYDxhPmAgZWxlbWVudHMgaW5zaWRlIG9mIGl0LlxuQG1peGluIGJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRicmVhZGNydW1icy1tYXJnaW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLy8gSXRlbSB3cmFwcGVyXG4gIGxpIHtcbiAgICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2xhc2g6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICcvJywgJ1xcXFwnKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIG1hcmdpbjogMCAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG5cbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29udGVudDogJHNsYXNoO1xuICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnJlYWRjcnVtYnMge1xuICAuYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGJyZWFkY3J1bWJzLWNvbnRhaW5lcjtcblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBBcHBsaWVkIHRvIG5lc3RlZCA8dWw+c1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgIH1cbiAgfVxuXG4gIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcmlsbGRvd24tYXJyb3ctc2l6ZTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG5cbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBmb3IgYm9yZGVyZWQgbWVudVxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBtYXJnaW46ICRtZW51LW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXMgYXJlIHRhYmxlIGNlbGwgdG8gYWxsb3cgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJhbGwgaXRlbSBlYXNpZXIgdG8gY2FsY3VsYXRlXG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cblxuICA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgPiBsaSAgPiBhIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbkBtaXhpbiBtZW51LXNpbXBsZSB7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IGdldC1zaWRlKCRtZW51LWl0ZW0tcGFkZGluZywgJGdsb2JhbC1yaWdodCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHBhZGRpbmcgW2F1dG9dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG5AbWl4aW4gbWVudS1uZXN0ZWQoJG1hcmdpbjogJG1lbnUtbWFyZ2luLW5lc3RlZCkge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xufVxuXG4vLy8gQWRkcyBzdXBwb3J0IGZvciBpY29ucyB0byBNZW51IGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHBvc2l0aW9uIFtzaWRlXSAtIFBvc2l0aW9uaW5nIGZvciBpY29ucy4gQ2FuIGJlIGBzaWRlYCAobGVmdCwgb3IgcmlnaHQgb24gUlRMKSBvciBgdG9wYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRiYXNlIFt0cnVlXSAtIFNldCB0byBgZmFsc2VgIHRvIHByZXZlbnQgdGhlIHNoYXJlZCBDU1MgYmV0d2VlbiBzaWRlLSBhbmQgdG9wLWFsaWduZWQgaWNvbnMgZnJvbSBiZWluZyBwcmludGVkLiBTZXQgdGhpcyB0byBgZmFsc2VgIGlmIHlvdSdyZSBjYWxsaW5nIHRoZSBtaXhpbiBtdWx0aXBsZSB0aW1lcyBvbiB0aGUgc2FtZSBlbGVtZW50LlxuQG1peGluIG1lbnUtaWNvbnMoJHBvc2l0aW9uOiBzaWRlLCAkYmFzZTogdHJ1ZSkge1xuICBAaWYgJGJhc2Uge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGltZyxcbiAgICAgICAgaSxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgKyBzcGFuIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRwb3NpdGlvbiA9PSBzaWRlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtZW51LWljb24tc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgID4gbGkgPiBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkbWVudS1pY29uLXNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG4gICAgQGluY2x1ZGUgbWVudS1pY29ucztcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgaWNvbnNcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnModG9wLCAkYmFzZTogZmFsc2UpO1xuICAgICAgLy8gTWFrZSB2ZXJ0aWNhbCBtZW51IHdpdGggaWNvbnMgb24gdG9wIHdvcmtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICBhID4gc3BhbiB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLy8gTWVudSB3aXRoIGJvcmRlclxuICAgICYubWVudS1ib3JkZXJlZCB7XG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZW51LWJvcmRlcjtcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lbnUgd2l0aCBiYWNrZ3JvdW5kIGhvdmVyXG4gICAgJi5tZW51LWhvdmVyIHtcbiAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZW51LXRleHQge1xuICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgfVxuXG4gIC8vIEFsaWduIGNlbnRlclxuICAubWVudS1jZW50ZXJlZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgPiAubWVudSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duLW1lbnVcbi8vLy9cblxuLy8vIEVuYWJsZXMgYXJyb3dzIGZvciBpdGVtcyB3aXRoIGRyb3Bkb3duIG1lbnVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbkBtaXhpbiBsZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gIH1cblxuICAmLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogMS41cmVtO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICgkZHJvcGRvd25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSBsZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSBsZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC12aWRlbyB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCgpLiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xufVxuXG5AbWl4aW4gZmxleC12aWRlbygkcmF0aW86ICRyZXNwb25zaXZlLWVtYmVkLXJhdGlvKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IHJlc3BvbnNpdmUtZW1iZWQoKS4gZmxleC12aWRlbygpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTIpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCxcbiAgJGNvbG9yLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJGNvbG9yLWN1cnJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3Jcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29udGVudDogJ1xcMjAyNic7XG4gIGNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBhYic7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGJiJztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBgZXhwYW5kLW5gIGNsYXNzZXMgdG8gaW5jbHVkZSBpbiB0aGUgQ1NTLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICZbYXJpYS1oaWRkZW49XCJmYWxzZVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAwKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aHVtYm5haWxcbi8vLy9cblxuLy8vIEJvcmRlciBhcm91bmQgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBCb3JkZXJcbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BydGllcyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGh1bWJuYWlsIHN0eWxlcyB0byBhbiBlbGVtZW50LlxuQG1peGluIHRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkdGh1bWJuYWlsLW1hcmdpbi1ib3R0b207XG5cbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xuXG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5AbWl4aW4gdGh1bWJuYWlsLWxpbmsge1xuICB0cmFuc2l0aW9uOiAkdGh1bWJuYWlsLXRyYW5zaXRpb247XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI7XG4gIH1cblxuICBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10aHVtYm5haWwge1xuICAudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cblxuICBhLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XG4gIH1cbn1cbiIsIi8qID1Xb3JkUHJlc3MgQ29yZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hbGlnbm5vbmUge1xuICAgIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xufVxuXG4uYWxpZ25jZW50ZXIsXG5kaXYuYWxpZ25jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogNXB4IGF1dG8gNXB4IGF1dG87XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgICBmbG9hdDpyaWdodDtcbiAgICBtYXJnaW46IDVweCAwIDIwcHggMjBweDtcbn1cblxuLmFsaWdubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7XG59XG5cbmEgaW1nLmFsaWducmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IDVweCAwIDIwcHggMjBweDtcbn1cblxuYSBpbWcuYWxpZ25ub25lIHtcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuYSBpbWcuYWxpZ25sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuYSBpbWcuYWxpZ25jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0b1xufVxuXG4ud3AtY2FwdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjBmMGYwO1xuICAgIG1heC13aWR0aDogOTYlOyAvKiBJbWFnZSBkb2VzIG5vdCBvdmVyZmxvdyB0aGUgY29udGVudCBhcmVhICovXG4gICAgcGFkZGluZzogNXB4IDNweCAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25ub25lIHtcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25sZWZ0IHtcbiAgICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25yaWdodCB7XG4gICAgbWFyZ2luOiA1cHggMCAyMHB4IDIwcHg7XG59XG5cbi53cC1jYXB0aW9uIGltZyB7XG4gICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMCAwIDVweCAwO1xuICAgIG1heC13aWR0aDogOTguNSU7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogYXV0bztcbn1cblxuLndwLWNhcHRpb24gcC53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCA0cHggNXB4O1xufVxuXG4vKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogMXB4O1xuXHR3aWR0aDogMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG5cdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcblx0Y29sb3I6ICMyMTc1OWI7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRoZWlnaHQ6IGF1dG87XG5cdGxlZnQ6IDVweDtcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0cGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dG9wOiA1cHg7XG5cdHdpZHRoOiBhdXRvO1xuXHR6LWluZGV4OiAxMDAwMDA7IC8qIEFib3ZlIFdQIHRvb2xiYXIuICovXG59XG4iLCIvKiEgTGl0eSAtIHYyLjIuMCAtIDIwMTYtMTAtMDhcbiogaHR0cDovL3NvcmdhbGxhLmNvbS9saXR5L1xuKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNiBKYW4gU29yZ2FsbGE7IExpY2Vuc2VkIE1JVCAqL1xuLmxpdHkge1xuICB6LWluZGV4OiA5OTkwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYmFja2dyb3VuZDogIzBiMGIwYjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cbi5saXR5LmxpdHktb3BlbmVkIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5saXR5LmxpdHktY2xvc2VkIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5saXR5ICoge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLmxpdHktd3JhcCB7XG4gIHotaW5kZXg6IDk5OTA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5saXR5LXdyYXA6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1ZW07XG59XG4ubGl0eS1sb2FkZXIge1xuICB6LWluZGV4OiA5OTkxO1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTAuOGVtO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG4ubGl0eS1sb2FkaW5nIC5saXR5LWxvYWRlciB7XG4gIG9wYWNpdHk6IDE7XG59XG4ubGl0eS1jb250YWluZXIge1xuICB6LWluZGV4OiA5OTkyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG4ubGl0eS1jb250ZW50IHtcbiAgei1pbmRleDogOTk5MztcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlLCAtby10cmFuc2Zvcm0gMC4zcyBlYXNlO1xufVxuLmxpdHktbG9hZGluZyAubGl0eS1jb250ZW50LFxuLmxpdHktY2xvc2VkIC5saXR5LWNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbn1cbi5saXR5LWNvbnRlbnQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB6LWluZGV4OiAtMTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbi5saXR5LWNsb3NlIHtcbiAgei1pbmRleDogOTk5NDtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBCYXNrZXJ2aWxsZSwgbW9ub3NwYWNlO1xuICBsaW5lLWhlaWdodDogMzVweDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG4ubGl0eS1jbG9zZTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5saXR5LWNsb3NlOmhvdmVyLFxuLmxpdHktY2xvc2U6Zm9jdXMsXG4ubGl0eS1jbG9zZTphY3RpdmUsXG4ubGl0eS1jbG9zZTp2aXNpdGVkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBCYXNrZXJ2aWxsZSwgbW9ub3NwYWNlO1xuICBsaW5lLWhlaWdodDogMzVweDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG4ubGl0eS1jbG9zZTphY3RpdmUge1xuICB0b3A6IDFweDtcbn1cbi8qIEltYWdlICovXG4ubGl0eS1pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMDtcbiAgYm9yZGVyOiAwO1xufVxuLyogaUZyYW1lICovXG4ubGl0eS1pZnJhbWUgLmxpdHktY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTY0cHg7XG59XG4ubGl0eS1pZnJhbWUtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi5saXR5LWlmcmFtZS1jb250YWluZXIgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuLmxpdHktaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKiFcbkNob3NlbiwgYSBTZWxlY3QgQm94IEVuaGFuY2VyIGZvciBqUXVlcnkgYW5kIFByb3RvdHlwZVxuYnkgUGF0cmljayBGaWxsZXIgZm9yIEhhcnZlc3QsIGh0dHA6Ly9nZXRoYXJ2ZXN0LmNvbVxuXG5WZXJzaW9uIDEuNi4yXG5GdWxsIHNvdXJjZSBhdCBodHRwczovL2dpdGh1Yi5jb20vaGFydmVzdGhxL2Nob3NlblxuQ29weXJpZ2h0IChjKSAyMDExLTIwMTYgSGFydmVzdCBodHRwOi8vZ2V0aGFydmVzdC5jb21cblxuTUlUIExpY2Vuc2UsIGh0dHBzOi8vZ2l0aHViLmNvbS9oYXJ2ZXN0aHEvY2hvc2VuL2Jsb2IvbWFzdGVyL0xJQ0VOU0UubWRcblRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgYGdydW50IGJ1aWxkYCwgZG8gbm90IGVkaXQgaXQgYnkgaGFuZC5cbiovXG5cbi8qIEBncm91cCBCYXNlICovXG4uY2hvc2VuLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDEzcHg7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmNob3Nlbi1jb250YWluZXIgKiB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1kcm9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IC05OTk5cHg7XG4gIHotaW5kZXg6IDEwMTA7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbi5jaG9zZW4tY29udGFpbmVyLmNob3Nlbi13aXRoLWRyb3AgLmNob3Nlbi1kcm9wIHtcbiAgbGVmdDogMDtcbn1cbi5jaG9zZW4tY29udGFpbmVyIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuc2VhcmNoLWNob2ljZSAuZ3JvdXAtbmFtZSwgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1zaW5nbGUgLmdyb3VwLW5hbWUge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuLmNob3Nlbi1jb250YWluZXIgLnNlYXJjaC1jaG9pY2UgLmdyb3VwLW5hbWU6YWZ0ZXIsIC5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tc2luZ2xlIC5ncm91cC1uYW1lOmFmdGVyIHtcbiAgY29udGVudDogXCI6XCI7XG4gIHBhZGRpbmctbGVmdDogMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKiBAZW5kICovXG4vKiBAZ3JvdXAgU2luZ2xlIENob3NlbiAqL1xuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMCAwIDAgOHB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDUwJSAwJSwgNTAlIDEwMCUsIGNvbG9yLXN0b3AoMjAlLCAjZmZmZmZmKSwgY29sb3Itc3RvcCg1MCUsICNmNmY2ZjYpLCBjb2xvci1zdG9wKDUyJSwgI2VlZWVlZSksIGNvbG9yLXN0b3AoMTAwJSwgI2Y0ZjRmNCkpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgjZmZmZmZmIDIwJSwgI2Y2ZjZmNiA1MCUsICNlZWVlZWUgNTIlLCAjZjRmNGY0IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgjZmZmZmZmIDIwJSwgI2Y2ZjZmNiA1MCUsICNlZWVlZWUgNTIlLCAjZjRmNGY0IDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoI2ZmZmZmZiAyMCUsICNmNmY2ZjYgNTAlLCAjZWVlZWVlIDUyJSwgI2Y0ZjRmNCAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCNmZmZmZmYgMjAlLCAjZjZmNmY2IDUwJSwgI2VlZWVlZSA1MiUsICNmNGY0ZjQgMTAwJSk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggd2hpdGUgaW5zZXQsIDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiAjNDQ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tZGVmYXVsdCB7XG4gIGNvbG9yOiAjOTk5O1xufVxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLXJpZ2h0OiAyNnB4O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZS13aXRoLWRlc2VsZWN0IHNwYW4ge1xuICBtYXJnaW4tcmlnaHQ6IDM4cHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgYWJiciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2cHg7XG4gIHJpZ2h0OiAyNnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvY2hvc2VuLXNwcml0ZS5wbmcnKSAtNDJweCAxcHggbm8tcmVwZWF0O1xuICBmb250LXNpemU6IDFweDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBhYmJyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQycHggLTEwcHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUuY2hvc2VuLWRpc2FibGVkIC5jaG9zZW4tc2luZ2xlIGFiYnI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDJweCAtMTBweDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tc2luZ2xlIGRpdiBiIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Nob3Nlbi1zcHJpdGUucG5nJykgbm8tcmVwZWF0IDBweCAycHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMTA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogM3B4IDRweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIG1hcmdpbjogMXB4IDA7XG4gIHBhZGRpbmc6IDRweCAyMHB4IDRweCA1cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJhY2tncm91bmQ6IHdoaXRlIHVybCgnLi4vaW1nL2Nob3Nlbi1zcHJpdGUucG5nJykgbm8tcmVwZWF0IDEwMCUgLTIwcHg7XG4gIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2Nob3Nlbi1zcHJpdGUucG5nJykgbm8tcmVwZWF0IDEwMCUgLTIwcHg7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLWRyb3Age1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLXNpbmdsZS5jaG9zZW4tY29udGFpbmVyLXNpbmdsZS1ub3NlYXJjaCAuY2hvc2VuLXNlYXJjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTk5OTlweDtcbn1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIFJlc3VsdHMgKi9cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyB7XG4gIGNvbG9yOiAjNDQ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWFyZ2luOiAwIDRweCA0cHggMDtcbiAgcGFkZGluZzogMCAwIDAgNHB4O1xuICBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA1cHggNnB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkuYWN0aXZlLXJlc3VsdCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLmRpc2FibGVkLXJlc3VsdCB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgY29sb3I6ICNjY2M7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaS5oaWdobGlnaHRlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODc1ZDc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDIwJSwgIzM4NzVkNyksIGNvbG9yLXN0b3AoOTAlLCAjMmE2MmJjKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCMzODc1ZDcgMjAlLCAjMmE2MmJjIDkwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KCMzODc1ZDcgMjAlLCAjMmE2MmJjIDkwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgjMzg3NWQ3IDIwJSwgIzJhNjJiYyA5MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoIzM4NzVkNyAyMCUsICMyYTYyYmMgOTAlKTtcbiAgY29sb3I6ICNmZmY7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkubm8tcmVzdWx0cyB7XG4gIGNvbG9yOiAjNzc3O1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMgbGkuZ3JvdXAtcmVzdWx0IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzIGxpLmdyb3VwLW9wdGlvbiB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cbi5jaG9zZW4tY29udGFpbmVyIC5jaG9zZW4tcmVzdWx0cyBsaSBlbSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBNdWx0aSBDaG9zZW4gKi9cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA4cHggNXB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgxJSwgI2VlZWVlZSksIGNvbG9yLXN0b3AoMTUlLCAjZmZmZmZmKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMSUsICNmZmZmZmYgMTUlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoI2VlZWVlZSAxJSwgI2ZmZmZmZiAxNSUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoI2VlZWVlZSAxJSwgI2ZmZmZmZiAxNSUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2VlZWVlZSAxJSwgI2ZmZmZmZiAxNSUpO1xuICBjdXJzb3I6IHRleHQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtZmllbGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDIxcHg7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDNweCA1cHggM3B4IDA7XG4gIHBhZGRpbmc6IDNweCAyMHB4IDNweCA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgyMCUsICNmNGY0ZjQpLCBjb2xvci1zdG9wKDUwJSwgI2YwZjBmMCksIGNvbG9yLXN0b3AoNTIlLCAjZThlOGU4KSwgY29sb3Itc3RvcCgxMDAlLCAjZWVlZWVlKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgjZjRmNGY0IDIwJSwgI2YwZjBmMCA1MCUsICNlOGU4ZTggNTIlLCAjZWVlZWVlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDE5cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCB3aGl0ZSBpbnNldCwgMCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogIzMzMztcbiAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIHNwYW4ge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZSAuc2VhcmNoLWNob2ljZS1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIHJpZ2h0OiAzcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9jaG9zZW4tc3ByaXRlLnBuZycpIC00MnB4IDFweCBuby1yZXBlYXQ7XG4gIGZvbnQtc2l6ZTogMXB4O1xufVxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1jaG9pY2UgLnNlYXJjaC1jaG9pY2UtY2xvc2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDJweCAtMTBweDtcbn1cbi5jaG9zZW4tY29udGFpbmVyLW11bHRpIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlLWRpc2FibGVkIHtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgNTAlIDAlLCA1MCUgMTAwJSwgY29sb3Itc3RvcCgyMCUsICNmNGY0ZjQpLCBjb2xvci1zdG9wKDUwJSwgI2YwZjBmMCksIGNvbG9yLXN0b3AoNTIlLCAjZThlOGU4KSwgY29sb3Itc3RvcCgxMDAlLCAjZWVlZWVlKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KCNmNGY0ZjQgMjAlLCAjZjBmMGYwIDUwJSwgI2U4ZThlOCA1MiUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgjZjRmNGY0IDIwJSwgI2YwZjBmMCA1MCUsICNlOGU4ZTggNTIlLCAjZWVlZWVlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2Y0ZjRmNCAyMCUsICNmMGYwZjAgNTAlLCAjZThlOGU4IDUyJSwgI2VlZWVlZSAxMDAlKTtcbiAgY29sb3I6ICM2NjY7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZS1mb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNkNGQ0ZDQ7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1tdWx0aSAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZS1mb2N1cyAuc2VhcmNoLWNob2ljZS1jbG9zZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MnB4IC0xMHB4O1xufVxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1yZXN1bHRzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1kcm9wIC5yZXN1bHQtc2VsZWN0ZWQge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGNvbG9yOiAjY2NjO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBBY3RpdmUgICovXG4uY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUgLmNob3Nlbi1zaW5nbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiO1xuICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5jaG9zZW4tY29udGFpbmVyLWFjdGl2ZS5jaG9zZW4td2l0aC1kcm9wIC5jaG9zZW4tc2luZ2xlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCA1MCUgMCUsIDUwJSAxMDAlLCBjb2xvci1zdG9wKDIwJSwgI2VlZWVlZSksIGNvbG9yLXN0b3AoODAlLCAjZmZmZmZmKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMjAlLCAjZmZmZmZmIDgwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KCNlZWVlZWUgMjAlLCAjZmZmZmZmIDgwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgjZWVlZWVlIDIwJSwgI2ZmZmZmZiA4MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI2VlZWVlZSAyMCUsICNmZmZmZmYgODAlKTtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAjZmZmIGluc2V0O1xufVxuLmNob3Nlbi1jb250YWluZXItYWN0aXZlLmNob3Nlbi13aXRoLWRyb3AgLmNob3Nlbi1zaW5nbGUgZGl2IHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLmNob3Nlbi1jb250YWluZXItYWN0aXZlLmNob3Nlbi13aXRoLWRyb3AgLmNob3Nlbi1zaW5nbGUgZGl2IGIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMThweCAycHg7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUgLmNob3Nlbi1jaG9pY2VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG4uY2hvc2VuLWNvbnRhaW5lci1hY3RpdmUgLmNob3Nlbi1jaG9pY2VzIGxpLnNlYXJjaC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIGNvbG9yOiAjMjIyICFpbXBvcnRhbnQ7XG59XG5cbi8qIEBlbmQgKi9cbi8qIEBncm91cCBEaXNhYmxlZCBTdXBwb3J0ICovXG4uY2hvc2VuLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41ICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jaG9zZW4tZGlzYWJsZWQgLmNob3Nlbi1zaW5nbGUge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4uY2hvc2VuLWRpc2FibGVkIC5jaG9zZW4tY2hvaWNlcyAuc2VhcmNoLWNob2ljZSAuc2VhcmNoLWNob2ljZS1jbG9zZSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIFJpZ2h0IHRvIExlZnQgKi9cbi5jaG9zZW4tcnRsIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXNpbmdsZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAwIDhweCAwIDA7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXNpbmdsZSBzcGFuIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMjZweDtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXNpbmdsZS13aXRoLWRlc2VsZWN0IHNwYW4ge1xuICBtYXJnaW4tbGVmdDogMzhweDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tc2luZ2xlIGRpdiB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAzcHg7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLXNpbmdsZSBhYmJyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDI2cHg7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLWNob2ljZXMgbGkge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG4uY2hvc2VuLXJ0bCAuY2hvc2VuLWNob2ljZXMgbGkuc2VhcmNoLWNob2ljZSB7XG4gIG1hcmdpbjogM3B4IDVweCAzcHggMDtcbiAgcGFkZGluZzogM3B4IDVweCAzcHggMTlweDtcbn1cbi5jaG9zZW4tcnRsIC5jaG9zZW4tY2hvaWNlcyBsaS5zZWFyY2gtY2hvaWNlIC5zZWFyY2gtY2hvaWNlLWNsb3NlIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDRweDtcbn1cbi5jaG9zZW4tcnRsLmNob3Nlbi1jb250YWluZXItc2luZ2xlLW5vc2VhcmNoIC5jaG9zZW4tc2VhcmNoLFxuLmNob3Nlbi1ydGwgLmNob3Nlbi1kcm9wIHtcbiAgbGVmdDogOTk5OXB4O1xufVxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1yZXN1bHRzIHtcbiAgbWFyZ2luOiAwIDAgNHB4IDRweDtcbiAgcGFkZGluZzogMCA0cHggMCAwO1xufVxuLmNob3Nlbi1ydGwgLmNob3Nlbi1yZXN1bHRzIGxpLmdyb3VwLW9wdGlvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5jaG9zZW4tcnRsLmNob3Nlbi1jb250YWluZXItYWN0aXZlLmNob3Nlbi13aXRoLWRyb3AgLmNob3Nlbi1zaW5nbGUgZGl2IHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLmNob3Nlbi1ydGwgLmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBwYWRkaW5nOiA0cHggNXB4IDRweCAyMHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoJy4uL2ltZy9jaG9zZW4tc3ByaXRlLnBuZycpIG5vLXJlcGVhdCAtMzBweCAtMjBweDtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvY2hvc2VuLXNwcml0ZS5wbmcnKSBuby1yZXBlYXQgLTMwcHggLTIwcHg7XG4gIGRpcmVjdGlvbjogcnRsO1xufVxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IGIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA2cHggMnB4O1xufVxuLmNob3Nlbi1ydGwuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUuY2hvc2VuLXdpdGgtZHJvcCAuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMnB4IDJweDtcbn1cblxuLyogQGVuZCAqL1xuLyogQGdyb3VwIFJldGluYSBjb21wYXRpYmlsaXR5ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE0NGRwaSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDEuNWRwcHgpIHtcbiAgLmNob3Nlbi1ydGwgLmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNpbmdsZSBhYmJyLFxuICAuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IGIsXG4gIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmNob3Nlbi1jb250YWluZXItbXVsdGkgLmNob3Nlbi1jaG9pY2VzIC5zZWFyY2gtY2hvaWNlIC5zZWFyY2gtY2hvaWNlLWNsb3NlLFxuICAuY2hvc2VuLWNvbnRhaW5lciAuY2hvc2VuLXJlc3VsdHMtc2Nyb2xsLWRvd24gc3BhbixcbiAgLmNob3Nlbi1jb250YWluZXIgLmNob3Nlbi1yZXN1bHRzLXNjcm9sbC11cCBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9jaG9zZW4tc3ByaXRlQDJ4LnBuZycpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1MnB4IDM3cHggIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIEBlbmQgKi9cbiIsIi8qKlxuICogT3dsIENhcm91c2VsIHYyLjIuMFxuICogQ29weXJpZ2h0IDIwMTMtMjAxNiBEYXZpZCBEZXV0c2NoXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS9Pd2xDYXJvdXNlbDIvT3dsQ2Fyb3VzZWwyL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cbi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4ub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlOmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG59XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLFxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG59XG4ub3dsLWNhcm91c2VsIHtcbiAgLm93bC1kb3Qge1xuICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgJi5hY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICB9XG5cbiAgfVxuICAub3dsLWRvdHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgIGJvdHRvbTogMjJweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrXG4gICAgfVxuICB9XG4gIC5vd2wtbmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAzNSU7XG4gICAgdG9wOiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5vd2wtcHJldixcbiAgICAub3dsLW5leHQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiA0OXB4O1xuICAgICAgd2lkdGg6IDQ5cHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2NoZXZyb24tcmlnaHQuc3ZnJyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgICAgbGVmdDogMTJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgLm93bC1uZXh0IHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgICAgcmlnaHQ6IDEycHg7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAyNHB4KTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIC5vd2wtcHJldixcbiAgICAgIC5vd2wtbmV4dCB7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuLm93bC1jYXJvdXNlbCAub3dsLWRvdHMuZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1uZXh0LFxuLm93bC1jYXJvdXNlbCAub3dsLWRvdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiBoYW5kO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ub3dsLWNhcm91c2VsLm93bC1sb2FkaW5nIHtcbiAgb3BhY2l0eTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJlZnJlc2ggLm93bC1pdGVtIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWdyYWIge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogZ3JhYjtcbn1cblxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIE5vIEpzICovXG4ubm8tanMgLm93bC1jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogIE93bCBDYXJvdXNlbCAtIEFuaW1hdGUgUGx1Z2luXG4gKi9cbi5vd2wtY2Fyb3VzZWwgLmFuaW1hdGVkIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWluIHtcbiAgei1pbmRleDogMDtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5vd2wtY2Fyb3VzZWwgLmZhZGVPdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuLm93bC1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG5cbi8qXG4gKiAgT3dsIENhcm91c2VsIC0gTGF6eSBMb2FkIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG59XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZy5vd2wtbGF6eSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL293bC52aWRlby5wbGF5LnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDEwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlO1xufVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bixcbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRuIHtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbn1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIge1xuICBoZWlnaHQ6IDQ1MHB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KCBtZWRpdW0gZG93biApIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICB9XG59XG4iLCIvKlxuKiAgIENTUyBpbiBoZXJlIGlzIHRha2VuIGZyb20gdGhlIENTUyBmaWxlcyBpbiB0aGUgR3Jhdml0eSBGb3JtcyBwbHVnaW4uIFRoZSBlbnRpcmUgZmlsZXMgYXJlbid0IGxvYWRlZCwgYXMgdGhleSBhZGQgb24gdG9vIG11Y2ggZXh0cmEgc3R5bGluZyB0aGF0IHdlIHdvdWxkIG5lZWQgdG8gdW5kb1xuKi9cbi5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lcixcbi5nZm9ybV93cmFwcGVyIC5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lcixcbmJvZHkgLmdmb3JtX3dyYXBwZXIgbGkuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAtOTAwMHB4O1xufVxuXG4uZ2Zvcm1fd3JhcHBlciAuY2xlYXItbXVsdGl7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLyogZGF0ZSDigItmaWVsZHMgKi9cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2RheSxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV95ZWFyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kYXksXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfbW9udGgsXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfeWVhciB7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjFweCkge1xuXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2RheSxcbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfbW9udGgge1xuICAgICAgICBtYXgtd2lkdGg6IDRyZW07XG4gICAgfVxuXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX3llYXIsXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2FtcG0ge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoNHJlbSArIC41cmVtKTtcbiAgICB9XG5cbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2Ryb3Bkb3duX21vbnRoLFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2Ryb3Bkb3duX2RheSxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kcm9wZG93bl95ZWFyIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kcm9wZG93bl9tb250aCxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV9kcm9wZG93bl9kYXksXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfZHJvcGRvd25feWVhciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX21vbnRoLFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2RheSB7XG4gICAgd2lkdGg6IDRyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX21vbnRoIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2RhdGVfZGF5IGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIHdpZHRoOiBjYWxjKDNyZW0gKyA4cHgpICFpbXBvcnRhbnQ7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV95ZWFyIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIHdpZHRoOiBjYWxjKDRyZW0gKyA4cHgpICFpbXBvcnRhbnQ7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV95ZWFyIHtcbiAgICB3aWR0aDogNXJlbTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX21vbnRoIGlucHV0LFxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF9kYXRlX2RheSBpbnB1dCB7XG4gICAgd2lkdGg6IGNhbGMoM3JlbSArIDhweCk7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfZGF0ZV95ZWFyIGlucHV0IHtcbiAgICB3aWR0aDogNHJlbTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmZpZWxkX3N1YmxhYmVsX2Fib3ZlIGRpdltjbGFzcyo9XCJnZmllbGRfZGF0ZV9cIl0uZ2lucHV0X2NvbnRhaW5lciBsYWJlbCxcbi5nZm9ybV93cmFwcGVyIC5maWVsZF9zdWJsYWJlbF9iZWxvdyBkaXZbY2xhc3MqPVwiZ2ZpZWxkX2RhdGVfXCJdLmdpbnB1dF9jb250YWluZXIgbGFiZWwge1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmZpZWxkX3N1YmxhYmVsX2Fib3ZlIGRpdi5nZmllbGRfZGF0ZV95ZWFyLmdpbnB1dF9jb250YWluZXIgbGFiZWwsXG4uZ2Zvcm1fd3JhcHBlciAuZmllbGRfc3VibGFiZWxfYmVsb3cgZGl2LmdmaWVsZF9kYXRlX3llYXIuZ2lucHV0X2NvbnRhaW5lciBsYWJlbCB7XG4gICAgd2lkdGg6IDRyZW07XG59XG5cbi5nZm9ybV93cmFwcGVyIGlucHV0LmRhdGVwaWNrZXJfd2l0aF9pY29uLnNtYWxsLFxuLmdmb3JtX3dyYXBwZXIgaW5wdXQuZGF0ZXBpY2tlcl93aXRoX2ljb24ubWVkaXVtLFxuLmdmb3JtX3dyYXBwZXIgaW5wdXQuZGF0ZXBpY2tlcl93aXRoX2ljb24ubGFyZ2Uge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyNHB4KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmJvZHkgLmdmb3JtX3dyYXBwZXIgaW1nLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gICAgd2lkdGg6IDE3cHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuXG4vKiB0aW1lIOKAi2ZpZWxkcyAqL1xuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfaG91cixcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9taW51dGUsXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfYW1wbSB7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjFweCkge1xuXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIsXG4gICAgLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX21pbnV0ZSB7XG4gICAgICAgIG1heC13aWR0aDogNHJlbTtcbiAgICB9XG5cbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfaG91cixcbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfYW1wbSB7XG4gICAgICAgIG1heC13aWR0aDogY2FsYyg0cmVtICsgLjVyZW0pO1xuICAgIH1cblxuICAgIC5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9ob3VyIHtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDRyZW0gKyAuNXJlbSk7XG4gICAgfVxuXG59XG5cbi5nZm9ybV93cmFwcGVyIHVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgLmdpbnB1dF9jb250YWluZXJfdGltZSBzcGFuIHtcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIgaSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDQlO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfbWludXRlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfaG91ciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAuMjVyZW07XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9hbXBtIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2FtcG0gc2VsZWN0IHtcbiAgICBtaW4td2lkdGg6IGNhbGMoMnJlbSArIDI1cHgpO1xuICAgIHdpZHRoOiBjYWxjKDNyZW0gKyAyNXB4KTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIgaW5wdXQsXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX3RpbWVfbWludXRlIGlucHV0IHtcbiAgICB3aWR0aDogY2FsYygzcmVtICsgOHB4KTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZF90aW1lX2hvdXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfdGltZV9taW51dGUgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgd2lkdGg6IGNhbGMoM3JlbSArIDhweCkgIWltcG9ydGFudDtcbn1cblxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gICAgLmdpbnB1dF9jb21wbGV4IHtcbiAgICAgICAgLmdpbnB1dF9sZWZ0LFxuICAgICAgICAuZ2lucHV0X3JpZ2h0LFxuICAgICAgICAuZ2lucHV0X2Z1bGwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdpbnB1dF9sZWZ0LFxuICAgICAgICAuZ2lucHV0X3JpZ2h0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTRweCAwIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQsXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0IHtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4uZ2ZfY2xlYXJfY29tcGxleCB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5nZm9ybV93cmFwcGVyIHtcbiAgICAuZ2lucHV0X2NvbXBsZXgge1xuICAgICAgICAuZ2lucHV0X2xlZnQsXG4gICAgICAgIC5naW5wdXRfcmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZ2lucHV0X2xlZnQge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5naW5wdXRfcmlnaHQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBhZGp1c3RpbmcgdGhlIG5hbWUgZmllbGQgc28gaXQgYWxpZ25zIHByb3Blcmx5ICovXG5cbi50b3BfbGFiZWwgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMSxcbi50b3BfbGFiZWwgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMixcbi50b3BfbGFiZWwgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMyB7XG4gICAgLy8gd2lkdGg6IGNhbGMoMTAwJSArIDE1cHgpO1xufVxuXG4udG9wX2xhYmVsIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzQge1xuICAgIC8vIHdpZHRoOiBjYWxjKDEwMCUgKyAxM3B4KTtcbn1cblxuLnRvcF9sYWJlbCBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc181IHtcbiAgICAvLyB3aWR0aDogY2FsYygxMDAlICsgMTRweCk7XG59XG5cbi8qIGEgbGl0dGxlIGJldHRlciBzcGVjaWZpY3R5IHRvIGF2b2lkIHByb2JsZW1zIHdpdGggZm9ybXMgaW4gd2lkZ2V0cyAqL1xuXG51bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzEsXG51bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzIsXG51bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzMge1xuICAgIHdpZHRoOiBjYWxjKDcwJSArIDE1cHgpO1xuICAgIG1hcmdpbi1sZWZ0OiAyOSU7XG59XG5cbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc18xLFxudWwuZ2Zvcm1fZmllbGRzOm5vdCgudG9wX2xhYmVsKSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzIsXG51bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMyB7XG4gICAgd2lkdGg6IGNhbGMoNzAlICsgMjRweCk7XG59XG5cbnVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNCB7XG4gICAgd2lkdGg6IGNhbGMoNzAlICsgMTNweCk7XG4gICAgbWFyZ2luLWxlZnQ6IDI5JTtcbn1cblxudWwuZ2Zvcm1fZmllbGRzOm5vdCgudG9wX2xhYmVsKSBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc181IHtcbiAgICB3aWR0aDogY2FsYyg3MCUgKyAxNHB4KTtcbiAgICBtYXJnaW4tbGVmdDogMjklO1xufVxuXG5kaXYuZ2lucHV0X2NvbnRhaW5lcl9uYW1lIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCBtZWRpdW0gKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxufVxuXG5kaXYuZ2lucHV0X2NvbnRhaW5lcl9uYW1lIHNwYW4ubmFtZV9sYXN0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSApIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIH1cbn1cblxuZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMSBzcGFuIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMiBzcGFuIHtcbiAgICAvLyB3aWR0aDogNTAlOyAgICBcbn1cblxuZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMyBzcGFuIHtcbiAgICB3aWR0aDogMzMuMyU7XG59XG5cbmRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzQgc3BhbiB7XG4gICAgd2lkdGg6IDI1JTtcbn1cblxuZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNSBzcGFuIHtcbiAgICB3aWR0aDogMTkuOTUlO1xufVxuXG4vKiB0d2VhayB0aGUgc2l6ZXMgZm9yIHZhbGlkYXRpb24gYW5kIGxlZnQvcmlnaHQgbGFiZWwgbGF5b3V0cyAqL1xuXG4uZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfMSBzcGFuIHtcbiAgICB3aWR0aDogOTkuNzUlICFpbXBvcnRhbnQ7XG59XG5cbi5nZm9ybV93cmFwcGVyIHVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc18yIHNwYW4ge1xuICAgIHdpZHRoOiA0OS43NSUgIWltcG9ydGFudDtcbn1cblxuLmdmb3JtX3dyYXBwZXIgdWwuZ2Zvcm1fZmllbGRzOm5vdCgudG9wX2xhYmVsKSBsaS5nZmllbGQuZ2ZpZWxkX2Vycm9yIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzMgc3BhbiB7XG4gICAgd2lkdGg6IDMzJSAhaW1wb3J0YW50O1xufVxuXG4uZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHM6bm90KC50b3BfbGFiZWwpIGxpLmdmaWVsZC5nZmllbGRfZXJyb3IgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNCBzcGFuIHtcbiAgICB3aWR0aDogMjQuNzUlICFpbXBvcnRhbnQ7XG59XG5cbi5nZm9ybV93cmFwcGVyIHVsLmdmb3JtX2ZpZWxkczpub3QoLnRvcF9sYWJlbCkgbGkuZ2ZpZWxkLmdmaWVsZF9lcnJvciBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc181IHNwYW4ge1xuICAgIHdpZHRoOiAxOS43NSUgIWltcG9ydGFudDtcbn1cblxuaHRtbCBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc18yIHNwYW46Zmlyc3QtY2hpbGQsXG5odG1sIGRpdi5naW5wdXRfY29tcGxleC5naW5wdXRfY29udGFpbmVyLmdmX25hbWVfaGFzXzMgc3BhbjpmaXJzdC1jaGlsZCxcbmh0bWwgZGl2LmdpbnB1dF9jb21wbGV4LmdpbnB1dF9jb250YWluZXIuZ2ZfbmFtZV9oYXNfNCBzcGFuOmZpcnN0LWNoaWxkLFxuaHRtbCBkaXYuZ2lucHV0X2NvbXBsZXguZ2lucHV0X2NvbnRhaW5lci5nZl9uYW1lX2hhc181IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudDtcbn1cblxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmlsZXVwbG9hZF9tdWx0aWZpbGUgLmdmb3JtX2Ryb3BfYXJlYSB7XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBib3JkZXI6IDFweCBkYXNoZWQgI0NDQztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNBQUE7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLmdmb3JtX3dyYXBwZXIgc3Bhbi5nZm9ybV9kcm9wX2luc3RydWN0aW9ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4uZ2Zvcm1fZGVsZXRlIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLypcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuR3Jhdml0eSBGb3JtcyBEYXRlIFBpY2tlciBTdHlsZXNcbmh0dHA6IC8vd3d3LmdyYXZpdHlmb3Jtcy5jb21cbnVwZGF0ZWQ6IEphbnVhcnkgMzEsIDIwMTQgMzozMiBQTVxuXG5DdXN0b21pemVkIHN0eWxlcyBmb3IgdGhlIGpRdWVyeSBVSSBEYXRlcGlja2VyIDEuOS4yXG5jb3B5cmlnaHQgMjAxMiBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG5SZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG5odHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG5zb21lIHN0eWxlcyBjb3VydGVzdHkgb2YgaHR0cDovL3d3dy5ob25na2lhdC5jb20vXG5cbkdyYXZpdHkgRm9ybXMgaXMgYSBSb2NrZXRnZW5pdXMgcHJvamVjdFxuY29weXJpZ2h0IDIwMDggLSAyMDE0IFJvY2tldGdlbml1cyBJbmMuXG5odHRwOiAvL3d3dy5yb2NrZXRnZW5pdXMuY29tXG5cbk5PVEU6IERPIE5PVCBFRElUIFRISVMgRklMRSEgTUFLRSBBTlkgTU9ESUZJQ0FUSU9OUyBJTiBZT1VSXG5USEVNRSBTVFlMRVNIRUVULiBUSElTIEZJTEUgSVMgUkVQTEFDRUQgRFVSSU5HIEFVVE8tVVBEQVRFU1xuQU5EIEFOWSBDSEFOR0VTIE1BREUgSEVSRSBXSUxMIEJFIE9WRVJXUklUVEVOLlxuXG5JZiB5b3UgbmVlZCB0byBtYWtlIGV4dGVuc2l2ZSBjdXN0b21pemF0aW9ucyxcbmNvcHkgdGhlIGNvbnRlbnRzIG9mIHRoaXMgZmlsZSB0byB5b3VyIHRoZW1lXG5zdHlsZSBzaGVldCBmb3IgZWRpdGluZy4gVGhlbiwgZ28gdG8gdGhlIGZvcm1cbnNldHRpbmdzIHBhZ2UgJiBzZXQgdGhlICdvdXRwdXQgQ1NTJyBvcHRpb25cbnRvIG5vLlxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4udWktZGF0ZXBpY2tlciB7XG4gICAgd2lkdGg6IDIxNnB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDVweCBhdXRvIDA7XG4gICAgZm9udDogOXB0IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAuNSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIC41KTtcbn1cblxuLnVpLWRhdGVwaWNrZXIgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udWktZGF0ZXBpY2tlciB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2OyAvKiBzZXQgdGhlIGhlYWRlciBiYWNrZ3JvdW5kIGNvbG9yICovXG4gICAgY29sb3I6ICNlMGUwZTA7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwcHggMXB4IDFweCAwcHggcmdiYSgyNTAsIDI1MCwgMjUwLCAuMik7XG4gICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwcHggMXB4IDFweCAwcHggcmdiYSgyNTAsIDI1MCwgMjUwLCAuMik7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDFweCAxcHggMHB4IHJnYmEoMjUwLCAyNTAsIDI1MCwgLjIpO1xuICAgIHRleHQtc2hhZG93OiAxcHggLTFweCAwcHggIzAwMDtcbiAgICBmaWx0ZXI6IGRyb3BzaGFkb3coY29sb3I9IzAwMCwgb2ZmeD0xLCBvZmZ5PS0xKTtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBtaW4taGVpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICM2NjY7XG59XG5cbi51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51aS1kYXRlcGlja2VyLXRpdGxlIHNlbGVjdCB7XG4gICAgbWFyZ2luLXRvcDogMi41JTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjUlO1xuICAgIHdpZHRoOiBhdXRvO1xufVxuXG4udWktZGF0ZXBpY2tlci1wcmV2LCBcbi51aS1kYXRlcGlja2VyLW5leHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9hcnJvdy5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGxpbmUtaGVpZ2h0OiA2MDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnVpLWRhdGVwaWNrZXItcHJldiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIC0zMHB4O1xufVxuXG4udWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDBweDtcbn1cblxuLnVpLWRhdGVwaWNrZXIgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlBL1BnbzhjM1puSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZDJsa2RHZzlJakV3TUNVaUlHaGxhV2RvZEQwaU1UQXdKU0lnZG1sbGQwSnZlRDBpTUNBd0lERWdNU0lnY0hKbGMyVnlkbVZCYzNCbFkzUlNZWFJwYnowaWJtOXVaU0krQ2lBZ1BHeHBibVZoY2tkeVlXUnBaVzUwSUdsa1BTSm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXdKU0lnZVRJOUlqRXdNQ1VpUGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJd0pTSWdjM1J2Y0MxamIyeHZjajBpSTJZM1pqZG1OeUlnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpFd01DVWlJSE4wYjNBdFkyOXNiM0k5SWlObU1XWXhaakVpSUhOMGIzQXRiM0JoWTJsMGVUMGlNU0l2UGdvZ0lEd3ZiR2x1WldGeVIzSmhaR2xsYm5RK0NpQWdQSEpsWTNRZ2VEMGlNQ0lnZVQwaU1DSWdkMmxrZEdnOUlqRWlJR2hsYVdkb2REMGlNU0lnWm1sc2JEMGlkWEpzS0NObmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0tTSWdMejRLUEM5emRtYyspO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgICNmN2Y3ZjcgMCUsICNmMWYxZjEgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwjZjdmN2Y3KSwgY29sb3Itc3RvcCgxMDAlLCNmMWYxZjEpKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICAjZjdmN2Y3IDAlLCNmMWYxZjEgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgICNmN2Y3ZjcgMCUsI2YxZjFmMSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgICNmN2Y3ZjcgMCUsI2YxZjFmMSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgI2Y3ZjdmNyAwJSwjZjFmMWYxIDEwMCUpO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZjdmN2Y3JywgZW5kQ29sb3JzdHI9JyNmMWYxZjEnLEdyYWRpZW50VHlwZT0wICk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiYmI7XG59XG5cbi51aS1kYXRlcGlja2VyIHRoIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDZwdDtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDBweCAwcHggI2ZmZjtcbiAgICBmaWx0ZXI6IGRyb3BzaGFkb3coY29sb3I9I2ZmZiwgb2ZmeD0xLCBvZmZ5PTApO1xufVxuXG4udWktZGF0ZXBpY2tlciB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2JiYjtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjYmJiO1xufVxuXG4udWktZGF0ZXBpY2tlciB0Ym9keSB0ZDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDBweDtcbn1cblxuLnVpLWRhdGVwaWNrZXIgdGJvZHkgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmJiO1xufVxuXG4udWktZGF0ZXBpY2tlciB0Ym9keSB0cjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwcHg7XG59XG5cbi51aS1kYXRlcGlja2VyIHRkIHNwYW4sIFxuLnVpLWRhdGVwaWNrZXIgdGQgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgdGV4dC1zaGFkb3c6IDFweCAxcHggMHB4ICNmZmY7XG4gICAgZmlsdGVyOiBkcm9wc2hhZG93KGNvbG9yPSNmZmYsIG9mZng9MSwgb2ZmeT0xKTtcbn1cblxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgLnVpLXN0YXRlLWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlBL1BnbzhjM1puSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZDJsa2RHZzlJakV3TUNVaUlHaGxhV2RvZEQwaU1UQXdKU0lnZG1sbGQwSnZlRDBpTUNBd0lERWdNU0lnY0hKbGMyVnlkbVZCYzNCbFkzUlNZWFJwYnowaWJtOXVaU0krQ2lBZ1BHeHBibVZoY2tkeVlXUnBaVzUwSUdsa1BTSm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXdKU0lnZVRJOUlqRXdNQ1VpUGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJd0pTSWdjM1J2Y0MxamIyeHZjajBpSTJWa1pXUmxaQ0lnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpFd01DVWlJSE4wYjNBdFkyOXNiM0k5SWlOa1pXUmxaR1VpSUhOMGIzQXRiM0JoWTJsMGVUMGlNU0l2UGdvZ0lEd3ZiR2x1WldGeVIzSmhaR2xsYm5RK0NpQWdQSEpsWTNRZ2VEMGlNQ0lnZVQwaU1DSWdkMmxrZEdnOUlqRWlJR2hsYVdkb2REMGlNU0lnWm1sc2JEMGlkWEpzS0NObmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0tTSWdMejRLUEM5emRtYyspO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgICNlZGVkZWQgMCUsICNkZWRlZGUgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwjZWRlZGVkKSwgY29sb3Itc3RvcCgxMDAlLCNkZWRlZGUpKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICAjZWRlZGVkIDAlLCNkZWRlZGUgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgICNlZGVkZWQgMCUsI2RlZGVkZSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgICNlZGVkZWQgMCUsI2RlZGVkZSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgI2VkZWRlZCAwJSwjZGVkZWRlIDEwMCUpO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZWRlZGVkJywgZW5kQ29sb3JzdHI9JyNkZWRlZGUnLEdyYWRpZW50VHlwZT0wICk7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDBweCAwcHggcmdiYSgyNTAsIDI1MCwgMjUwLCAuNSk7XG4gICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDBweCAwcHggcmdiYSgyNTAsIDI1MCwgMjUwLCAuNSk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCAwcHggMHB4IHJnYmEoMjUwLCAyNTAsIDI1MCwgLjUpO1xufVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciAudWktc3RhdGUtaG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG5cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICNGRkYyQUE7IC8qIHNldCB0aGUgYWN0aXZlIGRhdGUgYmFja2dyb3VuZCBjb2xvciAqL1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMTkxNjM7IC8qIHNldCB0aGUgYWN0aXZlIGRhdGUgYm9yZGVyIGNvbG9yICovXG4gICAgY29sb3I6ICM2NjY7IC8qIHNldCB0aGUgYWN0aXZlIGRhdGUgZm9udCBjb2xvciAqL1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAuMSk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDFweCAwcHggI0ZGRjtcbiAgICBmaWx0ZXI6IGRyb3BzaGFkb3coY29sb3I9I0ZGRiwgb2ZmeD0wLCBvZmZ5PTEpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IC0xcHg7XG59XG5cbi51aS1kYXRlcGlja2VyLXVuc2VsZWN0YWJsZSAudWktc3RhdGUtZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgICBjb2xvcjogI2I0YjNiMztcbn1cblxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQ6Zmlyc3QtY2hpbGQgLnVpLXN0YXRlLWFjdGl2ZSB7XG4gICAgd2lkdGg6IDI5cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRkOmxhc3QtY2hpbGQgLnVpLXN0YXRlLWFjdGl2ZSB7XG4gICAgd2lkdGg6IDI5cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciB0cjpsYXN0LWNoaWxkIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGhlaWdodDogMjlweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG50ZC51aS1kYXRlcGlja2VyLXVuc2VsZWN0YWJsZS51aS1zdGF0ZS1kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q3ZDdkNztcbn1cblxudGFibGUudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgbWFyZ2luOiAwIDAgMCAwICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkgZGl2I3VpLWRhdGVwaWNrZXItZGl2W3N0eWxlXSB7XG4gICAgei1pbmRleDogOTk5OSAhaW1wb3J0YW50O1xufSIsIi5uby1idWxsZXQtbGlzdCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmlubGluZS1saXN0IHtcbiAgICBAZXh0ZW5kIC5uby1idWxsZXQtbGlzdDtcblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLnNpbmdsZS1saW5lLXRleHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufSIsIkBtaXhpbiBjaXJjbGUoICRkaW1lbnNpb25zICkge1xuICAgIHdpZHRoOiAjeyRkaW1lbnNpb25zfXB4O1xuICAgIGhlaWdodDogI3skZGltZW5zaW9uc31weDtcbiAgICBib3JkZXItcmFkaXVzOiAjeyRkaW1lbnNpb25zfXB4O1xufVxuXG5AbWl4aW4gd2hlbi1pbnNpZGUoJGNvbnRleHQpIHtcbiAgICAjeyRjb250ZXh0fSAmIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gd3lzaXd5Zygkc2NoZW1lKSB7XG4gICAgJGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICRzY2hlbWUgPT0gJ2xpZ2h0JyB7XG4gICAgICAgICRjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIHAsXG4gICAgLyphLCovXG4gICAgc3BhbixcbiAgICBsaSxcbiAgICBibG9ja3F1b3RlLFxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG59XG5cbkBtaXhpbiBjaGV2cm9uLXJpZ2h0KCAkY29sb3I6ICRwcmltYXJ5ICkge1xuICAgICRjb2xvcl9wYXJzZWQ6IHN0ci1yZXBsYWNlKCN7JGNvbG9yfSwgXCIjXCIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjAlMjAyMCUyMiUyMHdpZHRoJTNEJTIyMjBweCUyMiUyMGhlaWdodCUzRCUyMjIwcHglMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjIwJTIyJTIweG1sJTNBc3BhY2UlM0QlMjJwcmVzZXJ2ZSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcGF0aCUyMGZpbGwlM0QlMjIlMjMjeyRjb2xvcl9wYXJzZWR9JTIyJTIwZCUzRCUyMk0xMy4yNSUyMDEwbC03LjE0MS03LjQyYy0wLjI2OC0wLjI3LTAuMjY4LTAuNzA3JTIwMC0wLjk3OSUyMDAuMjY4LTAuMjclMjAwLjcwMS0wLjI3JTIwMC45NjklMjAwbDcuODMlMjA3LjkwOGMwLjI2OCUyMDAuMjcxJTIwMC4yNjglMjAwLjcwOSUyMDAlMjAwLjk3OWwtNy44MyUyMDcuOTA4Yy0wLjI2OCUyMDAuMjcxLTAuNzAxJTIwMC4yNy0wLjk2OSUyMDBzLTAuMjY4LTAuNzA3JTIwMC0wLjk3OWw3LjE0MS03LjQxN3olMjIlM0UlM0MlMkZwYXRoJTNFJTBBJTNDJTJGc3ZnJTNFXCIpO1xufVxuXG5AbWl4aW4gc2VhcmNoLXBvcHVwKCkge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbiwgbWF4LWhlaWdodCAwLjJzIGVhc2UtaW47XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRvcDogY2FsYyggMTAwJSArIDMwcHggKTtcblxuICAgIGZvcm0ge1xuICAgICAgICBwYWRkaW5nOiBzcGFjZSggNCApO1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiJHByaW1hcnk6IG1hcC1nZXQoICRmb3VuZGF0aW9uLXBhbGV0dGUsICdwcmltYXJ5JyApO1xuJHNlY29uZGFyeTogbWFwLWdldCggJGZvdW5kYXRpb24tcGFsZXR0ZSwgJ3NlY29uZGFyeScgKTtcbiR0ZXJ0aWFyeTogbWFwLWdldCggJGZvdW5kYXRpb24tcGFsZXR0ZSwgJ3RlcnRpYXJ5JyApO1xuXG4kbGlnaHQtYmx1ZTogI0VBRjZGQjtcbiRoZWFkaW5nLWJsdWU6ICMxMzVBNzY7XG4kYm9keS1mb250LWNvbG9yOiAjNDc0NzQ3O1xuJGZ1bGwtZ3JleTogIzRhNGE0YTtcblxuLy8gRm9udCB3ZWlnaHRzXG4kbGlnaHQ6IDMwMDtcbiRub3JtYWw6IDQwMDtcbiRzZW1pLWJvbGQ6IDYwMDtcbiRib2xkOiA3MDA7XG4kZXh0cmEtYm9sZDogODAwO1xuXG4kaGVhZGVyLWhlaWdodDogMTE3cHg7XG5cbiR6LWxheWVyczogKFxuICAgIFwiYm90dG9tXCI6IC05OTk5LFxuICAgIFwiemVyb1wiOiAwLFxuICAgIFwiZGVmYXVsdFwiOiAxLFxuICAgIFwibW9kYWxcIjogMTAsXG4gICAgXCJvdmVybGF5XCIgOiA5LFxuICAgIFwic3RpY2t5LWhlYWRlclwiOiA4XG4pO1xuXG4kYmFzZWxpbmUtaGVpZ2h0OiA3cHg7XG5cbi8qXG4qICAgVGhlc2Ugc2hvdWxkIGJlIHRoZSBzbHVnIG9mIGEgZmxleCBjb250ZW50IGZpZWxkLCBhbG9uZyB3aXRoIHRoZSBkYXNoaWNvbnMgY2hhcmFjdGVyXG4qL1xuJGFkbWluX2FjZl9pY29uczogKFxuICAgICd0ZXh0JyA6ICcxMjMnLFxuICAgICd0d28tY29sdW1ucycgOiAnMjE0JyxcbiAgICAnYmFubmVyJyA6ICc1MjYnLFxuICAgICdmb3JtJyA6ICcxMTYnLFxuICAgICdhY2NvcmRpb24nIDogJzUwMicsXG4gICAgJ3JlbGF0ZWQtY29udGVudCc6ICcxMDMnLFxuICAgICdzaGFyaW5nJyA6ICcyMzcnLFxuICAgICdnYWxsZXJ5JyA6ICcyMzInLFxuICAgICdwb3N0cy1saXN0JyA6ICcxMDknLFxuICAgICdncmlkJyA6ICcxODAnLFxuICAgICd0YWJzJyA6ICc1MTAnLFxuICAgICdzaW1wbGUtYmxvY2staGVhZGluZycgOiAnMjE1JyxcbiAgICAnc2ltcGxlLWJsb2NrLXBhcmFncmFwaCcgOiAnMTIzJyxcbiAgICAnc2ltcGxlLWJsb2NrLWltYWdlJyA6ICcxMjgnLFxuICAgICdzaW1wbGUtYmxvY2stZm9ybScgOiAnMTE2JyxcbiAgICAnc2ltcGxlLWJsb2NrLXNoYXJpbmcnIDogJzIzNycsXG4gICAgJ3NpbXBsZS1ibG9jay11c2VmdWwtbGlua3MnIDogJzE2MycsXG4gICAgJ3Rlc3RpbW9uaWFscy1saXN0JyA6ICcxNTUnLFxuKTtcblxuLypcbiogICBJZiBkb2luZyBhbnkgaWNvbiBzZWxlY3Rpb24gaW4gQUNGLCBhcHBseSB0aGUgcmFkaW8tYnV0dG9uLWljb24tcmVwbGFjZW1lbnRzIGNsYXNzIHRvIHRoZSBBQ0YgZmllbGRcbiogICBUaGUgaXRlbXMgaW4gdGhpcyBhcnJheSBzaG91bGQgbWF0Y2ggYm90aCB0aGUgcmFkaW8gYnV0dG9uIHZhbHVlLCBhbmQgdGhlIFNWRyBpbWFnZSBmaWxlIChsb2NhdGVkIHVuZGVyIGFzc2V0cy9pbWcvKVxuKi9cbi8vICRjdXN0b21faWNvbnM6IChcbi8vICAgICAnY2FzZSdcbi8vICk7XG5cbiIsIi53eXNpd3lnLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHd5c2l3eWcoZGFyayk7XG59XG5cbmJvZHkge1xuICAgIGZvbnQtd2VpZ2h0OiAkbGlnaHQ7XG4gICAgaDEge1xuICAgICAgICBmb250LXdlaWdodDogJGxpZ2h0O1xuICAgICAgICBjb2xvcjogJGhlYWRpbmctYmx1ZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDU3cHg7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjk1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjE0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xNHB4O1xuICAgICAgICBmb250LXdlaWdodDogJGxpZ2h0O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjY4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIH1cbn0iLCIuYnV0dG9uLS1pY29uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xufVxuXG4uYnV0dG9uLS1hcnJvdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIEBpbmNsdWRlIGNoZXZyb24tcmlnaHQoICR3aGl0ZSApO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICByaWdodDogMTNweDtcbiAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC4ycyBlYXNlLWluO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idXR0b24uc2Vjb25kYXJ5LFxuLmJ1dHRvbi50ZXJ0aWFyeSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxufVxuXG4uYnV0dG9uLnNlY29uZGFyeSxcbi5idXR0b24udGVydGlhcnkge1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG9uIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wNHB4O1xuICAgIHBhZGRpbmc6IDEwcHggNTVweDtcbn1cbi5idXR0b24taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDI1cHg7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG59IiwiLnN2Zy1pY29uIHtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xufSIsImhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbn1cbi5ob21lIHtcbiAgICBoZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cbi5sb2dvIHtcbiAgICBwYWRkaW5nOiBzcGFjZSggMSApIDAgMCAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiA5cHg7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAzMTBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCB0YWJsZXQgKSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgICAgcGFkZGluZzogc3BhY2UoIDQgKSAwIHNwYWNlKCAyICk7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIGxhcmdlICkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG59XG5cbi5sb2dvX190ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5yb3cubGFyZ2UtdW5jb2xsYXBzZSB7XG4gICAgJiA+IC5jb2x1bW5zLFxuICAgICYgPiAuY29sdW1uIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggbGFyZ2UgKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIobGFyZ2UpO1xuICAgICAgICB9IFxuICAgIH1cbn0iLCJAZnVuY3Rpb24geigka2V5KSB7XG4gICAgQGlmIG1hcF9oYXNfa2V5KCR6LWxheWVycywgJGtleSkge1xuICAgICAgICBAcmV0dXJuIG1hcF9nZXQoJHotbGF5ZXJzLCAka2V5KTtcbiAgICB9XG4gICAgQGVycm9yIFwiVW5rbm93biBgI3ska2V5fWAgaW4gJHotbGF5ZXJzLlwiO1xuICAgIEByZXR1cm4gbnVsbDtcbn1cblxuQGZ1bmN0aW9uIHNwYWNlKCAkbXVsdGlwbGllciApIHtcblxuICAgIEByZXR1cm4gJGJhc2VsaW5lLWhlaWdodCAqICRtdWx0aXBsaWVyO1xufVxuXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6ICcnKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbn1cblxuQHJldHVybiAkc3RyaW5nO1xufSIsImZvb3RlciB7XG4gICAgcGFkZGluZzogMjNweCAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIEBpbmNsdWRlIHd5c2l3eWcobGlnaHQpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XG4gICAgfVxufVxuXG4uZm9vdGVyX19yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDUpO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5mb290ZXJfX2N0YS1saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFjZSgyKTtcbn1cblxuLmJ1dHRvbi0tZm9vdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA5cHg7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMWVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0IG9ubHkgKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCA1MCUgLSAxMHB4ICk7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggeGxhcmdlICkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4uZm9vdGVyX19ibG9jayxcbi5mb290ZXJfX2Jsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxN3B4O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE3cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgfVxufVxuXG4uZm9vdGVyX19ibG9jay0tYWRkcmVzcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggeGxhcmdlICkge1xuICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICB9XG59XG5cbi5mb290ZXJfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbn1cblxuLmZvb3Rlcl9fdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG4uZm9vdGVyX190YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbn1cblxuLmZvb3Rlcl9fdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICB9XG59XG4ubmVoYy1mbGFncyB7XG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzUlO1xuICAgICAgICB9XG4gICAgfVxufVxuLmFja25vd2xlZGdlbWVudCB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxufVxuXG4uYWNrbm93bGVkZ2VtZW50X19yb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGZ1bGwtZ3JleTtcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCB0YWJsZXQgKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICB9XG59XG4iLCIubm8tanMge1xuICAgICNtYWluLW5hdi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5uYXYtLXNvY2lhbCB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIGxhcmdlIGRvd24gKSB7XG4gICAgICAgIC5pbmxpbmUtbGlzdCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXZfX3RvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDNweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIC01MCUgKTtcbiAgICByaWdodDogMjFweDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCB0YWJsZXQgKSB7XG4gICAgICAgIHRvcDogNjhweDtcbiAgICB9XG59XG5cbi50b2dnbGVfX2xpbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbiwgY29sb3IgMC4ycyBlYXNlLWluO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5uYXZfX3RvZ2dsZS0tYWN0aXZlIHtcbiAgICAudG9nZ2xlX19saW5lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkLFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0b3A6IDExcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmF2X19tZW51LFxuLm5hdl9fbWVudS5kcm9wZG93bi5tZW51IHtcbiAgICB6LWluZGV4OiBtYXAtZ2V0KCAkei1sYXllcnMsICdzdGlja3ktaGVhZGVyJyApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSBkb3duICkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmID4gbGkge1xuICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIGxhcmdlICkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDYycHggMjBweDtcbiAgICAgICAgICAgICAgICAvL2xpbmUtaGVpZ2h0OiAxMjRweDtcbiAgICAgICAgICAgICAgICAvLzE0Ni4zOHB4XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXYtY29sdW1uIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIGxhcmdlICkge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxufVxuXG4ubWVudSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGxpLmlzLWRyaWxsZG93bi1zdWJtZW51LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbiNtYWluLW5hdi1tZW51IHtcbiAgICAubmF2LW1haW4taXRlbS5jdXJyZW50LW1lbnUtYW5jZXN0b3IgYSwgXG4gICAgLm5hdi1tYWluLWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gYSwgXG4gICAgLm5hdi1tYWluLWl0ZW0uaXMtYWN0aXZlIGEsIFxuICAgIC5uYXYtbWFpbi1pdGVtOmhvdmVyIGEge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCB0YWJsZXQgZG93biApIHtcbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4ubmF2LW1haW4taXRlbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wNHB4O1xuICAgICAgICAvL2NvbG9yOiAjMDAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gICAgLnN1Ym1lbnUge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggbGFyZ2UgKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmN1cnJlbnQtbWVudS1pdGVtLFxuICAgICYuY3VycmVudC1tZW51LWFuY2VzdG9yLFxuICAgICYuaXMtYWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LCA1KTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkcHJpbWFyeSwgNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWw+bGkge1xuICAgICYuY3VycmVudC1tZW51LWl0ZW0sXG4gICAgJi5jdXJyZW50LW1lbnUtYW5jZXN0b3IsXG4gICAgJi5pcy1hY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICAgICYuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgIC5pcy1hY3RpdmUge1xuICAgICAgICA+YSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWVudSA+IGxpLmpzLWRyaWxsZG93bi1iYWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbn0iLCIuaGVhZGVyX19zZWFyY2gge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbn1cblxuLnNlYXJjaGZvcm0ge1xuICAgIC5zZWFyY2hfX3dyYXBwZXIge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCAxMDAlIC0gNDBweCApO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uc2VhcmNoLWJveC0tcG9wdXAge1xuICAgIEBpbmNsdWRlIHNlYXJjaC1wb3B1cDtcbn1cblxuLnNlYXJjaC1ib3gge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSBkb3duICkge1xuICAgICAgICBAaW5jbHVkZSBzZWFyY2gtcG9wdXA7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnNlYXJjaC1ib3gtLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiB6KCdtb2RhbCcpO1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xufVxuXG4uc2VhcmNoX19vdmVybGF5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCAwLCAwLCAwLCAwLjMgKTtcbiAgICB6LWluZGV4OiB6KCdvdmVybGF5Jyk7XG59XG5cbi5oZWFkZXJfX3NlYXJjaC1idXR0b24ge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSBkb3duICkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogKCAkaGVhZGVyLWhlaWdodCAvIDIgKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCAtNTAlICk7XG4gICAgICAgIHJpZ2h0OiA4MHB4O1xuICAgICAgICB6LWluZGV4OiB6KCdtb2RhbCcpO1xuICAgIH1cbn1cblxuLmhlYWRlcl9fc2VhcmNoLWJ1dHRvbi0tc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xufVxuXG4uaGVhZGVyX19zZWFyY2gtYnV0dG9uLS1jbG9zZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjRweDtcblxuICAgIC5zZWFyY2gtYnV0dG9uX19jbG9zZS1saW5lIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLCBjb2xvciAwLjJzIGVhc2UtaW47XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4uaGVhZGVyX19zZWFyY2gtYnV0dG9uLS1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNzZWFyY2hzdWJtaXQge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeTtcblxuICAgIC5zdmctaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgfVxufSIsIi5jb250ZW50LWJsb2NrIHtcbiAgICBwYWRkaW5nOiBzcGFjZSggNCApIDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCB0YWJsZXQgKSB7XG4gICAgICAgIHBhZGRpbmc6IHNwYWNlKCA2ICkgMDtcbiAgICB9XG4gICAgJi5pbnZlcnNlLWNvbG9yLWJsb2NrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDNweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuODdweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkbGlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTdweDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAuaW50cm8tY29udGVudCB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGZ1bGwtZ3JleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLWJsb2NrIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW50cm8tY29udGVudCB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICRmdWxsLWdyZXk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50LWJsb2NrLS1zaW1wbGUge1xuICAgIHBhZGRpbmc6IHNwYWNlKCAxICkgMDtcbn1cbi5jb250ZW50LWJsb2NrLS1ib3JkZXItYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGhlYWRpbmctYmx1ZTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgbWFyZ2luOiA0MnB4IGF1dG8gMDtcbiAgICB9XG59XG4uY29udGVudC1ibG9jay0tZ3JpZCB7XG4gICBoMiB7XG4gICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgIGxldHRlci1zcGFjaW5nOiAzLjA1cHg7XG4gICAgICAgbGluZS1oZWlnaHQ6IDk4cHg7XG4gICAgICAgZm9udC13ZWlnaHQ6ICRsaWdodDtcbiAgIH1cbn1cbmJsb2NrcXVvdGUge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgZm9udC1mYW1pbHk6ICdMb3JhJywgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6ICRub3JtYWw7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiAkZnVsbC1ncmV5O1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxufVxuIiwiLm1hc29ucnlfX2Jsb2NrLFxuLm1hc29ucnlfX2Jsb2NrLS1zaXplciB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCBtZWRpdW0gKSB7XG4gICAgICAgIHdpZHRoOiA0NyU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggbGFyZ2UgKSB7XG4gICAgICAgIHdpZHRoOiAzMSU7XG4gICAgfVxufVxuXG4ubWFzb25yeV9fYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBzcGFjZSg1KTtcbiAgICB9XG59XG5cbi5tYXNvbnJ5X19pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoNSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWFzb25yeV9fY29udGVudCB7XG4gICAgcGFkZGluZzogc3BhY2UoMyk7XG59IiwiLmZ1bGwtcm93LWxpc3RfX2l0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKCAyICk7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBzcGFjZSggNSApO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKCAyICk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggbWVkaXVtICkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuYmxvY2stZ3JpZF9faXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoNCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG59XG5cbi5ibG9jay1ncmlkX19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbn1cblxuLmJsb2NrLWdyaWRfX3RpdGxlIHtcbiAgICBAZXh0ZW5kIGg0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiBzcGFjZSgxKTtcbn1cblxuLmdyaWQtYmctaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMjIwcHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXgtd2lkdGg6IDEwMiU7XG4gICAgd2lkdGg6IDEwMiU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xufVxuLmNvbnRlbnQtYmxvY2stLWdyaWQge1xuICAgICYuaW52ZXJzZS1jb2xvci1ibG9jayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgfVxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjk1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQtYmxvY2staXRlbSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI0MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAuYnV0dG9uLWJsb2NrIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggbWVkaXVtICkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCB0YWJsZXQgKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGFyZ2UtdXAtMyB7XG4gICAgICAgICAgICAuY29udGVudC1ibG9jay1pdGVtIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuICsyKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggbWVkaXVtICkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDQ4JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybiArMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMzIlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMyJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuYmFubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmLmJhbm5lci0tb3ZlcmxheSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgei1pbmRleDogeignemVybycpXG4gICAgICAgIH1cblxuICAgICAgICAmLmJhbm5lci0tb3ZlcmxheS1kYXJrIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFja1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmFubmVyX19jb250ZW50LWlubmVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB3eXNpd3lnKGxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYmFubmVyLS1vdmVybGF5LWxpZ2h0IHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci0tbm8tb3ZlcmxheS1zbWFsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggc21hbGwgb25seSApIHtcblxuICAgICAgICAuYmFubmVyX19jb250ZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyX19jb250ZW50LWlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHNwYWNlKDEpIDAgMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5iYW5uZXItLW92ZXJsYXk6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYmFubmVyLS1vdmVybGF5LmJhbm5lci0tb3ZlcmxheS1kYXJrIHtcbiAgICAgICAgICAgIC5iYW5uZXJfX2NvbnRlbnQtaW5uZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHd5c2l3eWcoZGFyayk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iYW5uZXItLXNtYWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuYmFubmVyX19jb250ZW50ID4gLnJvdyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4ucm93IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCBtZWRpdW0gKSB7XG4gICAgICAgIEBpbmNsdWRlIHdoZW4taW5zaWRlKCcuYmFubmVyLS1jb250ZW50LXJpZ2h0Jykge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigncmlnaHQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHdoZW4taW5zaWRlKCcuYmFubmVyLS1jb250ZW50LWxlZnQnKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCdsZWZ0Jyk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSB3aGVuLWluc2lkZSgnLmJhbm5lci0tY29udGVudC1jZW50ZXInKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCdjZW50ZXInKTtcblxuICAgICAgICAgICAgLmNvbHVtbnMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbiggNiApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4uYmFubmVyX19jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgei1pbmRleDogeignZGVmYXVsdCcpO1xufVxuXG4uYmFubmVyX19jb250ZW50LWlubmVyIHtcbiAgICBwYWRkaW5nOiBzcGFjZSg1KSAwO1xufVxuXG4uYmFubmVyX19jb250ZW50LWlubmVyLS1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogc3BhY2UoNSk7XG59IiwiLmdmb3JtX2ZpZWxkcyB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3coKTtcbn1cblxuLmdmb3JtX3dyYXBwZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93KCAkYmVoYXZpb3I6IG5lc3QgKTtcbn1cblxuLmdmb3JtX2hlYWRpbmcsXG4uZ2Zvcm1fZm9vdGVyLFxuLnZhbGlkYXRpb25fZXJyb3Ige1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xufVxuXG4uZ2ZpZWxkIHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKCAxMiApO1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKCA1ICk7XG5cbiAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoIDEgKTtcbiAgICB9XG5cbiAgICAmLmhhbGYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCBtZWRpdW0gKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKCA2ICk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSB3aGVuLWluc2lkZSggJy53aWRnZXQnICkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbiggMTIgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFt0eXBlPVwidGV4dFwiXSwgXG4gICAgW3R5cGU9XCJwYXNzd29yZFwiXSwgXG4gICAgW3R5cGU9XCJkYXRlXCJdLCBcbiAgICBbdHlwZT1cImRhdGV0aW1lXCJdLCBcbiAgICBbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLCBcbiAgICBbdHlwZT1cIm1vbnRoXCJdLCBcbiAgICBbdHlwZT1cIndlZWtcIl0sIFxuICAgIFt0eXBlPVwiZW1haWxcIl0sIFxuICAgIFt0eXBlPVwibnVtYmVyXCJdLCBcbiAgICBbdHlwZT1cInNlYXJjaFwiXSwgXG4gICAgW3R5cGU9XCJ0ZWxcIl0sIFxuICAgIFt0eXBlPVwidGltZVwiXSwgXG4gICAgW3R5cGU9XCJ1cmxcIl0sIFxuICAgIFt0eXBlPVwiY29sb3JcIl0sIFxuICAgIHRleHRhcmVhLFxuICAgIHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmluc3RydWN0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgfVxufVxuXG4uZ3NlY3Rpb25fdGl0bGUge1xuICAgIHBhZGRpbmctYm90dG9tOiBzcGFjZSggMiApO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xufVxuXG4uZ2ZpZWxkX3JhZGlvLFxuLmdmaWVsZF9jaGVja2JveCB7XG4gICAgQGV4dGVuZCAubm8tYnVsbGV0LWxpc3Q7XG5cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5nZmllbGRfcmFkaW8ge1xuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNpcmNsZSggNSApO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSggLTUwJSApO1xuICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBtaW4taGVpZ2h0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2lyY2xlKCAxNSApO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSggLTUwJSApO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLWluO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2ZpZWxkX2NoZWNrYm94IHtcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3RpY2suc3ZnKSBuby1yZXBlYXQgdHJhbnNwYXJlbnQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogOHB4IDhweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGJvbGQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDExcHg7XG4gICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZS1pbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdmaWVsZF9yZXF1aXJlZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMnB4O1xuICAgIGNvbG9yOiAkYWxlcnQtY29sb3I7XG59XG5cbi52YWxpZGF0aW9uX2Vycm9yIHtcbiAgICBjb2xvcjogJGFsZXJ0LWNvbG9yO1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKCAyICk7XG59XG5cbi52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbn1cblxuLmNob3Nlbi1jb250YWluZXItbXVsdGkge1xuICAgIC5jaG9zZW4tY2hvaWNlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoICRzZWNvbmRhcnkgKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5cHggNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IGNlbnRlcjtcbiAgICB9XG59XG5cblxuLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IHtcbiAgICAuZ2lucHV0X3JpZ2h0LFxuICAgIC5naW5wdXRfbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHNtYWxsIG9ubHkgKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgd2lkdGggb2YgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR3aWR0aCBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIHRvIG1ha2UgdGhlIGNvbHVtbi4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICB3aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tc2l6ZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tc2l6ZVxuQG1peGluIGdyaWQtY29sLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbn1cbiIsIi5nYWxsZXJ5X19pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoNSk7XG59IiwiLm93bC1kb3RzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogc3BhY2UoMikgMDtcbn1cblxuLm93bC1kb3Qge1xuICAgIEBpbmNsdWRlIGNpcmNsZSggMTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIHNwYWNlKDEpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluO1xuXG4gICAgJi5hY3RpdmUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeTtcbiAgICB9XG5cbn0iLCIud2lkZ2V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiBzcGFjZSg1KTtcbiAgICB1bCB7XG4gICAgICAgIEBleHRlbmQgLm5vLWJ1bGxldC1saXN0O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5zaW5nbGUtbGluZS10ZXh0O1xuICAgICAgICB9XG4gICAgfVxufSIsIi5icmVhZGNydW1icy13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiBzcGFjZSgyKSAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xufSIsIi5zb2NpYWwtaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZS1pbjtcblxuICAgIC5zdmctaWNvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4ycyBlYXNlLWluO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xuXG4gICAgICAgIC5zdmctaWNvbiB7XG4gICAgICAgICAgICBmaWxsOiAkc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN2Zy1pY29uIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSB3aGVuLWluc2lkZSgnLmZvb3Rlcl9fcm93Jykge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgICYuc29jaWFsLWljb24tLXR3aXR0ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5zdmctaWNvbiB7XG4gICAgICAgICAgICAgICAgZmlsbDogIzM4QTFGMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xufVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuLmFjY29yZGlvbi1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICAgIGNvbG9yOiAkZnVsbC1ncmV5O1xuICAgICAgICBmb250LXdlaWdodDogJHNlbWktYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaGVhZGluZy1ibHVlO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZnVsbC1ncmV5O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZzogZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vaW1nL2FjY29yZGlvbi1wbHVzLnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OjIwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDExcHgpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzFweCAzMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzFweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCB0YWJsZXQgKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZnVsbC1ncmV5O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoZWFkaW5nLWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pcy1hY3RpdmU+LmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgYW5pbWF0aW9uOiAzcztcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9hY2NvcmRpb24tbWludXMuc3ZnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgICAgICBsZWZ0OjIwcHg7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAxMXB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMXB4IDMxcHg7XG4gICAgICAgIGhlaWdodDogMzFweDtcbiAgICAgICAgd2lkdGg6IDMxcHg7XG4gICAgfVxufVxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpPi5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaGVhZGluZy1ibHVlO1xufSIsIi5uZWhjX3NpZGViYXIge1xuICBoMiB7XG4gICAgY29sb3I6ICRoZWFkaW5nLWJsdWU7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjAycHg7XG4gICAgZm9udC13ZWlnaHQ6ICRzZW1pLWJvbGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAuZ2ZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGlucHV0W3R5cGU9ZW1haWxdLFxuICBpbnB1dFt0eXBlPWVtYWlsXSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1lbWFpbF0sXG4gIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuICAuY29udGVudC1ibG9jay0tdXNlZnVsLWxpbmtzIHtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6ICRzZW1pLWJvbGQ7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNzZweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG4gIC5jb250ZW50LWJsb2NrLS1zaW1wbGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaW1nIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxufSIsIi5jb250ZW50LWJsb2NrLS10ZXN0aW1vbmlhbHMtbGlzdCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuXG4gICYuY29udGVudC1ibG9jay0taGFzLWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiA0MnB4O1xuICB9XG59XG5cbi5yb3ctdGVzdGltb25pYWwge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhlYWRpbmctYmx1ZTtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoIHRhYmxldCApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTVweDtcbiAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgfVxuICAmLmxhc3QtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG4udGVzdGltb25pYWxfX2ltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4udGVzdGltb25pYWxfX2hlYWRpbmcge1xuICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMzNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC42NXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6ICRzZW1pLWJvbGQ7XG59XG5cbi50ZXN0aW1vbmlhbF9fZGVzY3JpcHRpb24ge1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogJGhlYWRpbmctYmx1ZTtcbiAgZm9udC13ZWlnaHQ6ICRzZW1pLWJvbGQ7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6MzJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC45NXB4O1xuICBmb250LWZhbWlseTogJ0xvcmEnLCBzZXJpZjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCggdGFibGV0ICkge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDozOXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjE0cHg7XG4gIH1cbn1cblxuLm1lbWJlciB7XG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgY29sb3I6ICRmdWxsLWdyZXk7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAuNTRweDtcbiAgICBmb250LXdlaWdodDogJGxpZ2h0O1xuICB9XG59XG5cblxuXG4iLCIucG9zdHMtbGlzdCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICAgICAgICBjb2xvcjogJGhlYWRpbmctYmx1ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRsaWdodDtcbiAgICB9XG59XG4ucG9zdHMtbGlzdF9fcG9zdCB7XG4gICAgLy9tYXJnaW4tYm90dG9tOiBzcGFjZSg2KTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIGgyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTZweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBjb2xvcjogJGZ1bGwtZ3JleTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC42OHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRib2xkO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnBvc3RfX2luZm8ge1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG4gICAgfVxuICAgIC5idXR0b24ucHJpbWFyeS5zbWFsbCB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAyNXB4O1xuICAgIH1cbn1cbi5zaW5nbGUtcG9zdCB7XG4gICAgaWZyYW1lIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgfVxufSIsImJvZHkge1xuICAmLmhvbWUge1xuICAgIGgxIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIC8vYm9yZGVyLWJvdHRvbTogMTRweCBzb2xpZCBtYXAtZ2V0KCAkZm91bmRhdGlvbi1wYWxldHRlLCAndGVydGlhcnknICk7XG4gICAgICAvL2JhY2tncm91bmQ6IHVybCgnLi4vaW1nL3BpbmstbGluZS5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAvL2JhY2tncm91bmQtc2l6ZTogMTU1cHggMTRweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgI0VEMUM4QjtcbiAgICAgIC8vcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAvL2JhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgIC8vIFRPRE86IGFkZCB0aGlzIGlmIG5vIHN1YnRpdGxlLlxuICAgICAgLy9tYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC44N3B4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBsaW5lLWhlaWdodDogNTdweDtcbiAgICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDRweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMTRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgaDIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjk1cHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMTRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQtYmxvY2stLWdhbGxlcnkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC5jb2x1bW5zIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudC1ibG9jay0taG9tZS1pbnRyb2R1Y3Rpb24ge1xuICAgICAgcGFkZGluZzogMi42MjVyZW0gMCAwO1xuICAgICAgcCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQtYmxvY2stLWdyaWQge1xuICAgICAgLmJsb2NrLWdyaWRfX2l0ZW0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbjtcbiAgICAgICAgYm94LXNoYWRvdzogMnB4IDJweCAycHggMnB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3gtc2hhZG93OiA0cHggNHB4IDEycHggMnB4IHJnYmEoMCwwLDAsLjMpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgbWFyZ2luOiAxJTtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgIG1heC13aWR0aDogMzElO1xuICAgICAgICAgIGZsZXg6IDAgMCAzMSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGgzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNzZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRib2xkO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICB9XG5cbiAgICB9XG4gICAgLm93bC1jYXJvdXNlbCB7XG4gICAgICAuYmFubmVyLXBhbmVsIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBjb2xvcjogJGhlYWRpbmctYmx1ZTtcbiAgICAgICAgfVxuICAgICAgICBoMiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICAuY29sdW1ucyB7XG4gICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTFweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNvbnRhY3QtcGFnZSB7XG4gIC5jb250ZW50LWJsb2NrIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAuY29udGVudC1ibG9jay0tc2ltcGxlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkbGlnaHQ7XG4gICAgfVxuICB9XG59XG4uY29udGFjdC1pbWFnZSB7XG4gIHBhZGRpbmc6IDA7XG59IiwiQGltcG9ydCAndmVuZG9ycy9mb3VuZGF0aW9uL3NldHRpbmdzJztcbkBpbXBvcnQgJ3ZlbmRvcnMvZm91bmRhdGlvbi9jb21wb25lbnRzJztcblxuQGltcG9ydCAndmVuZG9ycy93b3JkcHJlc3MtY29yZSc7XG5AaW1wb3J0ICd2ZW5kb3JzL2xpdHknO1xuQGltcG9ydCAndmVuZG9ycy9jaG9zZW4nO1xuQGltcG9ydCAndmVuZG9ycy9vd2wtY2Fyb3VzZWwnO1xuQGltcG9ydCAndmVuZG9ycy9ncmF2aXR5LWZvcm1zJztcblxuQGltcG9ydCAndXRpbHMvdmFyaWFibGVzJztcbkBpbXBvcnQgJ3V0aWxzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICd1dGlscy9taXhpbnMnO1xuXG5AaW1wb3J0ICdiYXNlL2hlbHBlcnMnO1xuQGltcG9ydCAnYmFzZS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Jhc2UvYnV0dG9ucyc7XG5AaW1wb3J0ICdiYXNlL2ljb25zJztcblxuQGltcG9ydCAnY29tcG9uZW50cy9oZWFkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9mb290ZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9tYWluLW5hdmlnYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9zZWFyY2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb250ZW50LWJsb2NrJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWFzb25yeSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Z1bGwtcm93LWxpc3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9ibG9jay1ncmlkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFubmVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9nYWxsZXJ5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2lkZWJhci13aWRnZXRzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zb2NpYWwtaWNvbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9uZWhjLXNpZGViYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90ZXN0aW1vbmlhbC1ibG9jayc7XG5cbkBpbXBvcnQgJ3BhZ2VzL3Bvc3RzLWxpc3QnO1xuQGltcG9ydCAncGFnZXMvc2luZ2xlLXBvc3QnO1xuQGltcG9ydCAncGFnZXMvaG9tZS1wYWdlJztcbkBpbXBvcnQgJ3BhZ2VzL2NvbnRhY3QtcGFnZSc7XG5cbi5zdHlsZWd1aWRlLXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLnN0eWxlZ3VpZGUtc2VjdGlvbl9fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLmRlYnVnLW1vZGUtb24gLmN1cnJlbnQtYnJlYWtwb2ludCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0b21hdG87XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogOTk5OTk7XG59XG5cbi5jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgfVxufVxuI2Fib3V0LXJlc3BpbiB7XG4gICAgcGFkZGluZy10b3A6IDA7XG59Il19 */
