/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:0.67em 0}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.foundation-mq{font-family:"small=0em&smallish=30em&medium=48em&large=64em&xlarge=75em&xxlarge=90em"}html{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:100%}*,*::before,*::after{-webkit-box-sizing:inherit;box-sizing:inherit}body{margin:0;padding:0;background:#fefefe;font-family:"Roboto",sans-serif;font-weight:normal;line-height:1.5;color:#0a0a0a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle;max-width:100%;height:auto;-ms-interpolation-mode:bicubic}textarea{height:auto;min-height:50px;border-radius:0}select{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;border-radius:0}.map_canvas img,.map_canvas embed,.map_canvas object,.mqa-display img,.mqa-display embed,.mqa-display object{max-width:none !important}button{padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;background:transparent;line-height:1;cursor:auto}[data-whatinput='mouse'] button{outline:0}pre{overflow:auto}button,input,optgroup,select,textarea{font-family:inherit}.is-visible{display:block !important}.is-hidden{display:none !important}.row{max-width:90rem;margin-right:auto;margin-left:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.row .row{margin-right:-.625rem;margin-left:-.625rem}@media print, screen and (min-width: 30em){.row .row{margin-right:-.625rem;margin-left:-.625rem}}@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}}@media screen and (min-width: 75em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}@media screen and (min-width: 90em){.row .row{margin-right:-.9375rem;margin-left:-.9375rem}}.row .row.collapse{margin-right:0;margin-left:0}.row.expanded{max-width:none}.row.expanded .row{margin-right:auto;margin-left:auto}.row:not(.expanded) .row{max-width:none}.row.collapse>.column,.row.collapse>.columns{padding-right:0;padding-left:0}.row.is-collapse-child,.row.collapse>.column>.row,.row.collapse>.columns>.row{margin-right:0;margin-left:0}.column,.columns{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;padding-right:.625rem;padding-left:.625rem;min-width:0}@media print, screen and (min-width: 48em){.column,.columns{padding-right:.9375rem;padding-left:.9375rem}}.column.row.row,.row.row.columns{float:none;display:block}.row .column.row.row,.row .row.row.columns{margin-right:0;margin-left:0;padding-right:0;padding-left:0}.small-1{-webkit-box-flex:0;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.small-offset-0{margin-left:0%}.small-2{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-offset-2{margin-left:16.66667%}.small-4{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-offset-3{margin-left:25%}.small-5{-webkit-box-flex:0;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-offset-5{margin-left:41.66667%}.small-7{-webkit-box-flex:0;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.small-offset-6{margin-left:50%}.small-8{-webkit-box-flex:0;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.small-offset-8{margin-left:66.66667%}.small-10{-webkit-box-flex:0;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.small-offset-9{margin-left:75%}.small-11{-webkit-box-flex:0;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-offset-11{margin-left:91.66667%}.small-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-1>.column,.small-up-1>.columns{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}.small-collapse>.column,.small-collapse>.columns{padding-right:0;padding-left:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-right:.625rem;padding-left:.625rem}@media print, screen and (min-width: 30em){.smallish-1{-webkit-box-flex:0;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.smallish-offset-0{margin-left:0%}.smallish-2{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.smallish-offset-1{margin-left:8.33333%}.smallish-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.smallish-offset-2{margin-left:16.66667%}.smallish-4{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.smallish-offset-3{margin-left:25%}.smallish-5{-webkit-box-flex:0;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.smallish-offset-4{margin-left:33.33333%}.smallish-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.smallish-offset-5{margin-left:41.66667%}.smallish-7{-webkit-box-flex:0;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.smallish-offset-6{margin-left:50%}.smallish-8{-webkit-box-flex:0;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.smallish-offset-7{margin-left:58.33333%}.smallish-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.smallish-offset-8{margin-left:66.66667%}.smallish-10{-webkit-box-flex:0;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.smallish-offset-9{margin-left:75%}.smallish-11{-webkit-box-flex:0;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.smallish-offset-10{margin-left:83.33333%}.smallish-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.smallish-offset-11{margin-left:91.66667%}.smallish-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-1>.column,.smallish-up-1>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.smallish-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-2>.column,.smallish-up-2>.columns{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.smallish-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-3>.column,.smallish-up-3>.columns{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.smallish-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-4>.column,.smallish-up-4>.columns{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.smallish-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-5>.column,.smallish-up-5>.columns{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.smallish-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-6>.column,.smallish-up-6>.columns{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.smallish-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-7>.column,.smallish-up-7>.columns{-webkit-box-flex:0;-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.smallish-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.smallish-up-8>.column,.smallish-up-8>.columns{-webkit-box-flex:0;-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media print, screen and (min-width: 30em) and (min-width: 30em){.smallish-expand{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}.row.smallish-unstack>.column,.row.smallish-unstack>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}@media print, screen and (min-width: 30em){.row.smallish-unstack>.column,.row.smallish-unstack>.columns{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 30em){.smallish-collapse>.column,.smallish-collapse>.columns{padding-right:0;padding-left:0}.smallish-uncollapse>.column,.smallish-uncollapse>.columns{padding-right:.625rem;padding-left:.625rem}}@media print, screen and (min-width: 48em){.medium-1{-webkit-box-flex:0;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.medium-offset-0{margin-left:0%}.medium-2{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-offset-2{margin-left:16.66667%}.medium-4{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-offset-3{margin-left:25%}.medium-5{-webkit-box-flex:0;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-offset-5{margin-left:41.66667%}.medium-7{-webkit-box-flex:0;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.medium-offset-6{margin-left:50%}.medium-8{-webkit-box-flex:0;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.medium-offset-8{margin-left:66.66667%}.medium-10{-webkit-box-flex:0;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.medium-offset-9{margin-left:75%}.medium-11{-webkit-box-flex:0;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-offset-11{margin-left:91.66667%}.medium-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-1>.column,.medium-up-1>.columns{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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){.medium-expand{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}.row.medium-unstack>.column,.row.medium-unstack>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}@media print, screen and (min-width: 48em){.row.medium-unstack>.column,.row.medium-unstack>.columns{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 48em){.medium-collapse>.column,.medium-collapse>.columns{padding-right:0;padding-left:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}@media print, screen and (min-width: 64em){.large-1{-webkit-box-flex:0;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.large-offset-0{margin-left:0%}.large-2{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-offset-2{margin-left:16.66667%}.large-4{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-offset-3{margin-left:25%}.large-5{-webkit-box-flex:0;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-offset-5{margin-left:41.66667%}.large-7{-webkit-box-flex:0;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.large-offset-6{margin-left:50%}.large-8{-webkit-box-flex:0;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.large-offset-8{margin-left:66.66667%}.large-10{-webkit-box-flex:0;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.large-offset-9{margin-left:75%}.large-11{-webkit-box-flex:0;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-offset-11{margin-left:91.66667%}.large-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-1>.column,.large-up-1>.columns{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:0;-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{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}.row.large-unstack>.column,.row.large-unstack>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}@media print, screen and (min-width: 64em){.row.large-unstack>.column,.row.large-unstack>.columns{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 64em){.large-collapse>.column,.large-collapse>.columns{padding-right:0;padding-left:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}@media screen and (min-width: 75em){.xlarge-1{-webkit-box-flex:0;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.xlarge-offset-0{margin-left:0%}.xlarge-2{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.xlarge-offset-1{margin-left:8.33333%}.xlarge-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.xlarge-offset-2{margin-left:16.66667%}.xlarge-4{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.xlarge-offset-3{margin-left:25%}.xlarge-5{-webkit-box-flex:0;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.xlarge-offset-4{margin-left:33.33333%}.xlarge-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.xlarge-offset-5{margin-left:41.66667%}.xlarge-7{-webkit-box-flex:0;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.xlarge-offset-6{margin-left:50%}.xlarge-8{-webkit-box-flex:0;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.xlarge-offset-7{margin-left:58.33333%}.xlarge-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.xlarge-offset-8{margin-left:66.66667%}.xlarge-10{-webkit-box-flex:0;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.xlarge-offset-9{margin-left:75%}.xlarge-11{-webkit-box-flex:0;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.xlarge-offset-10{margin-left:83.33333%}.xlarge-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.xlarge-offset-11{margin-left:91.66667%}.xlarge-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-1>.column,.xlarge-up-1>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.xlarge-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-2>.column,.xlarge-up-2>.columns{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.xlarge-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-3>.column,.xlarge-up-3>.columns{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.xlarge-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-4>.column,.xlarge-up-4>.columns{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.xlarge-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-5>.column,.xlarge-up-5>.columns{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.xlarge-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-6>.column,.xlarge-up-6>.columns{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.xlarge-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-7>.column,.xlarge-up-7>.columns{-webkit-box-flex:0;-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.xlarge-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.xlarge-up-8>.column,.xlarge-up-8>.columns{-webkit-box-flex:0;-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media screen and (min-width: 75em) and (min-width: 75em){.xlarge-expand{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}.row.xlarge-unstack>.column,.row.xlarge-unstack>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width: 75em){.row.xlarge-unstack>.column,.row.xlarge-unstack>.columns{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width: 75em){.xlarge-collapse>.column,.xlarge-collapse>.columns{padding-right:0;padding-left:0}.xlarge-uncollapse>.column,.xlarge-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}@media screen and (min-width: 90em){.xxlarge-1{-webkit-box-flex:0;-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.xxlarge-offset-0{margin-left:0%}.xxlarge-2{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.xxlarge-offset-1{margin-left:8.33333%}.xxlarge-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.xxlarge-offset-2{margin-left:16.66667%}.xxlarge-4{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.xxlarge-offset-3{margin-left:25%}.xxlarge-5{-webkit-box-flex:0;-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.xxlarge-offset-4{margin-left:33.33333%}.xxlarge-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.xxlarge-offset-5{margin-left:41.66667%}.xxlarge-7{-webkit-box-flex:0;-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.xxlarge-offset-6{margin-left:50%}.xxlarge-8{-webkit-box-flex:0;-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.xxlarge-offset-7{margin-left:58.33333%}.xxlarge-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.xxlarge-offset-8{margin-left:66.66667%}.xxlarge-10{-webkit-box-flex:0;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.xxlarge-offset-9{margin-left:75%}.xxlarge-11{-webkit-box-flex:0;-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.xxlarge-offset-10{margin-left:83.33333%}.xxlarge-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.xxlarge-offset-11{margin-left:91.66667%}.xxlarge-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-1>.column,.xxlarge-up-1>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.xxlarge-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-2>.column,.xxlarge-up-2>.columns{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.xxlarge-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-3>.column,.xxlarge-up-3>.columns{-webkit-box-flex:0;-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.xxlarge-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-4>.column,.xxlarge-up-4>.columns{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.xxlarge-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-5>.column,.xxlarge-up-5>.columns{-webkit-box-flex:0;-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.xxlarge-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-6>.column,.xxlarge-up-6>.columns{-webkit-box-flex:0;-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.xxlarge-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-7>.column,.xxlarge-up-7>.columns{-webkit-box-flex:0;-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.xxlarge-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.xxlarge-up-8>.column,.xxlarge-up-8>.columns{-webkit-box-flex:0;-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media screen and (min-width: 90em) and (min-width: 90em){.xxlarge-expand{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}.row.xxlarge-unstack>.column,.row.xxlarge-unstack>.columns{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width: 90em){.row.xxlarge-unstack>.column,.row.xxlarge-unstack>.columns{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width: 90em){.xxlarge-collapse>.column,.xxlarge-collapse>.columns{padding-right:0;padding-left:0}.xxlarge-uncollapse>.column,.xxlarge-uncollapse>.columns{padding-right:.9375rem;padding-left:.9375rem}}.shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;max-width:100%}.column-block{margin-bottom:1.25rem}.column-block>:last-child{margin-bottom:0}@media print, screen and (min-width: 48em){.column-block{margin-bottom:1.875rem}.column-block>:last-child{margin-bottom:0}}.align-left{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.align-right{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.align-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.align-justify{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.align-spaced{-ms-flex-pack:distribute;justify-content:space-around}.align-left.vertical.menu>li>a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.align-right.vertical.menu>li>a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.align-center.vertical.menu>li>a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.align-top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.align-self-top{-ms-flex-item-align:start;align-self:flex-start}.align-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.align-self-bottom{-ms-flex-item-align:end;align-self:flex-end}.align-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.align-self-middle{-ms-flex-item-align:center;align-self:center}.align-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.align-self-stretch{-ms-flex-item-align:stretch;align-self:stretch}.align-center-middle{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.small-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.small-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.small-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.small-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.small-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.small-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}@media print, screen and (min-width: 30em){.smallish-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.smallish-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.smallish-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.smallish-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.smallish-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.smallish-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media print, screen and (min-width: 48em){.medium-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.medium-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.medium-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.medium-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.medium-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.medium-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media print, screen and (min-width: 64em){.large-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.large-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.large-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.large-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.large-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.large-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media screen and (min-width: 75em){.xlarge-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.xlarge-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.xlarge-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.xlarge-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.xlarge-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.xlarge-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media screen and (min-width: 90em){.xxlarge-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.xxlarge-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.xxlarge-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.xxlarge-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.xxlarge-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.xxlarge-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}.flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}@media print, screen and (min-width: 30em){.smallish-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.smallish-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.smallish-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.smallish-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.smallish-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.smallish-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.smallish-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.smallish-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media print, screen and (min-width: 48em){.medium-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.medium-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.medium-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.medium-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.medium-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.medium-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.medium-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.medium-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media print, screen and (min-width: 64em){.large-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.large-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.large-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.large-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.large-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.large-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.large-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.large-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media screen and (min-width: 75em){.xlarge-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.xlarge-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.xlarge-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.xlarge-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.xlarge-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.xlarge-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.xlarge-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.xlarge-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media screen and (min-width: 90em){.xxlarge-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.xxlarge-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.xxlarge-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.xxlarge-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.xxlarge-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.xxlarge-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.xxlarge-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.xxlarge-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.hide{display:none !important}.invisible{visibility:hidden}@media screen and (max-width: 29.99875em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em), screen and (min-width: 30em){.show-for-small-only{display:none !important}}@media print, screen and (min-width: 30em){.hide-for-smallish{display:none !important}}@media screen and (max-width: 29.99875em){.show-for-smallish{display:none !important}}@media screen and (min-width: 30em) and (max-width: 47.99875em){.hide-for-smallish-only{display:none !important}}@media screen and (max-width: 29.99875em), screen and (min-width: 48em){.show-for-smallish-only{display:none !important}}@media print, screen and (min-width: 48em){.hide-for-medium{display:none !important}}@media screen and (max-width: 47.99875em){.show-for-medium{display:none !important}}@media screen and (min-width: 48em) and (max-width: 63.99875em){.hide-for-medium-only{display:none !important}}@media screen and (max-width: 47.99875em), screen and (min-width: 64em){.show-for-medium-only{display:none !important}}@media print, screen and (min-width: 64em){.hide-for-large{display:none !important}}@media screen and (max-width: 63.99875em){.show-for-large{display:none !important}}@media screen and (min-width: 64em) and (max-width: 74.99875em){.hide-for-large-only{display:none !important}}@media screen and (max-width: 63.99875em), screen and (min-width: 75em){.show-for-large-only{display:none !important}}@media screen and (min-width: 75em){.hide-for-xlarge{display:none !important}}@media screen and (max-width: 74.99875em){.show-for-xlarge{display:none !important}}@media screen and (min-width: 75em) and (max-width: 89.99875em){.hide-for-xlarge-only{display:none !important}}@media screen and (max-width: 74.99875em), screen and (min-width: 90em){.show-for-xlarge-only{display:none !important}}@media screen and (min-width: 90em){.hide-for-xxlarge{display:none !important}}@media screen and (max-width: 89.99875em){.show-for-xxlarge{display:none !important}}@media screen and (min-width: 90em){.hide-for-xxlarge-only{display:none !important}}@media screen and (max-width: 89.99875em){.show-for-xxlarge-only{display:none !important}}.show-for-sr,.show-on-focus{position:absolute !important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.show-on-focus:active,.show-on-focus:focus{position:static !important;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.show-for-landscape,.hide-for-portrait{display:block !important}@media screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:block !important}}@media screen and (orientation: portrait){.show-for-landscape,.hide-for-portrait{display:none !important}}.hide-for-landscape,.show-for-portrait{display:none !important}@media screen and (orientation: landscape){.hide-for-landscape,.show-for-portrait{display:none !important}}@media screen and (orientation: portrait){.hide-for-landscape,.show-for-portrait{display:block !important}}table{border-collapse:collapse;width:100%;margin-bottom:1rem;border-radius:0}thead,tbody,tfoot{border:1px solid #f1f1f1;background-color:#fefefe}caption{padding:.5rem .625rem .625rem;font-weight:bold}thead{background:#f8f8f8;color:#0a0a0a}tfoot{background:#f1f1f1;color:#0a0a0a}thead tr,tfoot tr{background:transparent}thead th,thead td,tfoot th,tfoot td{padding:.5rem .625rem .625rem;font-weight:bold;text-align:left}tbody th,tbody td{padding:.5rem .625rem .625rem}tbody tr:nth-child(even){border-bottom:0;background-color:#f1f1f1}table.unstriped tbody{background-color:#fefefe}table.unstriped tbody tr{border-bottom:0;border-bottom:1px solid #f1f1f1;background-color:#fefefe}@media screen and (max-width: 63.99875em){table.stack thead{display:none}table.stack tfoot{display:none}table.stack tr,table.stack th,table.stack td{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-x:auto}table.hover thead tr:hover{background-color:#f3f3f3}table.hover tfoot tr:hover{background-color:#ececec}table.hover tbody tr:hover{background-color:#f9f9f9}table.hover:not(.unstriped) tr:nth-of-type(even):hover{background-color:#ececec}.table-scroll{overflow-x:auto}[type='text'],[type='password'],[type='date'],[type='datetime'],[type='datetime-local'],[type='month'],[type='week'],[type='email'],[type='number'],[type='search'],[type='tel'],[type='time'],[type='url'],[type='color'],textarea{display:block;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:2.4375rem;margin:0 0 1rem;padding:.5rem;border:1px solid #cacaca;border-radius:0;background-color:#fefefe;-webkit-box-shadow:inset 0 1px 2px rgba(10,10,10,0.1);box-shadow:inset 0 1px 2px rgba(10,10,10,0.1);font-family:inherit;font-size:1rem;font-weight:normal;line-height:1.5;color:#0a0a0a;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;-o-transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;-webkit-appearance:none;-moz-appearance:none;appearance:none}[type='text']:focus,[type='password']:focus,[type='date']:focus,[type='datetime']:focus,[type='datetime-local']:focus,[type='month']:focus,[type='week']:focus,[type='email']:focus,[type='number']:focus,[type='search']:focus,[type='tel']:focus,[type='time']:focus,[type='url']:focus,[type='color']:focus,textarea:focus{outline:none;border:1px solid #8a8a8a;background-color:#fefefe;-webkit-box-shadow:0 0 5px #cacaca;box-shadow:0 0 5px #cacaca;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;-o-transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s}textarea{max-width:100%}textarea[rows]{height:auto}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:not-allowed}[type='submit'],[type='button']{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}input[type='search']{-webkit-box-sizing:border-box;box-sizing:border-box}::-webkit-input-placeholder{color:#cacaca}::-ms-input-placeholder{color:#cacaca}::placeholder{color:#cacaca}[type='file'],[type='checkbox'],[type='radio']{margin:0 0 1rem}[type='checkbox']+label,[type='radio']+label{display:inline-block;vertical-align:baseline;margin-left:.5rem;margin-right:1rem;margin-bottom:0}[type='checkbox']+label[for],[type='radio']+label[for]{cursor:pointer}label>[type='checkbox'],label>[type='radio']{margin-right:.5rem}[type='file']{width:100%}label{display:block;margin:0;font-size:.875rem;font-weight:normal;line-height:1.8;color:#0a0a0a}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#0a0a0a}.input-group{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;margin-bottom:1rem;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.input-group>:first-child,.input-group>:first-child.input-group-button>*{border-radius:0 0 0 0}.input-group>:last-child,.input-group>:last-child.input-group-button>*{border-radius:0 0 0 0}.input-group-label,.input-group-field,.input-group-button,.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{margin:0;white-space:nowrap}.input-group-label{padding:0 1rem;border:1px solid #cacaca;background:#e6e6e6;color:#0a0a0a;text-align:center;white-space:nowrap;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;min-width:0}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{-ms-flex-item-align:stretch;align-self:stretch;height:auto;padding-top:0;padding-bottom:0;font-size:1rem}fieldset{margin:0;padding:0;border:0}legend{max-width:100%;margin-bottom:.5rem}.fieldset{margin:1.125rem 0;padding:1.25rem;border:1px solid #cacaca}.fieldset legend{margin:0;margin-left:-.1875rem;padding:0 .1875rem}select{height:2.4375rem;margin:0 0 1rem;padding:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #cacaca;border-radius:0;background-color:#fefefe;font-family:inherit;font-size:1rem;font-weight:normal;line-height:1.5;color:#0a0a0a;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");background-origin:content-box;background-position:right -1rem center;background-repeat:no-repeat;background-size:9px 6px;padding-right:1.5rem;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;-o-transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s}@media screen and (min-width: 0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}select:focus{outline:none;border:1px solid #8a8a8a;background-color:#fefefe;-webkit-box-shadow:0 0 5px #cacaca;box-shadow:0 0 5px #cacaca;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;-o-transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s}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}.is-invalid-label{color:#cc4b37}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:bold;color:#cc4b37}.form-error.is-visible{display:block}.button,.mailchimp .mc4wp-form-fields input[type='submit']{display:inline-block;vertical-align:middle;margin:0;padding:0.6em 1.5em;border:1px solid transparent;border-radius:0;-webkit-transition:background-color 0.25s ease-out,color 0.25s ease-out;-o-transition:background-color 0.25s ease-out,color 0.25s ease-out;transition:background-color 0.25s ease-out,color 0.25s ease-out;font-family:inherit;font-size:0.9rem;-webkit-appearance:none;line-height:1;text-align:center;cursor:pointer;background-color:#0092AA;color:#fefefe}[data-whatinput='mouse'] .button,[data-whatinput='mouse'] .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields [data-whatinput='mouse'] input[type='submit']{outline:0}.button:hover,.mailchimp .mc4wp-form-fields input:hover[type='submit'],.button:focus,.mailchimp .mc4wp-form-fields input:focus[type='submit']{background-color:#007c91;color:#fefefe}.button.tiny,.mailchimp .mc4wp-form-fields input.tiny[type='submit']{font-size:.6rem}.button.small,.mailchimp .mc4wp-form-fields input.small[type='submit']{font-size:.75rem}.button.large,.mailchimp .mc4wp-form-fields input.large[type='submit']{font-size:1.25rem}.button.expanded,.mailchimp .mc4wp-form-fields input.expanded[type='submit']{display:block;width:100%;margin-right:0;margin-left:0}.button.primary,.mailchimp .mc4wp-form-fields input.primary[type='submit']{background-color:#0092AA;color:#0a0a0a}.button.primary:hover,.mailchimp .mc4wp-form-fields input.primary:hover[type='submit'],.button.primary:focus,.mailchimp .mc4wp-form-fields input.primary:focus[type='submit']{background-color:#007588;color:#0a0a0a}.button.secondary,.mailchimp .mc4wp-form-fields input.secondary[type='submit']{background-color:#767676;color:#fefefe}.button.secondary:hover,.mailchimp .mc4wp-form-fields input.secondary:hover[type='submit'],.button.secondary:focus,.mailchimp .mc4wp-form-fields input.secondary:focus[type='submit']{background-color:#5e5e5e;color:#fefefe}.button.success,.mailchimp .mc4wp-form-fields input.success[type='submit']{background-color:#3adb76;color:#0a0a0a}.button.success:hover,.mailchimp .mc4wp-form-fields input.success:hover[type='submit'],.button.success:focus,.mailchimp .mc4wp-form-fields input.success:focus[type='submit']{background-color:#22bb5b;color:#0a0a0a}.button.warning,.mailchimp .mc4wp-form-fields input.warning[type='submit']{background-color:#ffae00;color:#0a0a0a}.button.warning:hover,.mailchimp .mc4wp-form-fields input.warning:hover[type='submit'],.button.warning:focus,.mailchimp .mc4wp-form-fields input.warning:focus[type='submit']{background-color:#cc8b00;color:#0a0a0a}.button.alert,.mailchimp .mc4wp-form-fields input.alert[type='submit']{background-color:#cc4b37;color:#fefefe}.button.alert:hover,.mailchimp .mc4wp-form-fields input.alert:hover[type='submit'],.button.alert:focus,.mailchimp .mc4wp-form-fields input.alert:focus[type='submit']{background-color:#a53b2a;color:#fefefe}.button.disabled,.mailchimp .mc4wp-form-fields input.disabled[type='submit'],.button[disabled],.mailchimp .mc4wp-form-fields input[disabled][type='submit']{opacity:.25;cursor:not-allowed}.button.disabled,.mailchimp .mc4wp-form-fields input.disabled[type='submit'],.button.disabled:hover,.mailchimp .mc4wp-form-fields input.disabled:hover[type='submit'],.button.disabled:focus,.mailchimp .mc4wp-form-fields input.disabled:focus[type='submit'],.button[disabled],.mailchimp .mc4wp-form-fields input[disabled][type='submit'],.button[disabled]:hover,.mailchimp .mc4wp-form-fields input[disabled]:hover[type='submit'],.button[disabled]:focus,.mailchimp .mc4wp-form-fields input[disabled]:focus[type='submit']{background-color:#0092AA;color:#fefefe}.button.disabled.primary,.mailchimp .mc4wp-form-fields input.disabled.primary[type='submit'],.button[disabled].primary,.mailchimp .mc4wp-form-fields input[disabled].primary[type='submit']{opacity:.25;cursor:not-allowed}.button.disabled.primary,.mailchimp .mc4wp-form-fields input.disabled.primary[type='submit'],.button.disabled.primary:hover,.mailchimp .mc4wp-form-fields input.disabled.primary:hover[type='submit'],.button.disabled.primary:focus,.mailchimp .mc4wp-form-fields input.disabled.primary:focus[type='submit'],.button[disabled].primary,.mailchimp .mc4wp-form-fields input[disabled].primary[type='submit'],.button[disabled].primary:hover,.mailchimp .mc4wp-form-fields input[disabled].primary:hover[type='submit'],.button[disabled].primary:focus,.mailchimp .mc4wp-form-fields input[disabled].primary:focus[type='submit']{background-color:#0092AA;color:#0a0a0a}.button.disabled.secondary,.mailchimp .mc4wp-form-fields input.disabled.secondary[type='submit'],.button[disabled].secondary,.mailchimp .mc4wp-form-fields input[disabled].secondary[type='submit']{opacity:.25;cursor:not-allowed}.button.disabled.secondary,.mailchimp .mc4wp-form-fields input.disabled.secondary[type='submit'],.button.disabled.secondary:hover,.mailchimp .mc4wp-form-fields input.disabled.secondary:hover[type='submit'],.button.disabled.secondary:focus,.mailchimp .mc4wp-form-fields input.disabled.secondary:focus[type='submit'],.button[disabled].secondary,.mailchimp .mc4wp-form-fields input[disabled].secondary[type='submit'],.button[disabled].secondary:hover,.mailchimp .mc4wp-form-fields input[disabled].secondary:hover[type='submit'],.button[disabled].secondary:focus,.mailchimp .mc4wp-form-fields input[disabled].secondary:focus[type='submit']{background-color:#767676;color:#fefefe}.button.disabled.success,.mailchimp .mc4wp-form-fields input.disabled.success[type='submit'],.button[disabled].success,.mailchimp .mc4wp-form-fields input[disabled].success[type='submit']{opacity:.25;cursor:not-allowed}.button.disabled.success,.mailchimp .mc4wp-form-fields input.disabled.success[type='submit'],.button.disabled.success:hover,.mailchimp .mc4wp-form-fields input.disabled.success:hover[type='submit'],.button.disabled.success:focus,.mailchimp .mc4wp-form-fields input.disabled.success:focus[type='submit'],.button[disabled].success,.mailchimp .mc4wp-form-fields input[disabled].success[type='submit'],.button[disabled].success:hover,.mailchimp .mc4wp-form-fields input[disabled].success:hover[type='submit'],.button[disabled].success:focus,.mailchimp .mc4wp-form-fields input[disabled].success:focus[type='submit']{background-color:#3adb76;color:#0a0a0a}.button.disabled.warning,.mailchimp .mc4wp-form-fields input.disabled.warning[type='submit'],.button[disabled].warning,.mailchimp .mc4wp-form-fields input[disabled].warning[type='submit']{opacity:.25;cursor:not-allowed}.button.disabled.warning,.mailchimp .mc4wp-form-fields input.disabled.warning[type='submit'],.button.disabled.warning:hover,.mailchimp .mc4wp-form-fields input.disabled.warning:hover[type='submit'],.button.disabled.warning:focus,.mailchimp .mc4wp-form-fields input.disabled.warning:focus[type='submit'],.button[disabled].warning,.mailchimp .mc4wp-form-fields input[disabled].warning[type='submit'],.button[disabled].warning:hover,.mailchimp .mc4wp-form-fields input[disabled].warning:hover[type='submit'],.button[disabled].warning:focus,.mailchimp .mc4wp-form-fields input[disabled].warning:focus[type='submit']{background-color:#ffae00;color:#0a0a0a}.button.disabled.alert,.mailchimp .mc4wp-form-fields input.disabled.alert[type='submit'],.button[disabled].alert,.mailchimp .mc4wp-form-fields input[disabled].alert[type='submit']{opacity:.25;cursor:not-allowed}.button.disabled.alert,.mailchimp .mc4wp-form-fields input.disabled.alert[type='submit'],.button.disabled.alert:hover,.mailchimp .mc4wp-form-fields input.disabled.alert:hover[type='submit'],.button.disabled.alert:focus,.mailchimp .mc4wp-form-fields input.disabled.alert:focus[type='submit'],.button[disabled].alert,.mailchimp .mc4wp-form-fields input[disabled].alert[type='submit'],.button[disabled].alert:hover,.mailchimp .mc4wp-form-fields input[disabled].alert:hover[type='submit'],.button[disabled].alert:focus,.mailchimp .mc4wp-form-fields input[disabled].alert:focus[type='submit']{background-color:#cc4b37;color:#fefefe}.button.hollow,.mailchimp .mc4wp-form-fields input.hollow[type='submit']{border:1px solid #0092AA;color:#0092AA}.button.hollow,.mailchimp .mc4wp-form-fields input.hollow[type='submit'],.button.hollow:hover,.mailchimp .mc4wp-form-fields input.hollow:hover[type='submit'],.button.hollow:focus,.mailchimp .mc4wp-form-fields input.hollow:focus[type='submit']{background-color:transparent}.button.hollow.disabled,.mailchimp .mc4wp-form-fields input.hollow.disabled[type='submit'],.button.hollow.disabled:hover,.mailchimp .mc4wp-form-fields input.hollow.disabled:hover[type='submit'],.button.hollow.disabled:focus,.mailchimp .mc4wp-form-fields input.hollow.disabled:focus[type='submit'],.button.hollow[disabled],.mailchimp .mc4wp-form-fields input.hollow[disabled][type='submit'],.button.hollow[disabled]:hover,.mailchimp .mc4wp-form-fields input.hollow[disabled]:hover[type='submit'],.button.hollow[disabled]:focus,.mailchimp .mc4wp-form-fields input.hollow[disabled]:focus[type='submit']{background-color:transparent}.button.hollow:hover,.mailchimp .mc4wp-form-fields input.hollow:hover[type='submit'],.button.hollow:focus,.mailchimp .mc4wp-form-fields input.hollow:focus[type='submit']{border-color:#004955;color:#004955}.button.hollow:hover.disabled,.mailchimp .mc4wp-form-fields input.hollow:hover.disabled[type='submit'],.button.hollow:hover[disabled],.mailchimp .mc4wp-form-fields input.hollow:hover[disabled][type='submit'],.button.hollow:focus.disabled,.mailchimp .mc4wp-form-fields input.hollow:focus.disabled[type='submit'],.button.hollow:focus[disabled],.mailchimp .mc4wp-form-fields input.hollow:focus[disabled][type='submit']{border:1px solid #0092AA;color:#0092AA}.button.hollow.primary,.mailchimp .mc4wp-form-fields input.hollow.primary[type='submit']{border:1px solid #0092AA;color:#0092AA}.button.hollow.primary:hover,.mailchimp .mc4wp-form-fields input.hollow.primary:hover[type='submit'],.button.hollow.primary:focus,.mailchimp .mc4wp-form-fields input.hollow.primary:focus[type='submit']{border-color:#004955;color:#004955}.button.hollow.primary:hover.disabled,.mailchimp .mc4wp-form-fields input.hollow.primary:hover.disabled[type='submit'],.button.hollow.primary:hover[disabled],.mailchimp .mc4wp-form-fields input.hollow.primary:hover[disabled][type='submit'],.button.hollow.primary:focus.disabled,.mailchimp .mc4wp-form-fields input.hollow.primary:focus.disabled[type='submit'],.button.hollow.primary:focus[disabled],.mailchimp .mc4wp-form-fields input.hollow.primary:focus[disabled][type='submit']{border:1px solid #0092AA;color:#0092AA}.button.hollow.secondary,.mailchimp .mc4wp-form-fields input.hollow.secondary[type='submit']{border:1px solid #767676;color:#767676}.button.hollow.secondary:hover,.mailchimp .mc4wp-form-fields input.hollow.secondary:hover[type='submit'],.button.hollow.secondary:focus,.mailchimp .mc4wp-form-fields input.hollow.secondary:focus[type='submit']{border-color:#3b3b3b;color:#3b3b3b}.button.hollow.secondary:hover.disabled,.mailchimp .mc4wp-form-fields input.hollow.secondary:hover.disabled[type='submit'],.button.hollow.secondary:hover[disabled],.mailchimp .mc4wp-form-fields input.hollow.secondary:hover[disabled][type='submit'],.button.hollow.secondary:focus.disabled,.mailchimp .mc4wp-form-fields input.hollow.secondary:focus.disabled[type='submit'],.button.hollow.secondary:focus[disabled],.mailchimp .mc4wp-form-fields input.hollow.secondary:focus[disabled][type='submit']{border:1px solid #767676;color:#767676}.button.hollow.success,.mailchimp .mc4wp-form-fields input.hollow.success[type='submit']{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:hover,.mailchimp .mc4wp-form-fields input.hollow.success:hover[type='submit'],.button.hollow.success:focus,.mailchimp .mc4wp-form-fields input.hollow.success:focus[type='submit']{border-color:#157539;color:#157539}.button.hollow.success:hover.disabled,.mailchimp .mc4wp-form-fields input.hollow.success:hover.disabled[type='submit'],.button.hollow.success:hover[disabled],.mailchimp .mc4wp-form-fields input.hollow.success:hover[disabled][type='submit'],.button.hollow.success:focus.disabled,.mailchimp .mc4wp-form-fields input.hollow.success:focus.disabled[type='submit'],.button.hollow.success:focus[disabled],.mailchimp .mc4wp-form-fields input.hollow.success:focus[disabled][type='submit']{border:1px solid #3adb76;color:#3adb76}.button.hollow.warning,.mailchimp .mc4wp-form-fields input.hollow.warning[type='submit']{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:hover,.mailchimp .mc4wp-form-fields input.hollow.warning:hover[type='submit'],.button.hollow.warning:focus,.mailchimp .mc4wp-form-fields input.hollow.warning:focus[type='submit']{border-color:#805700;color:#805700}.button.hollow.warning:hover.disabled,.mailchimp .mc4wp-form-fields input.hollow.warning:hover.disabled[type='submit'],.button.hollow.warning:hover[disabled],.mailchimp .mc4wp-form-fields input.hollow.warning:hover[disabled][type='submit'],.button.hollow.warning:focus.disabled,.mailchimp .mc4wp-form-fields input.hollow.warning:focus.disabled[type='submit'],.button.hollow.warning:focus[disabled],.mailchimp .mc4wp-form-fields input.hollow.warning:focus[disabled][type='submit']{border:1px solid #ffae00;color:#ffae00}.button.hollow.alert,.mailchimp .mc4wp-form-fields input.hollow.alert[type='submit']{border:1px solid #cc4b37;color:#cc4b37}.button.hollow.alert:hover,.mailchimp .mc4wp-form-fields input.hollow.alert:hover[type='submit'],.button.hollow.alert:focus,.mailchimp .mc4wp-form-fields input.hollow.alert:focus[type='submit']{border-color:#67251a;color:#67251a}.button.hollow.alert:hover.disabled,.mailchimp .mc4wp-form-fields input.hollow.alert:hover.disabled[type='submit'],.button.hollow.alert:hover[disabled],.mailchimp .mc4wp-form-fields input.hollow.alert:hover[disabled][type='submit'],.button.hollow.alert:focus.disabled,.mailchimp .mc4wp-form-fields input.hollow.alert:focus.disabled[type='submit'],.button.hollow.alert:focus[disabled],.mailchimp .mc4wp-form-fields input.hollow.alert:focus[disabled][type='submit']{border:1px solid #cc4b37;color:#cc4b37}.button.clear,.mailchimp .mc4wp-form-fields input.clear[type='submit']{border:1px solid #0092AA;color:#0092AA}.button.clear,.mailchimp .mc4wp-form-fields input.clear[type='submit'],.button.clear:hover,.mailchimp .mc4wp-form-fields input.clear:hover[type='submit'],.button.clear:focus,.mailchimp .mc4wp-form-fields input.clear:focus[type='submit']{background-color:transparent}.button.clear.disabled,.mailchimp .mc4wp-form-fields input.clear.disabled[type='submit'],.button.clear.disabled:hover,.mailchimp .mc4wp-form-fields input.clear.disabled:hover[type='submit'],.button.clear.disabled:focus,.mailchimp .mc4wp-form-fields input.clear.disabled:focus[type='submit'],.button.clear[disabled],.mailchimp .mc4wp-form-fields input.clear[disabled][type='submit'],.button.clear[disabled]:hover,.mailchimp .mc4wp-form-fields input.clear[disabled]:hover[type='submit'],.button.clear[disabled]:focus,.mailchimp .mc4wp-form-fields input.clear[disabled]:focus[type='submit']{background-color:transparent}.button.clear:hover,.mailchimp .mc4wp-form-fields input.clear:hover[type='submit'],.button.clear:focus,.mailchimp .mc4wp-form-fields input.clear:focus[type='submit']{border-color:#004955;color:#004955}.button.clear:hover.disabled,.mailchimp .mc4wp-form-fields input.clear:hover.disabled[type='submit'],.button.clear:hover[disabled],.mailchimp .mc4wp-form-fields input.clear:hover[disabled][type='submit'],.button.clear:focus.disabled,.mailchimp .mc4wp-form-fields input.clear:focus.disabled[type='submit'],.button.clear:focus[disabled],.mailchimp .mc4wp-form-fields input.clear:focus[disabled][type='submit']{border:1px solid #0092AA;color:#0092AA}.button.clear,.mailchimp .mc4wp-form-fields input.clear[type='submit'],.button.clear.disabled,.mailchimp .mc4wp-form-fields input.clear.disabled[type='submit'],.button.clear[disabled],.mailchimp .mc4wp-form-fields input.clear[disabled][type='submit'],.button.clear:hover,.mailchimp .mc4wp-form-fields input.clear:hover[type='submit'],.button.clear:hover.disabled,.mailchimp .mc4wp-form-fields input.clear:hover.disabled[type='submit'],.button.clear:hover[disabled],.mailchimp .mc4wp-form-fields input.clear:hover[disabled][type='submit'],.button.clear:focus,.mailchimp .mc4wp-form-fields input.clear:focus[type='submit'],.button.clear:focus.disabled,.mailchimp .mc4wp-form-fields input.clear:focus.disabled[type='submit'],.button.clear:focus[disabled],.mailchimp .mc4wp-form-fields input.clear:focus[disabled][type='submit']{border-color:transparent}.button.clear.primary,.mailchimp .mc4wp-form-fields input.clear.primary[type='submit']{border:1px solid #0092AA;color:#0092AA}.button.clear.primary:hover,.mailchimp .mc4wp-form-fields input.clear.primary:hover[type='submit'],.button.clear.primary:focus,.mailchimp .mc4wp-form-fields input.clear.primary:focus[type='submit']{border-color:#004955;color:#004955}.button.clear.primary:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.primary:hover.disabled[type='submit'],.button.clear.primary:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.primary:hover[disabled][type='submit'],.button.clear.primary:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.primary:focus.disabled[type='submit'],.button.clear.primary:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.primary:focus[disabled][type='submit']{border:1px solid #0092AA;color:#0092AA}.button.clear.primary,.mailchimp .mc4wp-form-fields input.clear.primary[type='submit'],.button.clear.primary.disabled,.mailchimp .mc4wp-form-fields input.clear.primary.disabled[type='submit'],.button.clear.primary[disabled],.mailchimp .mc4wp-form-fields input.clear.primary[disabled][type='submit'],.button.clear.primary:hover,.mailchimp .mc4wp-form-fields input.clear.primary:hover[type='submit'],.button.clear.primary:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.primary:hover.disabled[type='submit'],.button.clear.primary:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.primary:hover[disabled][type='submit'],.button.clear.primary:focus,.mailchimp .mc4wp-form-fields input.clear.primary:focus[type='submit'],.button.clear.primary:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.primary:focus.disabled[type='submit'],.button.clear.primary:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.primary:focus[disabled][type='submit']{border-color:transparent}.button.clear.secondary,.mailchimp .mc4wp-form-fields input.clear.secondary[type='submit']{border:1px solid #767676;color:#767676}.button.clear.secondary:hover,.mailchimp .mc4wp-form-fields input.clear.secondary:hover[type='submit'],.button.clear.secondary:focus,.mailchimp .mc4wp-form-fields input.clear.secondary:focus[type='submit']{border-color:#3b3b3b;color:#3b3b3b}.button.clear.secondary:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.secondary:hover.disabled[type='submit'],.button.clear.secondary:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.secondary:hover[disabled][type='submit'],.button.clear.secondary:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.secondary:focus.disabled[type='submit'],.button.clear.secondary:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.secondary:focus[disabled][type='submit']{border:1px solid #767676;color:#767676}.button.clear.secondary,.mailchimp .mc4wp-form-fields input.clear.secondary[type='submit'],.button.clear.secondary.disabled,.mailchimp .mc4wp-form-fields input.clear.secondary.disabled[type='submit'],.button.clear.secondary[disabled],.mailchimp .mc4wp-form-fields input.clear.secondary[disabled][type='submit'],.button.clear.secondary:hover,.mailchimp .mc4wp-form-fields input.clear.secondary:hover[type='submit'],.button.clear.secondary:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.secondary:hover.disabled[type='submit'],.button.clear.secondary:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.secondary:hover[disabled][type='submit'],.button.clear.secondary:focus,.mailchimp .mc4wp-form-fields input.clear.secondary:focus[type='submit'],.button.clear.secondary:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.secondary:focus.disabled[type='submit'],.button.clear.secondary:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.secondary:focus[disabled][type='submit']{border-color:transparent}.button.clear.success,.mailchimp .mc4wp-form-fields input.clear.success[type='submit']{border:1px solid #3adb76;color:#3adb76}.button.clear.success:hover,.mailchimp .mc4wp-form-fields input.clear.success:hover[type='submit'],.button.clear.success:focus,.mailchimp .mc4wp-form-fields input.clear.success:focus[type='submit']{border-color:#157539;color:#157539}.button.clear.success:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.success:hover.disabled[type='submit'],.button.clear.success:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.success:hover[disabled][type='submit'],.button.clear.success:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.success:focus.disabled[type='submit'],.button.clear.success:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.success:focus[disabled][type='submit']{border:1px solid #3adb76;color:#3adb76}.button.clear.success,.mailchimp .mc4wp-form-fields input.clear.success[type='submit'],.button.clear.success.disabled,.mailchimp .mc4wp-form-fields input.clear.success.disabled[type='submit'],.button.clear.success[disabled],.mailchimp .mc4wp-form-fields input.clear.success[disabled][type='submit'],.button.clear.success:hover,.mailchimp .mc4wp-form-fields input.clear.success:hover[type='submit'],.button.clear.success:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.success:hover.disabled[type='submit'],.button.clear.success:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.success:hover[disabled][type='submit'],.button.clear.success:focus,.mailchimp .mc4wp-form-fields input.clear.success:focus[type='submit'],.button.clear.success:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.success:focus.disabled[type='submit'],.button.clear.success:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.success:focus[disabled][type='submit']{border-color:transparent}.button.clear.warning,.mailchimp .mc4wp-form-fields input.clear.warning[type='submit']{border:1px solid #ffae00;color:#ffae00}.button.clear.warning:hover,.mailchimp .mc4wp-form-fields input.clear.warning:hover[type='submit'],.button.clear.warning:focus,.mailchimp .mc4wp-form-fields input.clear.warning:focus[type='submit']{border-color:#805700;color:#805700}.button.clear.warning:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.warning:hover.disabled[type='submit'],.button.clear.warning:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.warning:hover[disabled][type='submit'],.button.clear.warning:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.warning:focus.disabled[type='submit'],.button.clear.warning:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.warning:focus[disabled][type='submit']{border:1px solid #ffae00;color:#ffae00}.button.clear.warning,.mailchimp .mc4wp-form-fields input.clear.warning[type='submit'],.button.clear.warning.disabled,.mailchimp .mc4wp-form-fields input.clear.warning.disabled[type='submit'],.button.clear.warning[disabled],.mailchimp .mc4wp-form-fields input.clear.warning[disabled][type='submit'],.button.clear.warning:hover,.mailchimp .mc4wp-form-fields input.clear.warning:hover[type='submit'],.button.clear.warning:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.warning:hover.disabled[type='submit'],.button.clear.warning:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.warning:hover[disabled][type='submit'],.button.clear.warning:focus,.mailchimp .mc4wp-form-fields input.clear.warning:focus[type='submit'],.button.clear.warning:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.warning:focus.disabled[type='submit'],.button.clear.warning:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.warning:focus[disabled][type='submit']{border-color:transparent}.button.clear.alert,.mailchimp .mc4wp-form-fields input.clear.alert[type='submit']{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert:hover,.mailchimp .mc4wp-form-fields input.clear.alert:hover[type='submit'],.button.clear.alert:focus,.mailchimp .mc4wp-form-fields input.clear.alert:focus[type='submit']{border-color:#67251a;color:#67251a}.button.clear.alert:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.alert:hover.disabled[type='submit'],.button.clear.alert:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.alert:hover[disabled][type='submit'],.button.clear.alert:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.alert:focus.disabled[type='submit'],.button.clear.alert:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.alert:focus[disabled][type='submit']{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert,.mailchimp .mc4wp-form-fields input.clear.alert[type='submit'],.button.clear.alert.disabled,.mailchimp .mc4wp-form-fields input.clear.alert.disabled[type='submit'],.button.clear.alert[disabled],.mailchimp .mc4wp-form-fields input.clear.alert[disabled][type='submit'],.button.clear.alert:hover,.mailchimp .mc4wp-form-fields input.clear.alert:hover[type='submit'],.button.clear.alert:hover.disabled,.mailchimp .mc4wp-form-fields input.clear.alert:hover.disabled[type='submit'],.button.clear.alert:hover[disabled],.mailchimp .mc4wp-form-fields input.clear.alert:hover[disabled][type='submit'],.button.clear.alert:focus,.mailchimp .mc4wp-form-fields input.clear.alert:focus[type='submit'],.button.clear.alert:focus.disabled,.mailchimp .mc4wp-form-fields input.clear.alert:focus.disabled[type='submit'],.button.clear.alert:focus[disabled],.mailchimp .mc4wp-form-fields input.clear.alert:focus[disabled][type='submit']{border-color:transparent}.button.dropdown::after,.mailchimp .mc4wp-form-fields input.dropdown[type='submit']::after{display:block;width:0;height:0;border:inset .4em;content:'';border-bottom-width:0;border-top-style:solid;border-color:#fefefe transparent transparent;position:relative;top:0.4em;display:inline-block;float:right;margin-left:1.5em}.button.dropdown.hollow::after,.mailchimp .mc4wp-form-fields input.dropdown.hollow[type='submit']::after,.button.dropdown.clear::after,.mailchimp .mc4wp-form-fields input.dropdown.clear[type='submit']::after{border-top-color:#0092AA}.button.dropdown.hollow.primary::after,.mailchimp .mc4wp-form-fields input.dropdown.hollow.primary[type='submit']::after,.button.dropdown.clear.primary::after,.mailchimp .mc4wp-form-fields input.dropdown.clear.primary[type='submit']::after{border-top-color:#0092AA}.button.dropdown.hollow.secondary::after,.mailchimp .mc4wp-form-fields input.dropdown.hollow.secondary[type='submit']::after,.button.dropdown.clear.secondary::after,.mailchimp .mc4wp-form-fields input.dropdown.clear.secondary[type='submit']::after{border-top-color:#767676}.button.dropdown.hollow.success::after,.mailchimp .mc4wp-form-fields input.dropdown.hollow.success[type='submit']::after,.button.dropdown.clear.success::after,.mailchimp .mc4wp-form-fields input.dropdown.clear.success[type='submit']::after{border-top-color:#3adb76}.button.dropdown.hollow.warning::after,.mailchimp .mc4wp-form-fields input.dropdown.hollow.warning[type='submit']::after,.button.dropdown.clear.warning::after,.mailchimp .mc4wp-form-fields input.dropdown.clear.warning[type='submit']::after{border-top-color:#ffae00}.button.dropdown.hollow.alert::after,.mailchimp .mc4wp-form-fields input.dropdown.hollow.alert[type='submit']::after,.button.dropdown.clear.alert::after,.mailchimp .mc4wp-form-fields input.dropdown.clear.alert[type='submit']::after{border-top-color:#cc4b37}.button.arrow-only::after,.mailchimp .mc4wp-form-fields input.arrow-only[type='submit']::after{top:-0.1em;float:none;margin-left:0}a.button:hover,a.button:focus{text-decoration:none}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:normal;line-height:1.4;color:#8a8a8a}.lead{font-size:110%;line-height:1.4}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}ul.no-bullet,ol.no-bullet{margin-left:0;list-style:none}div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}p{margin-bottom:1.5rem;font-size:inherit;line-height:1.6;text-rendering:optimizeLegibility}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:80%;line-height:inherit}h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{font-family:"Rubik",sans-serif;font-style:normal;font-weight:normal;color:inherit;text-rendering:optimizeLegibility}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small{line-height:0;color:#cacaca}h1,.h1{font-size:1.5rem;line-height:1.4;margin-top:0;margin-bottom:1rem}h2,.h2{font-size:1.25rem;line-height:1.4;margin-top:0;margin-bottom:1rem}h3,.h3{font-size:1.1875rem;line-height:1.4;margin-top:0;margin-bottom:1rem}h4,.h4{font-size:1.125rem;line-height:1.4;margin-top:0;margin-bottom:1rem}h5,.h5{font-size:1.0625rem;line-height:1.4;margin-top:0;margin-bottom:1rem}h6,.h6{font-size:1rem;line-height:1.4;margin-top:0;margin-bottom:1rem}@media print, screen and (min-width: 48em){h1,.h1{font-size:3rem}h2,.h2{font-size:2.5rem}h3,.h3{font-size:1.9375rem}h4,.h4{font-size:1.5625rem}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}}a{line-height:inherit;color:#0092AA;text-decoration:none;cursor:pointer}a:hover,a:focus{color:#007e92}a img{border:0}hr{clear:both;max-width:90rem;height:0;margin:1.25rem auto;border-top:0;border-right:0;border-bottom:1px solid #cacaca;border-left:0}ul,ol,dl{margin-bottom:1.5rem;list-style-position:outside;line-height:1.6}li{font-size:inherit}ul{margin-left:1.25rem;list-style-type:disc}ol{margin-left:1.25rem}ul ul,ol ul,ul ol,ol ol{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:bold}blockquote{margin:0 0 1.5rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #cacaca}blockquote,blockquote p{line-height:1.6;color:#0a0a0a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:"— "}abbr,abbr[title]{border-bottom:1px dotted #0a0a0a;cursor:help;text-decoration:none}figure{margin:0}code{padding:.125rem .3125rem .0625rem;border:1px solid #cacaca;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:normal;color:#0a0a0a}kbd{margin:0;padding:.125rem .25rem 0;background-color:#e6e6e6;font-family:Consolas,"Liberation Mono",Courier,monospace;color:#0a0a0a}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:normal;line-height:1.4;color:#8a8a8a}.lead{font-size:110%;line-height:1.4}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}ul.no-bullet,ol.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media print, screen and (min-width: 30em){.smallish-text-left{text-align:left}.smallish-text-right{text-align:right}.smallish-text-center{text-align:center}.smallish-text-justify{text-align:justify}}@media print, screen and (min-width: 48em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media print, screen and (min-width: 64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}@media screen and (min-width: 75em){.xlarge-text-left{text-align:left}.xlarge-text-right{text-align:right}.xlarge-text-center{text-align:center}.xlarge-text-justify{text-align:justify}}@media screen and (min-width: 90em){.xxlarge-text-left{text-align:left}.xxlarge-text-right{text-align:right}.xxlarge-text-center{text-align:center}.xxlarge-text-justify{text-align:justify}}.show-for-print{display:none !important}@media print{*{background:transparent !important;-webkit-box-shadow:none !important;box-shadow:none !important;color:black !important;text-shadow:none !important}.show-for-print{display:block !important}.hide-for-print{display:none !important}table.show-for-print{display:table !important}thead.show-for-print{display:table-header-group !important}tbody.show-for-print{display:table-row-group !important}tr.show-for-print{display:table-row !important}td.show-for-print{display:table-cell !important}th.show-for-print{display:table-cell !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^='javascript:']:after,a[href^='#']:after{content:''}abbr[title]:after{content:" (" attr(title) ")"}pre,blockquote{border:1px solid #8a8a8a;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.print-break-inside{page-break-inside:auto}}.slick-slider{position:relative;display:block;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;overflow:hidden;display:block;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.slick-track{position:relative;left:0;top:0;display:block;margin-left:auto;margin-right:auto}.slick-track:before,.slick-track:after{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}[dir="rtl"] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.slick-loading .slick-list{background:#fff url("../img/ajax-loader.gif") center center no-repeat}@font-face{font-family:"slick";src:url("../fonts/slick.eot");src:url("../fonts/slick.eot?#iefix") format("embedded-opentype"),url("../fonts/slick.woff") format("woff"),url("../fonts/slick.ttf") format("truetype"),url("../fonts/slick.svg#slick") format("svg");font-weight:normal;font-style:normal}.slick-prev,.slick-next{position:absolute;display:block;height:20px;width:20px;line-height:0px;font-size:0px;cursor:pointer;background:transparent;color:transparent;top:50%;-webkit-transform:translate(0, -50%);-ms-transform:translate(0, -50%);transform:translate(0, -50%);padding:0;border:none;outline:none}.slick-prev:hover,.slick-prev:focus,.slick-next:hover,.slick-next:focus{outline:none;background:transparent;color:transparent}.slick-prev:hover:before,.slick-prev:focus:before,.slick-next:hover:before,.slick-next:focus:before{opacity:1}.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before{opacity:.25}.slick-prev:before,.slick-next:before{font-family:"slick";font-size:20px;line-height:1;color:#fff;opacity:.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-prev{left:-25px}[dir="rtl"] .slick-prev{left:auto;right:-25px}.slick-prev:before{content:"←"}[dir="rtl"] .slick-prev:before{content:"→"}.slick-next{right:-25px}[dir="rtl"] .slick-next{left:-25px;right:auto}.slick-next:before{content:"→"}[dir="rtl"] .slick-next:before{content:"←"}.slick-dotted.slick-slider{margin-bottom:30px}.slick-dots{position:absolute;bottom:-25px;list-style:none;display:block;text-align:center;padding:0;margin:0;width:100%}.slick-dots li{position:relative;display:inline-block;height:20px;width:20px;margin:0 5px;padding:0;cursor:pointer}.slick-dots li button{border:0;background:transparent;display:block;height:20px;width:20px;outline:none;line-height:0px;font-size:0px;color:transparent;padding:5px;cursor:pointer}.slick-dots li button:hover,.slick-dots li button:focus{outline:none}.slick-dots li button:hover:before,.slick-dots li button:focus:before{opacity:1}.slick-dots li button:before{position:absolute;top:0;left:0;content:"•";width:20px;height:20px;font-family:"slick";font-size:16px;line-height:20px;text-align:center;color:#444;opacity:.25;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-dots li.slick-active button:before{color:#0092AA;opacity:.75}@media screen and (min-width: 90em){.row{max-width:87.5rem}}.screen-reader-text{position:absolute !important;-webkit-transition:all .55s;-o-transition:all .55s;transition:all .55s;clip:rect(1px 1px 1px 1px);word-wrap:normal !important}.screen-reader-text.skip-link{margin:5px}.screen-reader-text:hover,.screen-reader-text:active,.screen-reader-text:focus{display:block;top:0;left:0;width:auto;height:auto;padding:1rem .9375rem;outline:none;background-color:#222;color:#FFF;font-weight:bold;line-height:normal;text-decoration:none;-webkit-box-shadow:none;box-shadow:none;z-index:100000;clip:auto !important}figure{margin:0}.button,.mailchimp .mc4wp-form-fields input[type='submit']{border-radius:25px;font-size:0.9em;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.actions .button,.actions .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields .actions input[type='submit']{padding:.6em 3em}.button-read-more{text-transform:uppercase}@media print, screen and (min-width: 64em){.button-read-more{font-size:.8em}}.iframe-responsive-container{position:relative;height:0;padding-top:30px;padding-bottom:56.25%}.iframe-responsive-container iframe{position:absolute;top:0;left:0;width:100% !important;height:100%}.page-header{padding:2em 0;text-align:center}@media print, screen and (min-width: 48em){.page-header{padding:2.5em 0}}@media print, screen and (min-width: 64em){.page-header{padding:3.3333em 0}}.page-header .page-title{margin-bottom:0;font-weight:300}@media print, screen and (min-width: 64em){.page-header .page-title{font-size:2.8em}}@media screen and (min-width: 75em){.page-header .page-title{font-size:3.2em}}.page-header .page-subtitle{margin-bottom:0;color:#888;font-weight:400}@media print, screen and (min-width: 64em){.page-header .page-subtitle{font-size:1.6em}}@media screen and (min-width: 75em){.page-header .page-subtitle{font-size:2.2em}}@media print, screen and (min-width: 64em){.card-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}}.card{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:distribute;justify-content:space-around;width:100%;margin-bottom:2em;border-radius:6px;background-color:#fff;overflow:hidden}@media print, screen and (min-width: 64em){.card>*{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}}.card .card-inner{padding:2em;border-radius:0 0 6px 6px;text-align:center}.card .entry-figure-link{-webkit-box-flex:0;-ms-flex:none;flex:none;height:120px}.card .entry-figure{height:100%;background-position:center center;background-size:cover}.card .entry-title>a{color:#222}.card .entry-subtitle{font-size:1em}.card .entry-subtitle>a{color:#888}.card .entry-summary{color:#444;font-size:.9em;line-height:1.4}.card .event-details ul{margin:0;padding:0;list-style:none;text-align:left}.card .event-details ul li{position:relative;margin-bottom:1.2em}.card .event-details ul li::after{content:'';display:table;clear:both}.card .event-details ul li span:last-child{margin-left:2em;float:left}.card .event-details ul li .fa{position:absolute;top:0.2em;left:0;color:#444}.card .event-details ul li.event-start-date{color:#444}.card .event-details ul li.event-start-date time{display:block;color:#222;font-weight:500}.entry-meta-badge{text-transform:uppercase}.entry-meta-badge .entry-meta-date{display:-webkit-box;display:-ms-flexbox;display:flex}.entry-meta-badge .entry-meta-date>div{margin-right:0.5em}.has-post-thumbnail .entry-meta-badge{position:absolute;top:0;left:0;padding:1em;border-bottom-right-radius:6px;background-color:#A6CE39;text-align:center}.has-post-thumbnail .entry-meta-badge .entry-meta-date{display:block;color:#222}.has-post-thumbnail .entry-meta-badge .entry-meta-date>div{margin:0}.has-post-thumbnail .entry-meta-badge .day-number{font-size:1.53333em;font-weight:700;line-height:1}.has-post-thumbnail .entry-meta-badge .month-name{color:#fff;font-size:.9em;font-weight:700}.pagination{margin:2em 0}@media print, screen and (min-width: 64em){.pagination{margin-bottom:4em}}.pagination a,.pagination span{display:inline-block;padding:0.5em}.pagination .current{color:#b3b3b3;font-weight:600}.site-header-search{display:none;padding:1em 1.5em;background-color:#fff}.site-header-search .search-form{position:relative}.site-header-search .search-field{margin:0;-webkit-transition:border-color 0.8s ease;-o-transition:border-color 0.8s ease;transition:border-color 0.8s ease;border:0;border-bottom:1px solid #f5f5f5;-webkit-box-shadow:none;box-shadow:none}.site-header-search .search-field:focus{border-color:#0092AA}.site-header-search .search-submit{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;vertical-align:middle;margin:0;padding:0.6em 1.5em;border:1px solid transparent;border-radius:0;-webkit-transition:background-color 0.25s ease-out,color 0.25s ease-out;-o-transition:background-color 0.25s ease-out,color 0.25s ease-out;transition:background-color 0.25s ease-out,color 0.25s ease-out;font-family:inherit;font-size:0.9rem;-webkit-appearance:none;line-height:1;text-align:center;cursor:pointer;background-color:#0092AA;color:#fefefe;position:absolute;top:50%;right:1.5em;border:0;border-radius:25px;color:#fff;font-size:0.9em;font-weight:600;letter-spacing:.08em;text-transform:uppercase}[data-whatinput='mouse'] .site-header-search .search-submit{outline:0}.site-header-search .search-submit:hover,.site-header-search .search-submit:focus{background-color:#007c91;color:#fefefe}.actions{margin-top:1em}.read-more{display:inline-block;font-size:0.9333333em;font-weight:700;text-transform:uppercase}.section-header{margin-bottom:1em;text-align:center}@media print, screen and (min-width: 48em){.section-header{margin-bottom:2em}}@media print, screen and (min-width: 64em){.section-header{margin-bottom:3.3em}}.section-header .section-title{margin-bottom:0.5em;font-weight:300;line-height:1.1}@media print, screen and (min-width: 48em){.section-header .section-title{font-size:2.5em}}@media screen and (min-width: 75em){.section-header .section-title{font-size:3.4em}}.section-header .section-description{color:#444;font-family:"Rubik",sans-serif;font-size:1.13333em;font-weight:400;letter-spacing:.02em}.section-header .section-description p{margin:0}.section-footer{text-align:center}.breadcrumbs{margin-bottom:12px;color:#aaa;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}@media print, screen and (min-width: 64em){.breadcrumbs{font-size:14px}}.breadcrumbs a{display:inline-block;margin:0 .25em;color:#aaa}.breadcrumbs a:hover,.breadcrumbs a:focus{color:#9d9d9d;text-decoration:underline}.breadcrumbs span{color:#aaa}.breadcrumbs .breadcrumb_last{display:inline-block;margin-left:.25em}.incubation-process-page-list,.incubation-process-page-select{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%;padding:0 2em;border-radius:26px;background-color:#0092AA;color:#fff;font-size:0.93333em;font-weight:700;list-style:none;text-transform:uppercase;z-index:3}.incubation-process-page-list a,.incubation-process-page-select a{display:inline-block;padding:1em;-webkit-transition:background-color 0.4s ease;-o-transition:background-color 0.4s ease;transition:background-color 0.4s ease;color:#fff}.incubation-process-page-list a:hover,.incubation-process-page-list a:focus,.incubation-process-page-select a:hover,.incubation-process-page-select a:focus{background-color:#007c91;color:#fff}.incubation-process-page-list a.is-active,.incubation-process-page-select a.is-active{background-color:#00505e}@media print, screen and (min-width: 48em){.headroom{-webkit-transition:-webkit-transform .4s ease-out;transition:-webkit-transform .4s ease-out;-o-transition:transform .4s ease-out;transition:transform .4s ease-out;transition:transform .4s ease-out, -webkit-transform .4s ease-out}.headroom--unpinned{-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.headroom--pinned.headroom--not-top{position:fixed;top:0;right:0;left:0;max-width:90rem;margin:0 auto;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0);-webkit-box-shadow:0 0.25rem 0.25rem rgba(0,0,0,0.1);box-shadow:0 0.25rem 0.25rem rgba(0,0,0,0.1);z-index:3}.admin-bar .headroom--pinned.headroom--not-top{top:32px}}.cn-bottom{width:90%;margin:0 auto}.cookie-notice-container{background-color:#333;z-index:5}@media print, screen and (min-width: 48em){.cookie-notice-container{position:absolute;right:10px;bottom:10px;width:350px;margin:0;padding:1em;border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px}}.cookie-notice-container span{display:block}.cookie-notice-container a.cn-set-cookie.button,.cookie-notice-container a.cn-more-info.button{margin-top:.85em}@media print, screen and (min-width: 48em){.cookie-notice-container a.cn-set-cookie.button,.cookie-notice-container a.cn-more-info.button{margin-top:1em;margin-bottom:.5em}}.page-template-incubation-process .cases-in-this-phase,.cases-container{padding-top:0;padding-bottom:0}.page-template-incubation-process .cases-in-this-phase .section-header,.cases-container .section-header{padding:0;text-align:left}@media screen and (min-width: 71.25em){.page-template-incubation-process .cases-in-this-phase .section-header,.cases-container .section-header{padding:0 2em}}@media screen and (min-width: 75em){.page-template-incubation-process .cases-in-this-phase .section-header,.cases-container .section-header{padding:0 6.15em}}.page-template-incubation-process .cases-in-this-phase .card-inner,.cases-container .card-inner{border:solid 1px #ddd}.page-template-incubation-process .cases-in-this-phase .section-title,.cases-container .section-title{margin:0 0 1.7em 0;text-align:center}.page-template-incubation-process .cases-in-this-phase .hentry,.cases-container .hentry{border-color:#f5f5f5}.page-template-incubation-process .cases-in-this-phase .hentry .entry-title,.cases-container .hentry .entry-title{margin:0 0 0.2em 0}.page-template-incubation-process .cases-in-this-phase .hentry .read-more,.cases-container .hentry .read-more{margin-top:1.5em}.page-template-incubation-process .cases-in-this-phase .hentry img,.cases-container .hentry img{width:100%}.cases-container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.cases-container .card-wrap{margin-top:1em}.cases-container .entry-title{font-size:1em}.persons-shortcode .contact-information li{display:block}.persons-shortcode>.items>.person .entry-figure img{border-radius:50%}body{background:#e8e8e8;color:#333;font-size:14px;font-weight:400;line-height:1.6}body,html *{font-smoothing:antialiased;text-rendering:geometricPrecision;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{-webkit-transition:color .2s;-o-transition:color .2s;transition:color .2s;color:#0092AA;text-decoration:none}a:hover{color:#595959}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{color:#222;line-height:1.2}.site-main .entry-content h1,.site-main .entry-content h2,.site-main .entry-content h3,.site-main .entry-content h4,.site-main .entry-content h5,.site-main .entry-content h6{margin-top:1em;margin-bottom:.5em}.site-main .entry-content a{font-weight:500}.site-main .entry-content>:last-child{margin-bottom:0}.site-main .entry-content>:first-child{margin-top:0}h1,.h1{font-size:1.802em}h2,.h2{font-size:1.602em}h3,.h3{font-size:1.424em}h4,.h4{font-size:1.266em}h5,.h5{font-size:1.125em}h6,.h6{font-size:1em}@media print, screen and (min-width: 48em){body{font-size:15px}h1,.h1{font-size:2.488em}h2,.h2{font-size:2.074em}h3,.h3{font-size:1.728em}h4,.h4{font-size:1.44em}h5,.h5{font-size:1.2em}h6,.h6{font-size:1em}}@media screen and (min-width: 75em){body{font-size:16px}}.site-inner{max-width:90rem;margin:0 auto}.site-content{background:#f4f4f4}.content-wrapper{width:100%;max-width:1280px;margin:0 auto}.content-wrapper::after{content:'';display:table;clear:both}.site-top-menu{padding:0.5em 0}.site-header-main{background-color:#fff}.site-header-main-inner{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:1em 2em}.site-branding{margin-right:auto;font-size:2em;font-weight:700}.site-brand-image{max-width:120px}@media print, screen and (min-width: 64em){.site-brand-image{max-width:140px}}@media screen and (min-width: 75em){.site-brand-image{max-width:180px}}.site-header-icons{display:-webkit-box;display:-ms-flexbox;display:flex;margin-left:auto}.site-social-links{margin-right:2em}.site-social-links .social-links{margin:0;padding:0;list-style:none;text-align:center}.site-social-links .social-links>li{display:inline}.site-search-toggle{margin:0 2em 0 auto;cursor:pointer}@media screen and (max-width: 63.99875em){.site-header-menu{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}}.site-header-main.headroom--not-top.headroom--pinned .site-header-main-inner{padding:.5em 2em}.site-header-main.headroom--not-top.headroom--pinned .site-branding img{max-width:100px}.site-header-extra{display:-webkit-box;display:-ms-flexbox;display:flex}@media screen and (max-width: 89.99875em){.site-header-extra{display:none !important}}.site-header-extra .img{width:100%;max-width:120px;margin-left:10px;-o-object-fit:contain;object-fit:contain}.menu-item-has-children a:after,.dropdown-toggle:after{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.site-header-menu{display:none}@media print, screen and (min-width: 64em){.site-header-menu{display:block}}.site-header-menu.toggled-on{display:block}.main-navigation ul ul{display:block}.main-navigation{margin-top:1.5em}@media print, screen and (min-width: 64em){.main-navigation{margin-top:0}}.main-navigation ul{padding:0;margin:0;list-style:none}.main-navigation li{border-top:1px solid #DDD;position:relative}@media print, screen and (min-width: 64em){.main-navigation li{border-top:1px solid #333}}.main-navigation a{color:#222;display:block;line-height:1.3125;outline-offset:-1px;padding:0.84375em 0}.main-navigation a:hover,.main-navigation a:focus{color:#2f2f2f}.main-navigation .current-page-ancestor>a,.main-navigation .current-menu-item>a{color:#A6CE39;font-weight:600}@media print, screen and (min-width: 64em){.main-navigation .current-page-ancestor>a,.main-navigation .current-menu-item>a{color:#2f2f2f}}.main-navigation .current_page_item>a{cursor:default}.main-navigation ul ul{display:none;margin-left:0.875em}.main-navigation ul .toggled-on{display:block}.main-navigation .primary-menu{border-bottom:1px solid #DDD}@media print, screen and (min-width: 64em){.main-navigation .primary-menu{border-bottom:1px solid #333}}.main-navigation .menu-item-has-children>a{margin-right:56px}@media print, screen and (min-width: 64em){.main-navigation .primary-menu,.main-navigation .primary-menu>li{border:0}.main-navigation .primary-menu>li{float:left}.main-navigation a{-webkit-transition:color .3s;-o-transition:color .3s;transition:color .3s;text-transform:uppercase;font-weight:600;color:#0092AA;outline-offset:-8px;padding:0.65625em 0.875em;white-space:nowrap}.main-navigation li:hover>a,.main-navigation li.focus>a{color:#2f2f2f}.main-navigation ul ul{border-bottom:1px solid #333;display:block;left:-999em;margin:0;position:absolute;z-index:99999}.main-navigation ul ul ul{top:-1px}.main-navigation ul ul ul:before,.main-navigation ul ul ul:after{border:0}.main-navigation ul ul li{background-color:#FFF;border:1px solid #333;border-bottom-width:0}.main-navigation ul ul a{white-space:normal;width:12.6875em}.main-navigation ul ul:before,.main-navigation ul ul:after{border-style:solid;content:"";position:absolute}.main-navigation ul ul:before{border-color:#333 transparent;border-width:0 10px 10px;right:9px;top:-9px}.main-navigation ul ul:after{border-color:#FFF transparent;border-width:0 8px 8px;right:11px;top:-7px}.main-navigation li:hover>ul,.main-navigation li.focus>ul{left:auto;right:0}.main-navigation ul ul li:hover>ul,.main-navigation ul ul li.focus>ul{left:auto;right:100%}.main-navigation .menu-item-has-children>a{margin:0;padding-right:2.25em}.main-navigation .menu-item-has-children>a:after{content:"\f107";position:absolute;right:0.625em;top:0.8125em}.main-navigation ul ul .menu-item-has-children>a{padding-right:2.0625em}.main-navigation ul ul .menu-item-has-children>a:after{right:0.5625em;top:0.875em;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.main-navigation .dropdown-toggle,.main-navigation ul .dropdown-toggle.toggled-on{display:none}}@media print, screen and (min-width: 64em){.main-navigation .sub-menu{border-radius:6px}.main-navigation .sub-menu>li:first-of-type{border-top-left-radius:6px;border-top-right-radius:6px}.main-navigation .sub-menu>li:last-of-type{border-bottom-right-radius:6px;border-bottom-left-radius:6px}}.primary-menu:before,.primary-menu:after{content:"";display:table}.primary-menu:after{clear:both}.dropdown-toggle{position:absolute;right:0;top:0;height:48px;width:48px;padding:0;border:0;border-radius:0;background-color:transparent;color:#1A1A1A;text-transform:none;content:""}.dropdown-toggle:hover,.dropdown-toggle:focus{background-color:transparent}.dropdown-toggle:focus{outline:thin dotted;outline-offset:-1px}.dropdown-toggle:focus:after{border-color:transparent}.dropdown-toggle.toggled-on:after{content:"\f106"}.dropdown-toggle:after{position:relative;left:1px;padding:0 16px;border:0 solid #DDD;border-left-width:1px;font-size:24px;content:"\f107"}@media print, screen and (min-width: 64em){.dropdown-toggle:after{border:0 solid #333}}.menu-toggle{margin-left:auto}.menu-toggle:hover,.menu-toggle:focus{background-color:transparent}.menu-toggle.toggled-on,.menu-toggle.toggled-on:hover,.menu-toggle.toggled-on:focus{background:transparent}.menu-toggle:focus,.menu-toggle.toggled-on:focus{outline:0}.menu-toggle .burger-icon{position:relative;margin-top:6px;margin-bottom:6px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;user-select:none}.menu-toggle .burger-icon,.menu-toggle .burger-icon::before,.menu-toggle .burger-icon::after{display:block;width:20px;height:3px;background-color:#222;-webkit-transition-property:background-color, -webkit-transform;transition-property:background-color, -webkit-transform;-o-transition-property:background-color, transform;transition-property:background-color, transform;transition-property:background-color, transform, -webkit-transform;-webkit-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s;transition-duration:.3s}.menu-toggle .burger-icon::before,.menu-toggle .burger-icon::after{position:absolute;content:''}.menu-toggle .burger-icon::before{top:-6px}.menu-toggle .burger-icon::after{top:6px}.menu-toggle.toggled-on .burger-icon{background-color:transparent}.menu-toggle.toggled-on .burger-icon::before{-webkit-transform:translateY(6px) rotate(45deg);-ms-transform:translateY(6px) rotate(45deg);transform:translateY(6px) rotate(45deg);transform:translateY(6px) rotate(45deg)}.menu-toggle.toggled-on .burger-icon::after{-webkit-transform:translateY(-6px) rotate(-45deg);-ms-transform:translateY(-6px) rotate(-45deg);transform:translateY(-6px) rotate(-45deg);transform:translateY(-6px) rotate(-45deg)}@media print, screen and (min-width: 64em){.menu-toggle{display:none}}@-ms-viewport{width:device-width}@-o-viewport{width:device-width}@viewport{width:device-width}.secondary-menu{margin:0;padding:0;list-style:none;display:-webkit-box;display:-ms-flexbox;display:flex;font-size:0.8em;text-transform:uppercase}.secondary-menu a{color:#888}.secondary-menu .current-menu-item>a{color:#444;cursor:default}.secondary-menu>li:not(:first-child) a::before{margin-left:0.5em;padding-right:0.5em;content:"|"}.site-header .secondary-navigation{overflow:hidden}@media print, screen and (min-width: 64em){.site-header .secondary-menu{float:right}}.site-sidebar{margin-top:2em}.site-sidebar .widget-title{font-size:1.2em;font-weight:500;text-transform:uppercase}.site-sidebar .widget:not(:first-child){margin-top:2em}.site-sidebar ul{margin:0;padding:0;list-style:none;line-height:1.4}.site-sidebar ul>li{padding:0.5em 0}.site-sidebar ul>li:first-child{padding-top:0}.site-sidebar ul>li:not(:last-child){border-bottom:1px solid #e6e6e6}.site-footer{padding:60px 2em 0;background-color:#fff;color:#333}.site-footer a{color:#333}.site-footer a:hover,.site-footer a:focus{color:#262626}.site-footer .footer-text-container{text-align:center}@media print, screen and (min-width: 30em){.site-footer .footer-text-container{text-align:left}}.site-footer .site-footer-brand-image{max-width:150px}@media print, screen and (min-width: 48em){.site-footer .site-footer-brand-image{max-width:130px}}@media print, screen and (min-width: 64em){.site-footer .site-footer-brand-image{max-width:200px}}.site-footer .site-footer-top{margin-bottom:35px}@media print, screen and (min-width: 64em){.site-footer .site-footer-top{margin-bottom:75px}}.site-footer .site-footer-bottom{padding:25px 0;border-top:1px solid #CCC}.site-footer .site-footer-bottom .secondary-menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:1em;font-size:14px}.site-footer .site-footer-bottom .secondary-menu .menu-item a{color:#888}@media print, screen and (min-width: 48em){.site-footer .site-footer-bottom .secondary-menu{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}}.site-footer .footer-menu{margin:0;text-align:center}@media print, screen and (min-width: 30em){.site-footer .footer-menu{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;text-align:left}}@media print, screen and (min-width: 64em){.site-footer .footer-menu{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.site-footer .footer-menu .menu-item{-ms-flex-preferred-size:50%;flex-basis:50%;margin:.5em 0;line-height:1.3;list-style:none}@media print, screen and (min-width: 30em){.site-footer .footer-menu .menu-item{margin:.5em 0 0}}@media print, screen and (min-width: 64em){.site-footer .footer-menu .menu-item{-ms-flex-preferred-size:25%;flex-basis:25%;padding:0 .5rem}.site-footer .footer-menu .menu-item:last-child{padding-right:1em}}.site-footer .footer-menu .menu-item a{font-weight:500}.site-footer .footer-menu>li>a:first-child{font-size:20px}.site-footer .footer-menu .sub-menu{margin:0}@media print, screen and (min-width: 30em){.site-footer .footer-menu .sub-menu{margin:1em 0 0 0}}.site-footer .footer-menu .sub-menu .menu-item{padding:0}.site-footer .footer-menu .sub-menu .menu-item a{color:#0092AA;font-size:14px}.site-footer .footer-menu .sub-menu .menu-item a:hover{color:#595959}.site-footer .footer-text{margin:4em 0 1em;color:#333}@media print, screen and (min-width: 48em){.site-footer .footer-text{margin:4em 0;color:#888;font-size:.9em}}.site-footer .footer-logos{text-align:center}@media print, screen and (min-width: 48em){.site-footer .footer-logos{text-align:left}}.site-footer .footer-social,.site-footer .footer-logos{margin-top:2em}@media print, screen and (min-width: 64em){.site-footer .footer-social,.site-footer .footer-logos{margin:0}}.site-footer .footer-logo{display:block;max-height:85px;margin:0 auto 1em}@media print, screen and (min-width: 30em){.site-footer .footer-logo{display:inline-block;margin:1em}}.site-footer .footer-social{text-align:center}@media print, screen and (min-width: 48em){.site-footer .footer-social{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2;text-align:left}}@media print, screen and (min-width: 64em){.site-footer .footer-social{-ms-flex-wrap:nowrap;flex-wrap:nowrap}}.site-footer .footer-social-text{display:block;color:#333;font-size:18px}@media print, screen and (min-width: 48em){.site-footer .footer-social-text{display:inline;color:#888}}@media print, screen and (min-width: 64em){.site-footer .footer-social-text{margin-right:2em}}.site-footer .footer-social-links{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin:1em 0 0;font-size:1.25em;list-style:none}@media print, screen and (min-width: 48em){.site-footer .footer-social-links{margin:0}}.site-footer .footer-social-links .footer-social-item{margin:0 .5em}.site-footer .footer-social,.site-footer .footer-social-item .fa{color:#888}.legal-links{margin:0;padding:0;list-style:none;text-align:center}@media print, screen and (min-width: 48em){.legal-links{display:-webkit-box;display:-ms-flexbox;display:flex;float:right;text-align:left}.legal-links>li{margin-left:1em}.legal-links>li a{color:#888}}.hero{background-position:center;background-size:cover;background-repeat:no-repeat;position:relative;padding:2em 0}@media print, screen and (min-width: 64em){.hero::before{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);content:'';z-index:1;pointer-events:none}}@media screen and (max-width: 63.99875em){.hero{padding:0;background-image:none !important}}.hero .hero-main{background-position:center;background-size:cover;background-repeat:no-repeat}@media screen and (max-width: 63.99875em){.hero .hero-main::before{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);content:'';z-index:1;pointer-events:none}}@media print, screen and (min-width: 64em){.hero .hero-main{background-image:none !important}}.hero .hero-main>*{position:relative;z-index:2}.hero .hero-title{color:#fff;font-size:2.4em;font-weight:700}@media print, screen and (min-width: 64em){.hero .hero-title{font-size:4.2em;font-weight:500}}.hero .hero-inner{padding:4em 2em;color:#fff}@media print, screen and (min-width: 64em){.hero .hero-inner{padding:5em 0 4em 4em}}@media screen and (min-width: 75em){.hero .hero-inner{padding:7em 0 5em 6em}}.hero .hero-content{margin-top:2em;font-size:120%;font-weight:700}@media print, screen and (min-width: 64em){.hero .hero-content{font-weight:400}}.hero .lift-ups{position:relative;z-index:2}@media print, screen and (min-width: 64em){.hero .lift-ups{padding:0 2em 1em}}.hero .lift-ups-inner{background-color:#f5f5f5}@media screen and (max-width: 29.99875em){.hero .lift-ups-inner{padding-bottom:1em}}@media print, screen and (min-width: 64em){.hero .lift-ups-inner{background-color:transparent}.hero .lift-ups-inner>*{display:-webkit-box;display:-ms-flexbox;display:flex}}.hero .lift-up{margin-top:1em;padding:1.5em 2em .75em;border-top-left-radius:20px;border-bottom-right-radius:20px;background-color:#fff}@media print, screen and (min-width: 64em){.hero .lift-up{padding:2.5em}}@media screen and (max-width: 63.99875em){.hero .lift-up .actions{text-align:right}}.hero .lift-up-title{margin-top:0;font-size:1.7em;font-weight:500;text-transform:uppercase}.hero .button,.hero .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields .hero input[type='submit']{margin:0}@media print, screen and (min-width: 64em){.hero .button,.hero .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields .hero input[type='submit']{margin:1em 0 -1em 0}}.whats-happening{padding:1.5em 1em;background:#fff}@media print, screen and (min-width: 64em){.whats-happening{padding:4em}}.whats-happening h2{margin:0 0 0.5em 0;font-weight:300}@media print, screen and (min-width: 64em){.whats-happening h2{font-size:2.488em}}.whats-happening .event-items .hentry{position:relative;margin-bottom:2em}.whats-happening .event-items .hentry::after{content:'';display:table;clear:both}.whats-happening .event-items .hentry .entry-link{display:block}.whats-happening .event-items .hentry .entry-figure{display:block}.whats-happening .event-items .hentry .article-fields{display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;bottom:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;background-color:rgba(34,34,34,0.8)}.whats-happening .event-items .hentry .article-fields .entry-titles{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;margin:1em}@media screen and (min-width: 48em) and (max-width: 63.99875em){.whats-happening .event-items .hentry .article-fields .entry-titles{margin-left:4.5em}}.whats-happening .event-items .hentry .article-fields .entry-titles h3{margin:0 0 0.2em;color:#fff;font-size:1.2em;font-weight:500}.whats-happening .event-items .hentry .article-fields .entry-titles h4{margin:0;color:#fff;font-size:0.8em}.whats-happening .event-items .hentry .entry-meta{position:absolute;top:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0.6em 0.8em;background-color:#A6CE39;color:#fff;text-align:center}@media screen and (min-width: 48em) and (max-width: 63.99875em){.whats-happening .event-items .hentry .entry-meta{top:unset;bottom:0;width:4em;background:transparent}}.whats-happening .event-items .hentry .entry-meta .entry-start-date{color:#222;font-size:1.2em;font-weight:600}@media screen and (min-width: 48em) and (max-width: 63.99875em){.whats-happening .event-items .hentry .entry-meta .entry-start-date{color:#fff}}.whats-happening .event-items .hentry .entry-meta .entry-start-month{font-size:1em;font-weight:700;text-transform:uppercase}.whats-happening .news-items::after{content:'';display:table;clear:both}.whats-happening .news-items .hentry{margin-bottom:2em}.whats-happening .news-items .hentry::after{content:'';display:table;clear:both}@media print, screen and (min-width: 48em){.whats-happening .news-items .hentry{float:left;clear:none;text-align:inherit;width:48.5%;margin-left:0%;margin-right:3%}.whats-happening .news-items .hentry::after{content:'';display:table;clear:both}.whats-happening .news-items .hentry:nth-child(n){margin-right:3%;float:left;clear:none}.whats-happening .news-items .hentry:nth-child(2n){margin-right:0%;float:right}.whats-happening .news-items .hentry:nth-child(2n+1){clear:both}}.whats-happening .news-items .hentry .hentry-content::after{content:'';display:table;clear:both}.whats-happening .news-items .hentry .entry-title{margin-bottom:0.25em}.whats-happening .news-items .hentry .figure-container{float:left;clear:none;text-align:inherit;width:38.2%;margin-left:0%;margin-right:3%;height:125px}.whats-happening .news-items .hentry .figure-container::after{content:'';display:table;clear:both}.whats-happening .news-items .hentry .figure-container:last-child{margin-right:0%}@media screen and (min-width: 48em) and (max-width: 63.99875em){.whats-happening .news-items .hentry .figure-container{height:75px}}.whats-happening .news-items .hentry .entry-figure{height:100%;background-position:center center;background-size:cover}.whats-happening .news-items .hentry .article-fields{float:left;clear:none;text-align:inherit;width:58.8%;margin-left:0%;margin-right:3%}.whats-happening .news-items .hentry .article-fields::after{content:'';display:table;clear:both}.whats-happening .news-items .hentry .article-fields:last-child{margin-right:0%}.whats-happening .news-items .entry-tag{display:none;margin-top:.25em;color:#888;font-weight:700}@media print, screen and (min-width: 64em){.whats-happening .news-items .entry-tag{display:block}}.whats-happening .news-items .entry-tag a{color:#7097AB;font-size:.8em;letter-spacing:0.05em;text-transform:uppercase}.whats-happening .news-items .entry-meta{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:wrap;flex-wrap:wrap;color:#888;font-size:0.8em;font-weight:600;text-transform:uppercase}@media print, screen and (min-width: 64em){.whats-happening .news-items .entry-meta{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.whats-happening .news-items .entry-meta .entry-meta-item{margin-right:1em}}.whats-happening .news-items .entry-meta .entry-meta-item i{margin-right:.5em}.whats-happening .news-items .entry-meta .entry-meta-item.entry-tag{display:block;margin:.5em 0}@media print, screen and (min-width: 64em){.whats-happening .news-items .entry-meta .entry-meta-item.entry-tag{display:none}}.whats-happening .entry-title{margin:0 0 1em 0;font-size:1.3em;line-height:1.3}.whats-happening .first-row.has-post-thumbnail .entry-title{margin-top:1em}.home .whats-happening .news-items .first-row .figure-container,.single-event .whats-happening .news-items .first-row .figure-container{float:left;clear:none;text-align:inherit;width:100%;margin-left:0%;margin-right:3%;height:230px}.home .whats-happening .news-items .first-row .figure-container::after,.single-event .whats-happening .news-items .first-row .figure-container::after{content:'';display:table;clear:both}.home .whats-happening .news-items .first-row .figure-container:last-child,.single-event .whats-happening .news-items .first-row .figure-container:last-child{margin-right:0%}.home .whats-happening .news-items .first-row .article-fields,.single-event .whats-happening .news-items .first-row .article-fields{float:left;clear:none;text-align:inherit;width:100%;margin-left:0%;margin-right:3%}.home .whats-happening .news-items .first-row .article-fields::after,.single-event .whats-happening .news-items .first-row .article-fields::after{content:'';display:table;clear:both}.home .whats-happening .news-items .first-row .article-fields:last-child,.single-event .whats-happening .news-items .first-row .article-fields:last-child{margin-right:0%}.home .whats-happening .news-items .first-row .entry-tag,.single-event .whats-happening .news-items .first-row .entry-tag{margin-top:.25em;line-height:1.3}.post-type-archive-event .whats-happening .article-fields .entry-title{margin-top:0}.tweets{width:100%;max-width:1280px;margin:0 auto;padding:2em}@media screen and (min-width: 75em){.tweets{padding:0 0 4em}}.tweets h1{margin-bottom:0}.tweets .date{display:block;margin-bottom:.5em;font-weight:700}.tweets .date .fa{color:#3e90bb}.tweets .image{float:left;clear:none;text-align:inherit;width:31.33333%;margin-left:0%;margin-right:3%}.tweets .image::after{content:'';display:table;clear:both}.tweets .image:last-child{margin-right:0%}.tweets .image img{width:80px;height:80px;margin-top:7px;border-radius:10px;-o-object-fit:cover;object-fit:cover}@media print, screen and (min-width: 30em){.tweets .image img{width:60px;height:60px}}@media screen and (min-width: 75em){.tweets .image img{width:80px;height:80px}}.tweets .story{float:left;clear:none;text-align:inherit;width:65.66667%;margin-left:0%;margin-right:3%}.tweets .story::after{content:'';display:table;clear:both}.tweets .story:last-child{margin-right:0%}.tweets .story a{display:-webkit-box;height:92px;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;-webkit-line-clamp:4;-webkit-box-orient:vertical}@media print, screen and (min-width: 48em){.tweets .story a{height:100px}}.tweets .by-line{margin:.5em;color:#888;font-weight:700}.tweets .button-twitter-follow{margin-top:1em}@media screen and (min-width: 75em){.home .tweets{padding:3em 0}}.tweet-list{margin-top:1em}.tweet-list::after{content:'';display:table;clear:both}.tweet-list .tweet{border-spacing:.5em}@media print, screen and (min-width: 30em){.tweet-list .tweet{float:left;clear:none;text-align:inherit;width:48.5%;margin-left:0%;margin-right:3%}.tweet-list .tweet::after{content:'';display:table;clear:both}.tweet-list .tweet:nth-child(n){margin-right:3%;float:left;clear:none}.tweet-list .tweet:nth-child(2n){margin-right:0%;float:right}.tweet-list .tweet:nth-child(2n+1){clear:both}}@media print, screen and (min-width: 48em){.tweet-list .tweet{float:left;clear:none;text-align:inherit;width:31.33333%;margin-left:0%;margin-right:3%}.tweet-list .tweet::after{content:'';display:table;clear:both}.tweet-list .tweet:nth-child(n){margin-right:3%;float:left;clear:none}.tweet-list .tweet:nth-child(3n){margin-right:0%;float:right}.tweet-list .tweet:nth-child(3n+1){clear:both}}.partners{padding:2em 0;background:#fff}@media print, screen and (min-width: 64em){.partners{padding:4em 0}}.partners .partner{margin-top:0.5em;margin-bottom:0.5em}.partners .partner-link{display:block;width:100%;height:120px;background-repeat:no-repeat;background-position:center center;background-size:contain}.related-persons,.persons-shortcode{margin:2em 0}@media print, screen and (min-width: 64em){.related-persons,.persons-shortcode{margin:4em 0}}.related-persons .items::after,.persons-shortcode .items::after{content:'';display:table;clear:both}.related-persons .related-section-title,.persons-shortcode .related-section-title{margin-bottom:1em}.related-persons .related-person,.persons-shortcode .related-person{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:2em}.related-persons .related-person::after,.persons-shortcode .related-person::after{content:'';display:table;clear:both}@media print, screen and (min-width: 64em){.related-persons .related-person,.persons-shortcode .related-person{float:left;clear:none;text-align:inherit;width:48.5%;margin-left:0%;margin-right:3%}.related-persons .related-person::after,.persons-shortcode .related-person::after{content:'';display:table;clear:both}.related-persons .related-person:nth-child(n),.persons-shortcode .related-person:nth-child(n){margin-right:3%;float:left;clear:none}.related-persons .related-person:nth-child(2n),.persons-shortcode .related-person:nth-child(2n){margin-right:0%;float:right}.related-persons .related-person:nth-child(2n+1),.persons-shortcode .related-person:nth-child(2n+1){clear:both}}.related-persons .related-person.hentry,.persons-shortcode .related-person.hentry{margin-bottom:2em}.related-persons .entry-figure,.persons-shortcode .entry-figure{float:left;clear:none;text-align:inherit;width:31.33333%;margin-left:0%;margin-right:3%;-ms-flex-item-align:start;align-self:flex-start;margin-top:1em}.related-persons .entry-figure::after,.persons-shortcode .entry-figure::after{content:'';display:table;clear:both}.related-persons .entry-figure:last-child,.persons-shortcode .entry-figure:last-child{margin-right:0%}@media print, screen and (min-width: 30em){.related-persons .entry-figure,.persons-shortcode .entry-figure{float:left;clear:none;text-align:inherit;width:22.75%;margin-left:0%;margin-right:3%}.related-persons .entry-figure::after,.persons-shortcode .entry-figure::after{content:'';display:table;clear:both}.related-persons .entry-figure:last-child,.persons-shortcode .entry-figure:last-child{margin-right:0%}}@media screen and (min-width: 48em) and (max-width: 63.99875em){.related-persons .entry-figure,.persons-shortcode .entry-figure{float:left;clear:none;text-align:inherit;width:14.16667%;margin-left:0%;margin-right:3%}.related-persons .entry-figure::after,.persons-shortcode .entry-figure::after{content:'';display:table;clear:both}.related-persons .entry-figure:last-child,.persons-shortcode .entry-figure:last-child{margin-right:0%}}@media print, screen and (min-width: 64em){.related-persons .entry-figure,.persons-shortcode .entry-figure{float:left;clear:none;text-align:inherit;width:31.33333%;margin-left:0%;margin-right:3%}.related-persons .entry-figure::after,.persons-shortcode .entry-figure::after{content:'';display:table;clear:both}.related-persons .entry-figure:last-child,.persons-shortcode .entry-figure:last-child{margin-right:0%}}.related-persons .entry-figure img,.persons-shortcode .entry-figure img{border:solid 3px #e8e8e8;border-radius:50%}.related-persons .related-person-name,.persons-shortcode .related-person-name{margin:0;font-size:1.2em;letter-spacing:.02em}.related-persons .job-title,.persons-shortcode .job-title{margin:.25em 0;color:#888;font-size:.9em;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.related-persons .contact-information,.persons-shortcode .contact-information{margin:0.5em 0 0 0;padding:0;list-style:none}.related-persons .contact-information a[href^="tel:"],.persons-shortcode .contact-information a[href^="tel:"]{color:#444}.related-persons .contact-information li,.persons-shortcode .contact-information li{display:inline-block;margin-right:1em;margin-bottom:.35em}@media print, screen and (min-width: 64em){.related-persons .contact-information li,.persons-shortcode .contact-information li{width:100%}}.related-persons .contact-information li a,.persons-shortcode .contact-information li a{white-space:nowrap}.related-persons .contact-information i,.persons-shortcode .contact-information i{margin-right:.2em;color:#bbb}.related-persons .contact-information i.fa-mobile,.persons-shortcode .contact-information i.fa-mobile{margin-right:.6em}.persons-shortcode .person-top{width:100%}.persons-shortcode .person-top .entry-figure{max-width:100px;max-height:100px}.persons-shortcode .compact{-ms-flex-wrap:wrap;flex-wrap:wrap}.persons-shortcode .compact .contact-information{margin-top:1em}.persons-shortcode .compact .contact-information li{display:block}@media print, screen and (min-width: 30em){.persons-shortcode .primary{display:none}}@media print, screen and (min-width: 64em){.persons-shortcode .primary{display:block}}.persons-shortcode .secondary{display:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media print, screen and (min-width: 30em){.persons-shortcode .secondary{display:-webkit-box;display:-ms-flexbox;display:flex}}@media print, screen and (min-width: 64em){.persons-shortcode .secondary{display:none}}.stripe{padding:3em 2em;background-color:#333;color:#CCC;font-size:1.1em;font-weight:500}@media print, screen and (min-width: 64em){.stripe{padding:2em 0}}@media screen and (min-width: 75em){.stripe{padding:3em 0}}.stripe .stripe-title{margin-top:0;color:#fff;font-weight:400}.stripe .button,.stripe .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields .stripe input[type='submit']{margin:0;background-color:#A6CE39;color:#222}.stripe .button:hover,.stripe .mailchimp .mc4wp-form-fields input:hover[type='submit'],.mailchimp .mc4wp-form-fields .stripe input:hover[type='submit'],.stripe .button:focus,.stripe .mailchimp .mc4wp-form-fields input:focus[type='submit'],.mailchimp .mc4wp-form-fields .stripe input:focus[type='submit']{background-color:#0092AA;color:#fff}.success-stories{padding:2em 0}@media print, screen and (min-width: 64em){.success-stories{padding:3.5em 0}}.success-stories .story{margin-bottom:1em}@media print, screen and (min-width: 48em){.success-stories .story{margin-bottom:0}}.success-stories .hentry{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%;border-radius:6px;background-color:#fff}.success-stories .entry-figure-link{height:245px}.success-stories .entry-figure{height:100%;border-radius:6px 6px 0 0;background-position:center center;background-size:cover}.success-stories .entry-inner{padding:1em}@media print, screen and (min-width: 48em){.success-stories .entry-inner{padding-bottom:3.5em}}@media print, screen and (min-width: 64em){.success-stories .entry-inner{padding:1.5em 1.5em 4.5em}}.success-stories .entry-title{font-size:1.533333em;line-height:1.1}.success-stories .entry-meta{margin-top:1em;color:#7097AB;font-size:.85em;font-weight:700;letter-spacing:0.05em;text-transform:uppercase}.success-stories .entry-meta .tag::after{position:relative;right:3px;color:#888;content:', '}.success-stories .entry-meta .tag:last-of-type::after{content:''}.success-stories .entry-meta a{color:inherit}.success-stories .entry-summary{margin:1.5em 0}.success-stories .button-read-more{margin-top:1.5em}@media print, screen and (min-width: 48em){.success-stories .button-read-more{position:absolute;bottom:1em}}@media print, screen and (min-width: 64em){.success-stories .button-read-more{bottom:24px}}.success-stories .actions{margin:2em 0;text-align:center}.incubation-process{padding:2em;background-color:#fff}@media screen and (min-width: 75em){.incubation-process{padding:4em 0}}.incubation-process .section-header{margin-top:2em}.incubation-process .section-title{color:#0092AA}.incubation-process .incubation-process-slider{position:relative;margin-bottom:2em;background-color:#f5f5f5}@media print, screen and (min-width: 64em){.incubation-process .incubation-process-slider{max-width:71.25rem;margin:0 auto}}@media screen and (min-width: 90em){.incubation-process .incubation-process-slider{max-width:80rem}}.incubation-process .incubation-process-slider .slick-dots{bottom:-40px}.incubation-process .incubation-process-slider .slick-dots li button::before{-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.incubation-process .slides{padding:0.5em 0;background-color:#333}@media print, screen and (min-width: 64em){.incubation-process .slides{margin-bottom:5em;padding:0;border:1px solid #CCC;border-top:0;border-bottom-left-radius:6px;border-bottom-right-radius:6px;background-color:transparent}}.incubation-process .incubation-process-page-list{display:none;width:100%;margin:0;border-radius:6px 6px 0 0}@media print, screen and (min-width: 64em){.incubation-process .incubation-process-page-list{display:-webkit-box;display:-ms-flexbox;display:flex}}.incubation-process .slick-track{display:-webkit-box;display:-ms-flexbox;display:flex}.incubation-process .slick-slide{display:-webkit-box;display:-ms-flexbox;display:flex;height:auto}.incubation-process .slick-slide>div{width:100%}.incubation-process .slick-slide .slide,.incubation-process .slick-slide .slide-inner{height:100%}@media print, screen and (min-width: 64em){.incubation-process .slide-inner{display:-webkit-box;display:-ms-flexbox;display:flex;min-height:420px}}.incubation-process .slide-title{margin-bottom:.5em;font-size:2.488em}.incubation-process .incubation-process-step-number{color:#A6CE39}.incubation-process .slide-fields{padding:2em}@media print, screen and (min-width: 64em){.incubation-process .slide-fields{width:60%;padding:3em}}@media screen and (min-width: 75em){.incubation-process .slide-fields{padding:4em}}@media screen and (min-width: 90em){.incubation-process .slide-fields{padding:5em 6em}}.incubation-process .slide-fields .button,.incubation-process .slide-fields .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields .incubation-process .slide-fields input[type='submit']{margin-top:2em}.incubation-process .slide-mobile-title{margin:0;padding:0.3em 1em;background-color:#333;color:#fff;font-size:1.3em;font-weight:700;text-transform:uppercase;cursor:pointer}@media print, screen and (min-width: 64em){.incubation-process .slide-mobile-title{display:none}}.incubation-process .slide-mobile-title::before{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-right:1em;content:'\f0fe'}.incubation-process .slide-mobile-title.is-active::before{content:'\f146'}.incubation-process .slide-fields{display:none;margin:0 1em;border-radius:6px;background-color:#fff}@media print, screen and (min-width: 64em){.incubation-process .slide-fields{display:block !important;margin:0}}.incubation-process .slide-image{background-position:center;background-size:cover;background-repeat:no-repeat;display:none;width:40%;border-bottom-right-radius:6px}@media print, screen and (min-width: 64em){.incubation-process .slide-image{display:block}.incubation-process .slide-image .inner{height:0;padding-top:60%}}.incubation-process .button,.incubation-process .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields .incubation-process input[type='submit']{padding:.6em 2em}.incubation-process .arrow{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);display:none !important;font-size:2em;cursor:pointer;z-index:2}@media screen and (min-width: 90em){.incubation-process .arrow{display:block !important}}.incubation-process .arrow-previous{left:-1em}.incubation-process .arrow-next{right:-1em}.mailchimp{padding:2em 0;background:#222;color:#fff;text-align:center}@media print, screen and (min-width: 64em){.mailchimp{padding:4em 0}}.mailchimp .mailchimp-sign-up{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mailchimp .mailchimp-text{color:#fff;font-size:1.5em}.mailchimp input{margin:0}.mailchimp .mc4wp-form-fields{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mailchimp .mc4wp-form-fields input[type='email']{width:300px;margin:0 1em 0 0}.mailchimp .mc4wp-alert{margin:1em auto 0 auto;padding:1em;background:#f5f5f5;color:#333}@media print, screen and (min-width: 48em){.mailchimp .mc4wp-alert{max-width:60%}}.mailchimp .mc4wp-alert p{margin:0}.facebook{padding:2em 0}@media print, screen and (min-width: 64em){.facebook{padding:4em 0}}.facebook .column,.facebook .columns{overflow:hidden}.facebook .facebook-item{margin-bottom:1em}@media print, screen and (min-width: 30em){.facebook .facebook-item{float:left;clear:none;text-align:inherit;width:48.5%;margin-left:0%;margin-right:3%}.facebook .facebook-item::after{content:'';display:table;clear:both}.facebook .facebook-item:nth-child(n){margin-right:3%;float:left;clear:none}.facebook .facebook-item:nth-child(2n){margin-right:0%;float:right}.facebook .facebook-item:nth-child(2n+1){clear:both}}@media print, screen and (min-width: 48em){.facebook .facebook-item{float:left;clear:none;text-align:inherit;width:31.33333%;margin-left:0%;margin-right:3%}.facebook .facebook-item::after{content:'';display:table;clear:both}.facebook .facebook-item:nth-child(n){margin-right:3%;float:left;clear:none}.facebook .facebook-item:nth-child(3n){margin-right:0%;float:right}.facebook .facebook-item:nth-child(3n+1){clear:both}}.facebook .facebook-item img{width:100%}.facebook .facebook-item .image{height:200px;margin-bottom:1em;overflow:hidden}@media print, screen and (min-width: 64em){.facebook .facebook-item .image{height:240px}}.facebook .facebook-item a{color:#222}.facebook .facebook-item a:hover,.facebook .facebook-item a:focus{color:#0092AA}.instagram{padding:2em 0}@media print, screen and (min-width: 64em){.instagram{padding:4em 0}}.instagram .column,.instagram .columns{overflow:hidden}.instagram .instagram-item{margin-bottom:1em}@media print, screen and (min-width: 30em){.instagram .instagram-item{float:left;clear:none;text-align:inherit;width:48.5%;margin-left:0%;margin-right:3%}.instagram .instagram-item::after{content:'';display:table;clear:both}.instagram .instagram-item:nth-child(n){margin-right:3%;float:left;clear:none}.instagram .instagram-item:nth-child(2n){margin-right:0%;float:right}.instagram .instagram-item:nth-child(2n+1){clear:both}}@media print, screen and (min-width: 48em){.instagram .instagram-item{float:left;clear:none;text-align:inherit;width:31.33333%;margin-left:0%;margin-right:3%}.instagram .instagram-item::after{content:'';display:table;clear:both}.instagram .instagram-item:nth-child(n){margin-right:3%;float:left;clear:none}.instagram .instagram-item:nth-child(3n){margin-right:0%;float:right}.instagram .instagram-item:nth-child(3n+1){clear:both}}.instagram .instagram-item img{width:100%}.instagram .instagram-item .image{margin-bottom:1em}.instagram .instagram-item a{color:#222}.instagram .instagram-item a:hover,.instagram .instagram-item a:focus{color:#0092AA}.single-event .entry-registration{margin-top:2em}.single-event .entry-registration legend{font-weight:500}.single-event .entry-registration legend.has-error{color:#cc4b37}.single-event .entry-registration div.has-error{margin-bottom:1em;color:#cc4b37}.single-event .entry-registration input.has-error{border:1px solid #cc4b37;background-color:#f5ddda}.single-event .entry-registration input[type=submit]{margin-top:1em}@media print, screen and (min-width: 48em){.single-event .event-content{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}}.single-event .event-details .event-detail-title{color:#444}@media print, screen and (min-width: 64em){.single-event .event-details .event-detail-title{margin-top:1.5em}}.single-event .event-details ul{margin:0;padding:0;list-style:none}.single-event .event-details ul li{position:relative;margin-bottom:1.2em}.single-event .event-details ul li::after{content:'';display:table;clear:both}.single-event .event-details ul li span:last-child{margin-left:2em;float:left}.single-event .event-details ul a{color:#444}.single-event .event-details ul .event-website a,.single-event .event-details ul h3{margin:0.1em 0 0 0;font-size:1em;font-weight:500;text-transform:uppercase}.single-event .event-details ul .fa{position:absolute;top:0.2em;left:0;color:#444}.single-event .event-details ul .event-start-date{color:#444}.single-event .event-details ul .event-start-date time{display:block;color:#222;font-weight:500}.single-event .event-details ul .event-registration p{margin:0.8em 0}.single-event .event-details ul .event-registration strong{color:#444;text-transform:uppercase}.single-event .event-details ul .event-registration .button,.single-event .event-details ul .event-registration .mailchimp .mc4wp-form-fields input[type='submit'],.mailchimp .mc4wp-form-fields .single-event .event-details ul .event-registration input[type='submit']{margin-top:2em;color:#fff}.single-event .whats-happening{background-color:#f4f4f4}.flexible-cases .entry-figure-link,.flexible-cases .entry-figure{height:220px}@media print, screen and (min-width: 48em){.search .card{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%}}.search .card .entry-figure{height:150px;overflow:hidden}@media print, screen and (min-width: 64em){.search .card .entry-figure{height:135px}}@media screen and (min-width: 75em){.search .card .entry-figure{height:170px}}.search .card .entry-figure img{width:100%;height:auto}.single-content{margin-bottom:2em}@media print, screen and (min-width: 64em){.single-content{margin-bottom:4em}}.single-content .content-wrap{max-width:1280px}.single-content .hentry{position:relative;margin-bottom:2em;border-radius:6px;background-color:#fff}@media print, screen and (min-width: 48em){.single-content .hentry{margin-bottom:0}}.single-content .hentry .entry-figure{position:relative}.single-content .hentry .entry-figure img{width:100%;height:auto;border-top-left-radius:6px;border-top-right-radius:6px}.single-content .hentry .entry-figure .entry-figure-caption{padding:.25em 1em;color:#888}@media screen and (min-width: 25em){.single-content .hentry .entry-figure .entry-figure-caption{position:absolute;bottom:0;padding:.5em 1.5em;background-color:rgba(255,255,255,0.5);color:inherit}}.single-content .hentry .entry-inner{padding:1em}@media print, screen and (min-width: 64em){.single-content .hentry .entry-inner{padding:2.5em 4em}}.single-content .hentry .entry-inner .fa-calendar{margin-right:.5em}.single-content .hentry .entry-inner .full-date{margin-bottom:.5em}@media print, screen and (min-width: 64em){.single-content .hentry .entry-inner .full-date{margin-bottom:1.25em}}.single-content .hentry .full-date{margin-bottom:1em;color:#888;font-weight:bold}.single-content .hentry .entry-meta .entry-tag{margin-top:.25em;color:#888;font-weight:700}@media print, screen and (min-width: 64em){.single-content .hentry .entry-meta .entry-tag{display:block}}.single-content .hentry .entry-meta .entry-tag a{color:#7097AB;font-size:.85em;letter-spacing:0.05em;text-transform:uppercase}.single-case .content-wrap{max-width:1280px}.single-case .lead{color:#444;font-size:1em;font-weight:500}.single-case .case-logo{margin-bottom:2em}@media print, screen and (min-width: 64em){.single-case .case-logo{margin-bottom:4em}}.single-case .case-info-container{margin-bottom:2em;font-size:.94em}.single-case .case-info-title{font-size:1.2em;font-weight:500;text-transform:uppercase}.single-case .case-website,.single-case .case-incubation-phase{font-size:1.066em;font-weight:700}.single-case .case-info-group{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:1em}.single-case .case-info-group .case-info-group-icon{width:2em}.single-case .case-info-group .contact-person{margin-bottom:1em}.single-case .case-info-group .contact-person .person-name{margin:0;font-size:0.93333em;font-weight:700}.single-case .tweets{padding:2em 0}@media print, screen and (min-width: 64em){.single-case .tweets{padding:3.5em 0}}.single-case .related-news .hentry{margin-bottom:2em;background-color:transparent}.single-case .related-news .hentry::after{content:'';display:table;clear:both}.single-case .related-news .hentry .entry-figure{float:left;clear:none;text-align:inherit;width:38.2%;margin-left:0%;margin-right:3%}.single-case .related-news .hentry .entry-figure::after{content:'';display:table;clear:both}.single-case .related-news .hentry .entry-figure:last-child{margin-right:0%}.single-case .related-news .hentry .entry-figure img{border-radius:0}.single-case .related-news .hentry .article-fields{float:left;clear:none;text-align:inherit;width:58.8%;margin-left:0%;margin-right:3%}.single-case .related-news .hentry .article-fields::after{content:'';display:table;clear:both}.single-case .related-news .hentry .article-fields:last-child{margin-right:0%}.single-case .related-news .entry-meta{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;font-size:0.8em;font-weight:600;text-transform:uppercase}@media print, screen and (min-width: 64em){.single-case .related-news .entry-meta{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.single-case .related-news .entry-meta .entry-meta-item{margin-right:1em}}.single-case .related-news .entry-meta .entry-tag{font-weight:700}.single-post .hentry .entry-date{position:absolute;top:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0.6em 0.8em;border-top-left-radius:6px;background-color:#A6CE39;color:#fff;text-align:center}@media screen and (min-width: 48em) and (max-width: 63.99875em){.single-post .hentry .entry-date{top:unset;bottom:0;width:4em;background:transparent}}.single-post .hentry .entry-date .entry-day{color:#222;font-size:1.2em;font-weight:600}@media screen and (min-width: 48em) and (max-width: 63.99875em){.single-post .hentry .entry-date .entry-day{color:#fff}}.single-post .hentry .entry-date .entry-month{font-size:1em;font-weight:700;text-transform:uppercase}.page-template-incubation-process .page-header{padding-bottom:1.5em}.page-template-incubation-process .incubation-process-page-list{display:none}@media print, screen and (min-width: 48em){.page-template-incubation-process .incubation-process-page-list{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;width:98%;max-width:1140px;margin:0 auto;-webkit-transform:translateY(50%);-ms-transform:translateY(50%);transform:translateY(50%)}}.page-template-incubation-process .incubation-process-page-select{-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:2em;border-radius:0}@media print, screen and (min-width: 48em){.page-template-incubation-process .incubation-process-page-select{display:none}}.page-template-incubation-process .incubation-process-page-select span{margin-right:1em;font-size:1.25em}.page-template-incubation-process .incubation-process-page-select .process-page-select{margin:0}.page-template-incubation-process .main-content{border-radius:6px;background-color:#fff}.page-template-incubation-process .content-wrapper{border-radius:6px;background-color:#fff}@media screen and (min-width: 75em){.page-template-incubation-process .content-wrapper{margin-bottom:4em}}.page-template-incubation-process .content-wrapper>*{margin-top:0;margin-bottom:0;padding:2em}@media print, screen and (min-width: 48em){.page-template-incubation-process .content-wrapper>*{padding:4em 8em}}.page-template-incubation-process .content-inner .card .entry-figure-link{height:250px}@media print, screen and (min-width: 48em){.page-template-incubation-process .content-inner .card .entry-figure-link{height:150px}}@media print, screen and (min-width: 64em){.page-template-incubation-process .content-inner .card .entry-figure-link{height:175px}}.page-template-incubation-process .main-entry{position:relative;width:100%;max-width:1080px;margin-right:auto;margin-left:auto;padding-top:4em}@media screen and (min-width: 75em){.page-template-incubation-process .main-entry{padding-top:6em}}.page-template-incubation-process .main-entry .entry-title{position:relative;font-size:2.488em}.page-template-incubation-process .main-entry .entry-title span{color:#A6CE39}@media screen and (max-width: 63.99875em){.page-template-incubation-process .main-entry .entry-title span{display:inline-block;margin-right:.25em;float:left}}@media print, screen and (min-width: 64em){.page-template-incubation-process .main-entry .entry-title span{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:-2em}}.page-template-incubation-process .process-duration{margin-bottom:1.5em;color:#888;font-size:1.2em;font-weight:600}.page-template-incubation-process .incubation-process-adjacent-link{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);font-size:4em}.page-template-incubation-process .incubation-process-next{right:.5em}@media screen and (min-width: 75em){.page-template-incubation-process .incubation-process-next{right:0}}.page-template-incubation-process .incubation-process-previous{left:.5em}@media screen and (min-width: 75em){.page-template-incubation-process .incubation-process-previous{left:0}}.page-template-incubation-process .mobile-navigation-arrows{position:relative;padding:4em 0;background-color:#f5f5f5}@media print, screen and (min-width: 48em){.page-template-incubation-process .mobile-navigation-arrows{display:none}}.page-template-incubation-process .mobile-navigation-arrows .incubation-process-adjacent-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.page-template-incubation-process .mobile-navigation-arrows .arrow-title{margin-top:.15em;color:#555;font-size:1rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}@media screen and (min-width: 22.5em){.page-template-incubation-process .mobile-navigation-arrows .arrow-title{font-size:1.2rem}}.page-template-incubation-process .mobile-navigation-arrows .incubation-process-previous .arrow-title{margin-left:.5em}.page-template-incubation-process .mobile-navigation-arrows .incubation-process-next .arrow-title{margin-right:.5em}.archive .entry-figure-link,.archive .entry-figure{height:220px}.archive .entry-figure-link{-webkit-box-flex:0;-ms-flex:0;flex:0}.archive .entry-figure{background-position:center center;background-size:cover}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJiYXNlL19mb3VuZGF0aW9uLXNldHRpbmdzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZmxleC1ncmlkLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiYmFzZS9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLXRoZW1lLnNjc3MiLCJiYXNlL19hY2Nlc3NpYmxpdHkuc2NzcyIsImJhc2UvX2ZpZ3VyZS5zY3NzIiwiZmVhdHVyZXMvX21haWxjaGltcC5zY3NzIiwiYmFzZS9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1pZnJhbWVzLnNjc3MiLCJjb21wb25lbnRzL19wYWdlLWhlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiYmFzZS9faGVscGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2plZXQvc2Nzcy9fZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9fZW50cnktbWV0YS5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLWZvcm0uc2NzcyIsImNvbXBvbmVudHMvX2FjdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX3JlYWQtbW9yZS5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsImNvbXBvbmVudHMvX2luY3ViYXRpb24tcHJvY2Vzcy1wYWdlLWxpc3Quc2NzcyIsImNvbXBvbmVudHMvX3N0aWNreS1tZW51LnNjc3MiLCJjb21wb25lbnRzL19jb29raWUtbm90aWNlLnNjc3MiLCJjb21wb25lbnRzL19jYXNlcy1jb250YWluZXIuc2NzcyIsImNvbXBvbmVudHMvX3BlcnNvbnMtc2hvcnRjb2RlLnNjc3MiLCJsYXlvdXQvX3R5cG9ncmFwaHkuc2NzcyIsImxheW91dC9fc2l0ZS1pbm5lci5zY3NzIiwibGF5b3V0L19zaXRlLWNvbnRlbnQuc2NzcyIsImxheW91dC9fY29udGVudF93cmFwcGVyLnNjc3MiLCJsYXlvdXQvX3NpdGUtaGVhZGVyLnNjc3MiLCJsYXlvdXQvX3NpdGUtcHJpbWFyeS1uYXZpZ2F0aW9uLnNjc3MiLCJjb21wb25lbnRzL19mb250LWF3ZXNvbWUuc2NzcyIsImNvbXBvbmVudHMvX2J1cmdlci5zY3NzIiwibGF5b3V0L19zaXRlLXNlY29uZGFyeS1uYXZpZ2F0aW9uLnNjc3MiLCJsYXlvdXQvX3NpdGUtc2lkZWJhci5zY3NzIiwibGF5b3V0L19zaXRlLWZvb3Rlci5zY3NzIiwiZmVhdHVyZXMvX2hlcm8uc2NzcyIsImZlYXR1cmVzL193aGF0cy1oYXBwZW5pbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9qZWV0L3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwiZmVhdHVyZXMvX3R3ZWV0cy5zY3NzIiwiZmVhdHVyZXMvX3BhcnRuZXJzLnNjc3MiLCJmZWF0dXJlcy9fcmVsYXRlZC1wZXJzb25zLnNjc3MiLCJmZWF0dXJlcy9fc3RyaXBlLnNjc3MiLCJmZWF0dXJlcy9fc3VjY2Vzcy1zdG9yaWVzLnNjc3MiLCJmZWF0dXJlcy9faW5jdWJhdGlvbi1wcm9jZXNzLnNjc3MiLCJmZWF0dXJlcy9fZmFjZWJvb2suc2NzcyIsImZlYXR1cmVzL19pbnN0YWdyYW0uc2NzcyIsImZlYXR1cmVzL19zaW5nbGUtZXZlbnQuc2NzcyIsImZlYXR1cmVzL2Nhc2VzLnNjc3MiLCJ2aWV3cy9fc2VhcmNoLnNjc3MiLCJ2aWV3cy9fc2luZ2xlLnNjc3MiLCJ2aWV3cy9fc2luZ2xlLWNhc2Uuc2NzcyIsInZpZXdzL19zaW5nbGUtcG9zdC5zY3NzIiwidmlld3MvX3NpbmdsZS1pbmN1YmF0aW9uLXByb2Nlc3Muc2NzcyIsInZpZXdzL19hcmNoaXZlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0UsNEVBQTRFLEtBUzFFLGlCQUNBLDZCQUE4QixDQUMvQixLQVFDLFFBQVMsQ0FDVixHQU1DLGNBQ0EsZUFBZ0IsQ0FDakIsR0FTQywrQkFBQSxBQUNBLHVCQUFBLFNBQ0EsZ0JBQWlCLENBQ2xCLElBTUMsaUNBQ0EsYUFBYyxDQUNmLEVBUUMsNEJBQTZCLENBQzlCLFlBTUMsbUJBQ0EsMEJBQ0EseUNBQUEsQUFBaUMsZ0NBQUEsQ0FDbEMsU0FNQyxrQkFBbUIsQ0FDcEIsY0FRQyxpQ0FDQSxhQUFjLENBQ2YsTUFLQyxhQUFjLENBQ2YsUUFPQyxjQUNBLGNBQ0Esa0JBQ0EsdUJBQXdCLENBQ3pCLElBR0MsY0FBZSxDQUNoQixJQUdDLFVBQVcsQ0FDWixJQVFDLGlCQUFrQixDQUNuQixzQ0FhQyxvQkFDQSxlQUNBLGlCQUNBLFFBQVMsQ0FDVixhQU9DLGdCQUFpQixDQUNsQixjQU9DLG1CQUFvQixDQUNyQixzREFRQyx5QkFBMEIsQ0FDM0IsOEhBUUMsa0JBQ0EsU0FBVSxDQUNYLGtIQVFDLDZCQUE4QixDQUMvQixTQUtDLDZCQUE4QixDQUMvQixPQVFDLDhCQUFBLEFBQ0Esc0JBQUEsY0FDQSxjQUNBLGVBQ0EsVUFDQSxrQkFBbUIsQ0FDcEIsU0FLQyx1QkFBd0IsQ0FDekIsU0FLQyxhQUFjLENBQ2YsaUNBT0MsOEJBQUEsQUFDQSxzQkFBQSxTQUFVLENBQ1gsc0ZBTUMsV0FBWSxDQUNiLGdCQU1DLDZCQUNBLG1CQUFvQixDQUNyQiwyQ0FLQyx1QkFBd0IsQ0FDekIsNkJBTUMsMEJBQ0EsWUFBYSxDQUNkLFFBUUMsYUFBYyxDQUNmLFFBS0MsaUJBQWtCLENBQ25CLFNBUUMsWUFBYSxDQUNkLFNBS0MsWUFBYSxDQUNkLGVDM0lDLHFGQUFnRCxDRG5JbEQsS0N1SUUsOEJBQUEsQUFDQSxzQkFBQSxjQ2pHbUIsQ0RrR3BCLHFCQU1DLDJCQUFBLEFBQW1CLGtCQUFBLENEcklyQixLQzBJRSxTQUNBLFVBRUEsbUJBRUEsZ0NBQ0EsbUJBQ0EsZ0JBQ0EsY0FHRSxtQ0FDQSxpQ0FBa0MsQ0RyRHRDLElDMkRFLHFCQUNBLHNCQUdBLGVBQ0EsWUFDQSw4QkFBK0IsQ0Q0QmpDLFNDdkJFLFlBQ0EsZ0JBQ0EsZUNySGEsQ0RzSGQsT0FJQyw4QkFBQSxBQUNBLHNCQUFBLFdBQ0EsZUM1SGEsQ0Q2SGQsNkdBU0cseUJBQTBCLENBQzNCLE9BTUQsVUFDQSx3QkFBQSxBQUNBLHFCQURBLEFBQ0EsZ0JBQUEsU0FDQSxnQkFDQSx1QkFDQSxjQUNBLFdBdkd1QixDQXdHeEIsZ0NFakJDLFNBQVUsQ0FDWCxJRm9CQyxhQUFjLENEakdoQixzQ0MwR0UsbUJBQW9CLENBQ3JCLFlBSUMsd0JBQXlCLENBQzFCLFdBR0MsdUJBQXdCLENBQ3pCLEtHakpELGdCQzNERSxrQkFDQSxpQkFJQSxvQkFBQSxBQUNBLG9CQURBLEFBQ0EsYUFBQSw4QkFBQSxBQWxCbUIsNkJBa0JuQixBQWxCbUIsdUJBa0JuQixBQWxCbUIsa0JBQUEsQ0FxR3JCLFVEM0NFLHNCQUNBLG9CQUgrRCxDRW9GN0QsMkNEdkNKLFVEM0NFLHNCQUNBLG9CQUgrRCxDQ3dEOUQsQ0M0QkMsMkNEdkNKLFVEM0NFLHVCQUNBLHFCQUgrRCxDQ3dEOUQsQ0M0QkMsMkNEdkNKLFVEM0NFLHVCQUNBLHFCQUgrRCxDQ3dEOUQsQ0NpQ0Msb0NENUNKLFVEM0NFLHVCQUNBLHFCQUgrRCxDQ3dEOUQsQ0NpQ0Msb0NENUNKLFVEM0NFLHVCQUNBLHFCQUgrRCxDQ3dEOUQsQ0FYSCxtQkFRTSxlQUNBLGFBQWMsQ0FUcEIsY0Q5QkEsY0FIYSxDQ2lDYixtQkFrQk0sa0JBQ0EsZ0JBQWlCLENBbkJ2Qix5QkQ5QkEsY0FIYSxDQ2lDYiw2Q0V6R0UsZ0JBQ0EsY0NzRVMsQ0hrQ1gsOEVBcUNJLGVBQ0EsYUFBYyxDQUNmLGlCQWxESCxtQkFBQSxBRTlGRSxpQkY4RkYsQUU5RkUsYUFBQSxzQkFDQSxxQkZrRUEsV0FBWSxDQzZFViwyQ0RJSixpQkVwSkUsdUJBQ0EscUJBSHFDLENGd0p0QyxDQUlELGlDQUNFLFdBQ0EsYUFBYyxDQUNmLDJDQUlDLGVBQ0EsY0FDQSxnQkFDQSxjQUFlLENBQ2hCLFNBTUssbUJBQUEsQUFDQSxzQkFEQSxBQUNBLGtCQUFBLGtCSXJLK0MsQ0pzS2hELGdCS2pJTCxjRHhDZ0MsQ0pzSzVCLFNBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELGdCS2pJTCxvQkRyQ3FELENKbUtqRCxTQUNFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFJcksrQyxDSnNLaEQsZ0JLaklMLHFCRHJDcUQsQ0ptS2pELFNBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELGdCS2pJTCxlRHJDcUQsQ0ptS2pELFNBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELGdCS2pJTCxxQkRyQ3FELENKbUtqRCxTQUNFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFJcksrQyxDSnNLaEQsZ0JLaklMLHFCRHJDcUQsQ0ptS2pELFNBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELGdCS2pJTCxlRHJDcUQsQ0ptS2pELFNBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELGdCS2pJTCxxQkRyQ3FELENKbUtqRCxTQUNFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFJcksrQyxDSnNLaEQsZ0JLaklMLHFCRHJDcUQsQ0ptS2pELFVBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELGdCS2pJTCxlRHJDcUQsQ0ptS2pELFVBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0Esa0JBREEsQUFDQSxjQUFBLGNJcksrQyxDSnNLaEQsaUJLaklMLHFCRHJDcUQsQ0o2S2hELFlBckdMLG1CQUFBLEFBQWUsY0FBQSxDQUVmLHlDQUdFLG1CQUFBLEFBQ0Esa0JBREEsQUFDQSxjQUFBLGNBSHNCLENBSXZCLFlBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYseUNBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsWUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZix5Q0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLFlBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYseUNBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsWUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZix5Q0FHRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhQUhzQixDQUl2QixZQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLHlDQUdFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQkFIc0IsQ0FJdkIsWUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZix5Q0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLFlBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYseUNBR0UsbUJBQUEsQUFDQSxtQkFEQSxBQUNBLGVBQUEsZUFIc0IsQ0FJdkIsaURFdEZDLGdCQUNBLGNDc0VTLENIK0ltQyxxREV0TjVDLHNCQUNBLG9CQUhxQyxDRGtKbkMsMkNEMEJBLFlBQ0UsbUJBQUEsQUFDQSxzQkFEQSxBQUNBLGtCQUFBLGtCSXJLK0MsQ0pzS2hELG1CS2pJTCxjRHhDZ0MsQ0pzSzVCLFlBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELG1CS2pJTCxvQkRyQ3FELENKbUtqRCxZQUNFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFJcksrQyxDSnNLaEQsbUJLaklMLHFCRHJDcUQsQ0ptS2pELFlBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELG1CS2pJTCxlRHJDcUQsQ0ptS2pELFlBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELG1CS2pJTCxxQkRyQ3FELENKbUtqRCxZQUNFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFJcksrQyxDSnNLaEQsbUJLaklMLHFCRHJDcUQsQ0ptS2pELFlBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELG1CS2pJTCxlRHJDcUQsQ0ptS2pELFlBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELG1CS2pJTCxxQkRyQ3FELENKbUtqRCxZQUNFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFJcksrQyxDSnNLaEQsbUJLaklMLHFCRHJDcUQsQ0ptS2pELGFBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELG1CS2pJTCxlRHJDcUQsQ0ptS2pELGFBQ0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CSXJLK0MsQ0pzS2hELG9CS2pJTCxxQkRyQ3FELENKbUtqRCxhQUNFLG1CQUFBLEFBQ0Esa0JBREEsQUFDQSxjQUFBLGNJcksrQyxDSnNLaEQsb0JLaklMLHFCRHJDcUQsQ0o2S2hELGVBckdMLG1CQUFBLEFBQWUsY0FBQSxDQUVmLCtDQUdFLG1CQUFBLEFBQ0Esa0JBREEsQUFDQSxjQUFBLGNBSHNCLENBSXZCLGVBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsK0NBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsZUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiwrQ0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLGVBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsK0NBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsZUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiwrQ0FHRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhQUhzQixDQUl2QixlQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLCtDQUdFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQkFIc0IsQ0FJdkIsZUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiwrQ0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLGVBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsK0NBR0UsbUJBQUEsQUFDQSxtQkFEQSxBQUNBLGVBQUEsZUFIc0IsQ0FJdkIsQ0MwREcsaUVEaURFLGlCQUNFLG1CQUFBLEFBNUpNLGlCQTRKTixBQTVKTSxZQUFBLENBNkpQLENBS0QsNkRBRUksbUJBQUEsQUFBMkIsa0JBQTNCLEFBQTJCLGFBQUEsQ0MxRGpDLDJDRHdERSw2REFLTSxtQkFBQSxBQXZLRSxpQkF1S0YsQUF2S0UsWUFBQSxDQXlLTCxDQy9ETCwyQ0RxRUYsdURFck5BLGdCQUNBLGNDc0VTLENIK0ltQywyREV0TjVDLHNCQUNBLG9CQUhxQyxDRjROZ0IsQ0MxRW5ELDJDRDBCQSxVQUNFLG1CQUFBLEFBQ0Esc0JBREEsQUFDQSxrQkFBQSxrQklySytDLENKc0toRCxpQktqSUwsY0R4Q2dDLENKc0s1QixVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsb0JEckNxRCxDSm1LakQsVUFDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsZURyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwscUJEckNxRCxDSm1LakQsVUFDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsZURyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwscUJEckNxRCxDSm1LakQsVUFDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsZURyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwscUJEckNxRCxDSm1LakQsV0FDRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjSXJLK0MsQ0pzS2hELGtCS2pJTCxxQkRyQ3FELENKNktoRCxhQXJHTCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiwyQ0FHRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjQUhzQixDQUl2QixhQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDJDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLGFBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsMkNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixhQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDJDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLGFBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsMkNBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsYUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiwyQ0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLGFBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsMkNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixhQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDJDQUdFLG1CQUFBLEFBQ0EsbUJBREEsQUFDQSxlQUFBLGVBSHNCLENBSXZCLENDMERHLGlFRGlERSxlQUNFLG1CQUFBLEFBNUpNLGlCQTRKTixBQTVKTSxZQUFBLENBNkpQLENBS0QseURBRUksbUJBQUEsQUFBMkIsa0JBQTNCLEFBQTJCLGFBQUEsQ0MxRGpDLDJDRHdERSx5REFLTSxtQkFBQSxBQXZLRSxpQkF1S0YsQUF2S0UsWUFBQSxDQXlLTCxDQy9ETCwyQ0RxRUYsbURFck5BLGdCQUNBLGNDc0VTLENIK0ltQyx1REV0TjVDLHVCQUNBLHFCQUhxQyxDRjROZ0IsQ0MxRW5ELDJDRDBCQSxTQUNFLG1CQUFBLEFBQ0Esc0JBREEsQUFDQSxrQkFBQSxrQklySytDLENKc0toRCxnQktqSUwsY0R4Q2dDLENKc0s1QixTQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxnQktqSUwsb0JEckNxRCxDSm1LakQsU0FDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGdCS2pJTCxxQkRyQ3FELENKbUtqRCxTQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxnQktqSUwsZURyQ3FELENKbUtqRCxTQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxnQktqSUwscUJEckNxRCxDSm1LakQsU0FDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGdCS2pJTCxxQkRyQ3FELENKbUtqRCxTQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxnQktqSUwsZURyQ3FELENKbUtqRCxTQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxnQktqSUwscUJEckNxRCxDSm1LakQsU0FDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGdCS2pJTCxxQkRyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxnQktqSUwsZURyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwscUJEckNxRCxDSm1LakQsVUFDRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKNktoRCxZQXJHTCxtQkFBQSxBQUFlLGNBQUEsQ0FFZix5Q0FHRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjQUhzQixDQUl2QixZQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLHlDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLFlBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYseUNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixZQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLHlDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLFlBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYseUNBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsWUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZix5Q0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLFlBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYseUNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixZQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLHlDQUdFLG1CQUFBLEFBQ0EsbUJBREEsQUFDQSxlQUFBLGVBSHNCLENBSXZCLENDMERHLGlFRGlERSxjQUNFLG1CQUFBLEFBNUpNLGlCQTRKTixBQTVKTSxZQUFBLENBNkpQLENBS0QsdURBRUksbUJBQUEsQUFBMkIsa0JBQTNCLEFBQTJCLGFBQUEsQ0MxRGpDLDJDRHdERSx1REFLTSxtQkFBQSxBQXZLRSxpQkF1S0YsQUF2S0UsWUFBQSxDQXlLTCxDQy9ETCwyQ0RxRUYsaURFck5BLGdCQUNBLGNDc0VTLENIK0ltQyxxREV0TjVDLHVCQUNBLHFCQUhxQyxDRjROZ0IsQ0NyRW5ELG9DRHFCQSxVQUNFLG1CQUFBLEFBQ0Esc0JBREEsQUFDQSxrQkFBQSxrQklySytDLENKc0toRCxpQktqSUwsY0R4Q2dDLENKc0s1QixVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsb0JEckNxRCxDSm1LakQsVUFDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsZURyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwscUJEckNxRCxDSm1LakQsVUFDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsZURyQ3FELENKbUtqRCxVQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwscUJEckNxRCxDSm1LakQsVUFDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGlCS2pJTCxxQkRyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxpQktqSUwsZURyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwscUJEckNxRCxDSm1LakQsV0FDRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjSXJLK0MsQ0pzS2hELGtCS2pJTCxxQkRyQ3FELENKNktoRCxhQXJHTCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiwyQ0FHRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjQUhzQixDQUl2QixhQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDJDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLGFBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsMkNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixhQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDJDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLGFBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsMkNBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsYUFQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiwyQ0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLGFBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsMkNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixhQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDJDQUdFLG1CQUFBLEFBQ0EsbUJBREEsQUFDQSxlQUFBLGVBSHNCLENBSXZCLENDK0RHLDBERDRDRSxlQUNFLG1CQUFBLEFBNUpNLGlCQTRKTixBQTVKTSxZQUFBLENBNkpQLENBS0QseURBRUksbUJBQUEsQUFBMkIsa0JBQTNCLEFBQTJCLGFBQUEsQ0NyRGpDLG9DRG1ERSx5REFLTSxtQkFBQSxBQXZLRSxpQkF1S0YsQUF2S0UsWUFBQSxDQXlLTCxDQzFETCxvQ0RnRUYsbURFck5BLGdCQUNBLGNDc0VTLENIK0ltQyx1REV0TjVDLHVCQUNBLHFCQUhxQyxDRjROZ0IsQ0NyRW5ELG9DRHFCQSxXQUNFLG1CQUFBLEFBQ0Esc0JBREEsQUFDQSxrQkFBQSxrQklySytDLENKc0toRCxrQktqSUwsY0R4Q2dDLENKc0s1QixXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwsb0JEckNxRCxDSm1LakQsV0FDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGtCS2pJTCxxQkRyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwsZURyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwscUJEckNxRCxDSm1LakQsV0FDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGtCS2pJTCxxQkRyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwsZURyQ3FELENKbUtqRCxXQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwscUJEckNxRCxDSm1LakQsV0FDRSxtQkFBQSxBQUNBLGlCQURBLEFBQ0EsYUFBQSxhSXJLK0MsQ0pzS2hELGtCS2pJTCxxQkRyQ3FELENKbUtqRCxZQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxrQktqSUwsZURyQ3FELENKbUtqRCxZQUNFLG1CQUFBLEFBQ0EsdUJBREEsQUFDQSxtQkFBQSxtQklySytDLENKc0toRCxtQktqSUwscUJEckNxRCxDSm1LakQsWUFDRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjSXJLK0MsQ0pzS2hELG1CS2pJTCxxQkRyQ3FELENKNktoRCxjQXJHTCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiw2Q0FHRSxtQkFBQSxBQUNBLGtCQURBLEFBQ0EsY0FBQSxjQUhzQixDQUl2QixjQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDZDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLGNBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsNkNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixjQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDZDQUdFLG1CQUFBLEFBQ0EsaUJBREEsQUFDQSxhQUFBLGFBSHNCLENBSXZCLGNBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsNkNBR0UsbUJBQUEsQUFDQSxpQkFEQSxBQUNBLGFBQUEsYUFIc0IsQ0FJdkIsY0FQRCxtQkFBQSxBQUFlLGNBQUEsQ0FFZiw2Q0FHRSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBSHNCLENBSXZCLGNBUEQsbUJBQUEsQUFBZSxjQUFBLENBRWYsNkNBR0UsbUJBQUEsQUFDQSx1QkFEQSxBQUNBLG1CQUFBLG1CQUhzQixDQUl2QixjQVBELG1CQUFBLEFBQWUsY0FBQSxDQUVmLDZDQUdFLG1CQUFBLEFBQ0EsbUJBREEsQUFDQSxlQUFBLGVBSHNCLENBSXZCLENDK0RHLDBERDRDRSxnQkFDRSxtQkFBQSxBQTVKTSxpQkE0Sk4sQUE1Sk0sWUFBQSxDQTZKUCxDQUtELDJEQUVJLG1CQUFBLEFBQTJCLGtCQUEzQixBQUEyQixhQUFBLENDckRqQyxvQ0RtREUsMkRBS00sbUJBQUEsQUF2S0UsaUJBdUtGLEFBdktFLFlBQUEsQ0F5S0wsQ0MxREwsb0NEZ0VGLHFERXJOQSxnQkFDQSxjQ3NFUyxDSCtJbUMseURFdE41Qyx1QkFDQSxxQkFIcUMsQ0Y0TmdCLENBS3ZELFFBQ0UsbUJBQUEsQUFDQSxrQkFEQSxBQUNBLGNBQUEsY0FBZSxDQUNoQixjRTVMQyxxQkM0QnFELENEMUJyRCwwQkFDRSxlQUFnQixDRHVHaEIsMkNEcUZKLGNFL0xFLHNCQzRCcUQsQ0QxQnJELDBCQUNFLGVBQWdCLENBQ2pCLENJVUQsWUNuQkYsdUJBQUEsQUFyRHlELG9CQXFEekQsQUFyRHlELDBCQUFBLENEd0V2RCxhQ25CRixxQkFBQSxBQXBEMEQsa0JBb0QxRCxBQXBEMEQsd0JBQUEsQ0R1RXhELGNDbkJGLHdCQUFBLEFBbkRrQixxQkFtRGxCLEFBbkRrQixzQkFBQSxDRHNFaEIsZUNuQkYseUJBQUEsQUFsRDBCLHNCQWtEMUIsQUFsRDBCLDZCQUFBLENEcUV4QixjQ25CRix5QkFBQSxBQWpEd0IsNEJBQUEsQ0RzRXJCLCtCQ3JCSCx1QkFBQSxBQXJEeUQsb0JBcUR6RCxBQXJEeUQsMEJBQUEsQ0QrRXZELGdDQzFCRixxQkFBQSxBQXBEMEQsa0JBb0QxRCxBQXBEMEQsd0JBQUEsQ0Q4RXhELGlDQzFCRix3QkFBQSxBQW5Ea0IscUJBbURsQixBQW5Ea0Isc0JBQUEsQ0RpRlgsV0M3QlAsd0JBQUEsQUExQ2lCLHFCQTBDakIsQUExQ2lCLHNCQUFBLENEZ0ZkLGdCQ3RCSCwwQkFBQSxBQTFEaUIscUJBQUEsQ0Q4RWYsY0NwQ0Ysc0JBQUEsQUF6Q2tCLG1CQXlDbEIsQUF6Q2tCLG9CQUFBLENEK0VmLG1CQ3RCSCx3QkFBQSxBQXpEa0IsbUJBQUEsQ0Q2RWhCLGNDcENGLHlCQUFBLEFBeENnQixzQkF3Q2hCLEFBeENnQixrQkFBQSxDRDhFYixtQkN0QkgsMkJBQUEsQUF4RGdCLGlCQUFBLENENEVkLGVDcENGLDBCQUFBLEFBdkNrQix1QkF1Q2xCLEFBdkNrQixtQkFBQSxDRDZFZixvQkN0QkgsNEJBQUEsQUF2RGtCLGtCQUFBLENEaUZmLHFCQzNDSCx3QkFBQSxBQUNBLHFCQURBLEFBQ0EsdUJBQUEseUJBQUEsQURnREUsc0JDaERGLEFEZ0RFLG1CQUFBLDBCQUFBLEFBQXFCLG9CQUFBLENBQ3RCLGVDM0JELDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osZUNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FDWixlQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGVDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osZUNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FDWixlQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDTHlEWiwyQ0t4REEsa0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osa0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osa0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osa0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osa0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osa0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBR1gsQ0xzREQsMkNLeERBLGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGdCQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUdYLENMc0RELDJDS3hEQSxlQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGVDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osZUNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FDWixlQ2hDSiw0QkFBQSxBRCtCZ0IsaUJDL0JoQixBRCtCZ0IsT0FBQSxDQUNaLGVDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osZUNoQ0osNEJBQUEsQUQrQmdCLGlCQy9CaEIsQUQrQmdCLE9BQUEsQ0FHWCxDTDJERCxvQ0s3REEsZ0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osZ0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osZ0JDaENKLDRCQUFBLEFEK0JnQixpQkMvQmhCLEFEK0JnQixPQUFBLENBQ1osZ0JDaENKLDRCQUFBLEFE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Q0FBRSIsImZpbGUiOiJmbG93LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBtaXhpbiBmb3VuZGF0aW9uLW5vcm1hbGl6ZSgpIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8vIERvY3VtZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cblxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxuICB9XG5cbiAgLy8gU2VjdGlvbnNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAvLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLy8gR3JvdXBpbmcgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gIC8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAvLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyAvLyAxXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy9cclxuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxyXG4vL1xyXG4vLyAgIDEuIEdsb2JhbFxyXG4vLyAgIDIuIEJyZWFrcG9pbnRzXHJcbi8vICAgMy4gVGhlIEdyaWRcclxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gICA2LiBBYmlkZVxyXG4vLyAgIDcuIEFjY29yZGlvblxyXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XHJcbi8vICAgOS4gQmFkZ2VcclxuLy8gIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAgMTEuIEJ1dHRvblxyXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAgMTMuIENhbGxvdXRcclxuLy8gIDE0LiBDYXJkXHJcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vICAxNi4gRHJpbGxkb3duXHJcbi8vICAxNy4gRHJvcGRvd25cclxuLy8gIDE4LiBEcm9wZG93biBNZW51XHJcbi8vICAxOS4gRm9ybXNcclxuLy8gIDIwLiBMYWJlbFxyXG4vLyAgMjEuIE1lZGlhIE9iamVjdFxyXG4vLyAgMjIuIE1lbnVcclxuLy8gIDIzLiBNZXRlclxyXG4vLyAgMjQuIE9mZi1jYW52YXNcclxuLy8gIDI1LiBPcmJpdFxyXG4vLyAgMjYuIFBhZ2luYXRpb25cclxuLy8gIDI3LiBQcm9ncmVzcyBCYXJcclxuLy8gIDI4LiBSZXNwb25zaXZlIEVtYmVkXHJcbi8vICAyOS4gUmV2ZWFsXHJcbi8vICAzMC4gU2xpZGVyXHJcbi8vICAzMS4gU3dpdGNoXHJcbi8vICAzMi4gVGFibGVcclxuLy8gIDMzLiBUYWJzXHJcbi8vICAzNC4gVGh1bWJuYWlsXHJcbi8vICAzNS4gVGl0bGUgQmFyXHJcbi8vICAzNi4gVG9vbHRpcFxyXG4vLyAgMzcuIFRvcCBCYXJcclxuXHJcbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC91dGlsJztcclxuXHJcbi8vIDEuIEdsb2JhbFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxNDQwKTtcclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XHJcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcclxuICAgICAgICBwcmltYXJ5OiAkY2xyLWdyZWVuLWRhcmssXHJcbiAgICAgICAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxyXG4gICAgICAgIHN1Y2Nlc3M6ICMzYWRiNzYsXHJcbiAgICAgICAgd2FybmluZzogI2ZmYWUwMCxcclxuICAgICAgICBhbGVydDogI2NjNGIzNyxcclxuKTtcclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XHJcbiRtZWRpdW0tZ3JheTogI2NhY2FjYTtcclxuJGRhcmstZ3JheTogIzhhOGE4YTtcclxuJGJsYWNrOiAjMGEwYTBhO1xyXG4kd2hpdGU6ICNmZWZlZmU7XHJcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xyXG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xyXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcclxuJGdsb2JhbC1tYXJnaW46IDFyZW07XHJcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XHJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XHJcbiRnbG9iYWwtcmFkaXVzOiAwO1xyXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XHJcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcclxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xyXG5cclxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xyXG5cclxuLy8gMi4gQnJlYWtwb2ludHNcclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRicmVha3BvaW50czogKFxyXG4gICAgICAgIHNtYWxsOiAwLFxyXG4gICAgICAgIHNtYWxsaXNoOiA0ODBweCxcclxuICAgICAgICBtZWRpdW06IDc2OHB4LFxyXG4gICAgICAgIGxhcmdlOiAxMDI0cHgsXHJcbiAgICAgICAgeGxhcmdlOiAxMjAwcHgsXHJcbiAgICAgICAgeHhsYXJnZTogMTQ0MHB4LFxyXG4pO1xyXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBzbWFsbGlzaCBtZWRpdW0gbGFyZ2UgeGxhcmdlIHh4bGFyZ2UpO1xyXG5cclxuLy8gMy4gVGhlIEdyaWRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcclxuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxyXG4gICAgICAgIHNtYWxsOiAyMHB4LFxyXG4gICAgICAgIG1lZGl1bTogMzBweCxcclxuKTtcclxuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XHJcbiRibG9jay1ncmlkLW1heDogODtcclxuXHJcbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xyXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xyXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XHJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuJGhlYWRlci1zdHlsZXM6IChcclxuICAgICAgICBzbWFsbDogKFxyXG4gICAgICAgICAgICAgICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXHJcbiAgICAgICAgICAgICAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcclxuICAgICAgICAgICAgICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxyXG4gICAgICAgICAgICAgICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXHJcbiAgICAgICAgICAgICAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcclxuICAgICAgICAgICAgICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxyXG4gICAgICAgICksXHJcbiAgICAgICAgbWVkaXVtOiAoXHJcbiAgICAgICAgICAgICAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcclxuICAgICAgICAgICAgICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxyXG4gICAgICAgICAgICAgICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXHJcbiAgICAgICAgICAgICAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcclxuICAgICAgICAgICAgICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxyXG4gICAgICAgICAgICAgICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXHJcbiAgICAgICAgKSxcclxuKTtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kc21hbGwtZm9udC1zaXplOiA4MCU7XHJcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuJGNvZGUtY29sb3I6ICRibGFjaztcclxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XHJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XHJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xyXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xyXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XHJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XHJcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xyXG4kYmxvY2txdW90ZS1jb2xvcjogJGJsYWNrO1xyXG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xyXG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcclxuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcclxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XHJcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xyXG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XHJcblxyXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4xO1xyXG4kbGVhZC1saW5laGVpZ2h0OiAxLjQ7XHJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XHJcblxyXG4vLyA2LiBBYmlkZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGFiaWRlLWlucHV0czogdHJ1ZTtcclxuJGFiaWRlLWxhYmVsczogdHJ1ZTtcclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuXHJcbi8vIDcuIEFjY29yZGlvblxyXG4vLyAtLS0tLS0tLS0tLS1cclxuXHJcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XHJcblxyXG4vLyA4LiBBY2NvcmRpb24gTWVudVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcclxuXHJcbi8vIDkuIEJhZGdlXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xyXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XHJcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XHJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcclxuXHJcbi8vIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XHJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDogdHJ1ZTtcclxuXHJcbi8vIDExLiBCdXR0b25cclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbi1wYWRkaW5nOiAwLjZlbSAxLjVlbTtcclxuJGJ1dHRvbi1tYXJnaW46IDA7XHJcbiRidXR0b24tZmlsbDogc29saWQ7XHJcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcclxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xyXG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRidXR0b24tc2l6ZXM6IChcclxuICAgICAgICB0aW55OiAwLjZyZW0sXHJcbiAgICAgICAgc21hbGw6IDAuNzVyZW0sXHJcbiAgICAgICAgZGVmYXVsdDogMC45cmVtLFxyXG4gICAgICAgIGxhcmdlOiAxLjI1cmVtLFxyXG4pO1xyXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xyXG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xyXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XHJcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcclxuXHJcbi8vIDEzLiBDYWxsb3V0XHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xyXG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XHJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xyXG5cclxuLy8gMTQuIENhcmRcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRjYXJkLXNoYWRvdzogbm9uZTtcclxuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcclxuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDE1LiBDbG9zZSBCdXR0b25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XHJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxyXG4gICAgICAgIHNtYWxsOiAwLjY2cmVtLFxyXG4gICAgICAgIG1lZGl1bTogMXJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxyXG4gICAgICAgIHNtYWxsOiAwLjMzZW0sXHJcbiAgICAgICAgbWVkaXVtOiAwLjVyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXHJcbiAgICAgICAgc21hbGw6IDEuNWVtLFxyXG4gICAgICAgIG1lZGl1bTogMmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcclxuXHJcbi8vIDE2LiBEcmlsbGRvd25cclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xyXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xyXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuXHJcbi8vIDE3LiBEcm9wZG93blxyXG4vLyAtLS0tLS0tLS0tLS1cclxuXHJcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xyXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcclxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRkcm9wZG93bi1zaXplczogKFxyXG4gICAgICAgIHRpbnk6IDEwMHB4LFxyXG4gICAgICAgIHNtYWxsOiAyMDBweCxcclxuICAgICAgICBsYXJnZTogNDAwcHgsXHJcbik7XHJcblxyXG4vLyAxOC4gRHJvcGRvd24gTWVudVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xyXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XHJcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDE5LiBGb3Jtc1xyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XHJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XHJcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XHJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xyXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGlucHV0LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XHJcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcclxuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xyXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XHJcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XHJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIwLiBMYWJlbFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XHJcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcclxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIxLiBNZWRpYSBPYmplY3RcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xyXG5cclxuLy8gMjIuIE1lbnVcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRtZW51LW1hcmdpbjogMDtcclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbTtcclxuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XHJcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRtZW51LWJvcmRlcjogJGxpZ2h0LWdyYXk7XHJcblxyXG4vLyAyMy4gTWV0ZXJcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xyXG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XHJcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XHJcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xyXG5cclxuLy8gMjQuIE9mZi1jYW52YXNcclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRvZmZjYW52YXMtc2l6ZTogMjUwcHg7XHJcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZTogMjUwcHg7XHJcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTtcclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTA7XHJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTtcclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcclxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XHJcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XHJcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XHJcblxyXG4vLyAyNS4gT3JiaXRcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xyXG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcclxuXHJcbi8vIDI2LiBQYWdpbmF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xyXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xyXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xyXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcclxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xyXG5cclxuLy8gMjcuIFByb2dyZXNzIEJhclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xyXG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xyXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcclxuICAgICAgICBkZWZhdWx0OiA0IGJ5IDMsXHJcbiAgICAgICAgd2lkZXNjcmVlbjogMTYgYnkgOSxcclxuKTtcclxuXHJcbi8vIDI5LiBSZXZlYWxcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xyXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xyXG5cclxuLy8gMzAuIFNsaWRlclxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XHJcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XHJcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAzMS4gU3dpdGNoXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcclxuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XHJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xyXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gMzIuIFRhYmxlXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcclxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XHJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XHJcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XHJcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtc3RyaXBlOiBldmVuO1xyXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XHJcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xyXG5cclxuLy8gMzMuIFRhYnNcclxuLy8gLS0tLS0tLS1cclxuXHJcbiR0YWItbWFyZ2luOiAwO1xyXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xyXG4kdGFiLWV4cGFuZC1tYXg6IDY7XHJcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xyXG5cclxuLy8gMzQuIFRodW1ibmFpbFxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcclxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcclxuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XHJcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMzUuIFRpdGxlIEJhclxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xyXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcclxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XHJcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XHJcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XHJcblxyXG4vLyAzNi4gVG9vbHRpcFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XHJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAzNy4gVG9wIEJhclxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XHJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XHJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xyXG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xyXG5cclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGZvciB0aGlzIHJvdy4gSWYgc2V0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpLCB0aGUgZ2xvYmFsIGNvbHVtbiBjb3VudCB3aWxsIGJlIHVzZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IGJhc2ljIHN0eWxlcyBmcm9tIGJlaW5nIG91dHB1dC4gVXNlZnVsIGlmIHlvdSdyZSBjYWxsaW5nIHRoaXMgbWl4aW4gb24gdGhlIHNhbWUgZWxlbWVudCB0d2ljZSwgYXMgaXQgcHJldmVudHMgZHVwbGljYXRlIENTUyBvdXRwdXQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBoYXZlIHJvdyB3cmFwcGluZyBiZWhhdmlvciBzZXQgdG8gbm93cmFwXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmFzZTogdHJ1ZSxcbiAgJHdyYXA6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgJHdyYXA7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zLCAkYmFzZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBgZmxleGAgcHJvcGVydHkgZm9yIGEgZmxleCBncmlkIGNvbHVtbi4gSXQgYWNjZXB0cyBhbGwgb2YgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBiYXNpYyBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIGFsb25nIHdpdGggdHdvIGV4dHJhczpcbi8vLyAgIC0gYGV4cGFuZGAgKHRoZSBkZWZhdWx0KSB3aWxsIG1ha2UgdGhlIGNvbHVtbiBleHBhbmQgdG8gZmlsbCBzcGFjZS5cbi8vLyAgIC0gYHNocmlua2Agd2lsbCBtYWtlIHRoZSBjb2x1bW4gY29udHJhY3QsIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIGhvcml6b250YWwgc3BhY2UgaXQgbmVlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogZXhwYW5kKSB7XG4gICRmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuXG4gIEBpZiAkY29sdW1ucyA9PSBzaHJpbmsge1xuICAgICRmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAkY29sdW1ucyAhPSBleHBhbmQge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuLy8vIENyZWF0ZXMgYSBjb2x1bW4gZm9yIGEgZmxleCBncmlkLiBCeSBkZWZhdWx0LCB0aGUgY29sdW1uIHdpbGwgc3RyZXRjaCB0byB0aGUgZnVsbCB3aWR0aCBvZiBpdHMgY29udGFpbmVyLCBidXQgdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHNpemluZyBjbGFzc2VzLCBvciBieSB1c2luZyB0aGUgYHVuc3RhY2tgIGNsYXNzIG9uIHRoZSBwYXJlbnQgZmxleCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycyB3aWR0aC4gU2VlIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyYCBtaXhpbi5cbkBtaXhpbiBmbGV4LWdyaWQtY29sdW1uKFxuICAkY29sdW1uczogZXhwYW5kLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIC8vIEJhc2UgcHJvcGVydGllc1xuICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSgkY29sdW1ucyk7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBmaXhlcyByZWNlbnQgQ2hyb21lIHZlcnNpb24gbm90IGxpbWl0aW5nIGNoaWxkIHdpZHRoXG4gIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0OTM0NTg2L3doaXRlLXNwYWNlLW5vd3JhcC1hbmQtZmxleGJveC1kaWQtbm90LXdvcmstaW4tY2hyb21lXG4gIEBpZiAkY29sdW1ucyA9PSBleHBhbmQge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGJsb2NrIGdyaWQgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBjb2x1bW5zIHRvIGRpc3BsYXkgb24gZWFjaCByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciAtIFNlbGVjdG9yIHRvIHVzZSB0byB0YXJnZXQgY29sdW1ucyB3aXRoaW4gdGhlIHJvdy5cbkBtaXhpbiBmbGV4LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbidcbikge1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICRwY3Q6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICBmbGV4OiAwIDAgJHBjdDtcbiAgICBtYXgtd2lkdGg6ICRwY3Q7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHdpZHRoIGZsZXggZ3JpZCBjb2x1bW4uXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBmbGV4LWdyaWQtc2l6ZSgkY29sdW1uczogbnVsbCkge1xuICAkY29sdW1uczogJGNvbHVtbnMgb3IgZXhwYW5kO1xuXG4gIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuXG4gIC8vIG1heC13aWR0aCBmaXhlcyBJRSAxMC8xMSBub3QgcmVzcGVjdGluZyB0aGUgZmxleC1iYXNpcyBwcm9wZXJ0eVxuICBAaWYgJGNvbHVtbnMgIT0gZXhwYW5kIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1ncmlkIHtcbiAgLy8gUm93XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XG5cbiAgICAvLyBOZXN0aW5nIGJlaGF2aW9yXG4gICAgJiAucm93IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3cobmVzdCwgJGJhc2U6IGZhbHNlKTtcblxuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgcm93XG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbmRvIG5lZ2F0aXZlIG1hcmdpbnNcbiAgICAvLyBGcm9tIGNvbGxhcHNlZCBjaGlsZFxuICAgICYuaXMtY29sbGFwc2UtY2hpbGQsXG4gICAgJi5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuY29sdW1uIHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uO1xuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC5jb2x1bW4ucm93LnJvdyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1sYXlvdXQoJGkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkLXpmLXNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLy8gU2l6aW5nIChleHBhbmQpXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAuI3skLXpmLXNpemV9LWV4cGFuZCB7XG4gICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEF1dG8tc3RhY2tpbmcvdW5zdGFja2luZ1xuICAgICAgQGF0LXJvb3QgKHdpdGhvdXQ6IG1lZGlhKSB7XG4gICAgICAgIC5yb3cuI3skLXpmLXNpemV9LXVuc3RhY2sge1xuICAgICAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKDEwMCUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS1jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tdW5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNpemluZyAoc2hyaW5rKVxuICAuc2hyaW5rIHtcbiAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKHNocmluayk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC5jb2x1bW4tYmxvY2sge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIC5jb2x1bW5zIHtcbiAgICBAZXh0ZW5kIC5jb2x1bW47IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAuMDAxMjU7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuLy8gQ29udmVydHMgYSB1bml0bGVzcywgcGl4ZWwsIG9yIHJlbSB2YWx1ZSB0byBlbSwgZm9yIHVzZSBpbiBicmVha3BvaW50cy5cbkBmdW5jdGlvbiAtemYtYnAtdG8tZW0oJHZhbHVlKSB7XG4gIC8vIFBpeGVsIGFuZCB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byByZW1zXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyBvciB1bml0bGVzcygkdmFsdWUpIHtcbiAgICAkdmFsdWU6IHJlbS1jYWxjKCR2YWx1ZSwgJGJhc2U6IDE2cHgpO1xuICB9XG5cbiAgLy8gVGhlbiB0aGUgdmFsdWUgaXMgY29udmVydGVkIHRvIGVtc1xuICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFlbTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gQmFzZSBmb3IgcGl4ZWwgY29udmVyc2lvbi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpICE9ICdudW1iZXInIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsLCBwZXJjZW50YWdlLCByZW0gb3IgZW0gdmFsdWUgdG8gYSB1bml0bGVzcyB2YWx1ZSBiYXNlZCBvbiBhIGdpdmVuIGZvbnQgc2l6ZS4gSWRlYWwgZm9yIHdvcmtpbmcgb3V0IHVuaXRsZXNzIGxpbmUgaGVpZ2h0cy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0IHRvIGEgdW5pdGxlc3MgbGluZSBoZWlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgZm9udCBzaXplIHRvIHVzZSB0byB3b3JrIG91dCB0aGUgbGluZSBoZWlnaHQgLSBkZWZhdWx0cyB0byAkZ2xvYmFsLWZvbnQtc2l6ZVxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHVuaXRsZXNzLWNhbGMoJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIEZpcnN0LCBsZXRzIGNvbnZlcnQgb3VyICRiYXNlIHRvIHBpeGVsc1xuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0J3MgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVyIHRoYW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBQb3NpdGlvblxuICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoYXV0byk7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBJdCBjYW4gYmU6XG4vLy8gICAqIEEgbnVtYmVyOiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudFxuLy8vICAgICBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGVcbi8vLyAgICAgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LlxuLy8vICAgKiBgY2VudGVyYDogQ29sdW1uIHdpbGwgYmUgY2VudGVyZWRcbi8vLyAgICogYGF1dG9gOiBDb2x1bW4gd2lsbCBiZSBwdXNoZWQgdG8gdGhlIGxlZnQgKG9yIHRvIHRoZSByaWdodCBmb3IgdGhlIGxhc3QgY29sdW1uKS5cbkBtaXhpbiBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pIHtcbiAgLy8gQXV0byBwb3NpdGlvbmluZ1xuICBAaWYgJHBvc2l0aW9uID09IGF1dG8ge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gTGFzdCBjb2x1bW4gYWxpZ25tZW50XG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFB1c2gvcHVsbFxuICBAZWxzZSBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cblxuICAvLyBDZW50ZXIgcG9zaXRpb25pbmdcbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgXCJjZW50ZXJcIiBvciBcImF1dG9cIi4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGF1dG8pO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pe1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQgZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWAgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogIzE3NzliYSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogIzc2NzY3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6ICMzYWRiNzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICR3YXJuaW5nLWNvbG9yOiAjZmZhZTAwICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkYWxlcnQtY29sb3I6ICNjYzRiMzcgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgJixcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuXG4gIEBpZiAkc3R5bGUgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJHN0eWxlID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgQGlmICRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZCB7XG4gICAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBvbmx5KSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1vbmx5LWV4cGFuZGVkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBkb3duKSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWRvd24tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb250c1xyXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiRmb250LXJvYm90bzogJ1JvYm90bycsIHNhbnMtc2VyaWY7XHJcbiRmb250LXJ1YmlrOiAnUnViaWsnLCBzYW5zLXNlcmlmO1xyXG4kYm9keS1mb250LWZhbWlseTogJGZvbnQtcm9ib3RvO1xyXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkZm9udC1ydWJpaztcclxuXHJcbi8vIENvbG9yc1xyXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiRjbHItYmxhY2s6ICMyMjI7XHJcbiRjbHItbWluZS1zaGFmdDogIzMzMztcclxuJGNsci1hbHRvOiAjREREO1xyXG4kY2xyLXNpbHZlcjogI0NDQztcclxuJGNsci13aWxkLXNhbmQ6ICNGNUY1RjU7XHJcbiRjbHItd2hpdGU6ICNGRkY7XHJcbiRjbHItZ3JleS1saWdodGVzdDogI2Y0ZjRmNDtcclxuJGNsci1ncmV5LXZlcnlsaWdodDogI2U4ZThlODtcclxuJGNsci1ncmV5LW1lZGl1bTogIzQ0NDtcclxuJGNsci1ncmV5LW1lZGl1bS1saWdodDogIzU1NTtcclxuJGNsci1ncmV5LWxpZ2h0OiAjODg4O1xyXG4kY2xyLWdyZWVuLWxpZ2h0OiAjQTZDRTM5O1xyXG4kY2xyLWdyZWVuLWRhcms6ICMwMDkyQUE7XHJcbiRjbHItZ290aGljOiAjNzA5N0FCO1xyXG4vLyRjbHItZ3JlZW4tZGFyazI6ICM1Zjc5ODc7XHJcblxyXG4vLyBCb2R5XHJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuJGJvZHktYmFja2dyb3VuZDogJGNsci1ncmV5LXZlcnlsaWdodDtcclxuXHJcbi8vIFR5cG9ncmFwaHlcclxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4kdGV4dC1jb2xvcjogJGNsci1taW5lLXNoYWZ0O1xyXG4kdGV4dC1jb2xvci1saW5rOiAkY2xyLWdyZWVuLWRhcms7XHJcbiR0ZXh0LWNvbG9yLWxpbmstaG92ZXI6IGxpZ2h0ZW4oJGNsci1taW5lLXNoYWZ0LCAxNSUpO1xyXG5cclxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcclxuJGZvbnQtc2l6ZS1tb2JpbGU6IDE0cHg7XHJcbiRmb250LXNpemUtdGFibGV0OiAxNXB4O1xyXG4kZm9udC1zaXplLWRlc2t0b3A6IDE2cHg7XHJcbiRmb250LXNpemUtYmFzZTogMTRweDtcclxuJGZvbnQtc2l6ZS1sYXJnZTogMS4yZW0gIWRlZmF1bHQ7XHJcbiRmb250LXNpemUtc21hbGw6IDAuOGVtICFkZWZhdWx0O1xyXG4vLyBodHRwOi8vd3d3Lm1vZHVsYXJzY2FsZS5jb20gLSByYXRpbzogMS4yXHJcbiRmb250LXNpemUtaDE6IDIuNDg4ZW07XHJcbiRmb250LXNpemUtaDI6IDIuMDc0ZW07XHJcbiRmb250LXNpemUtaDM6IDEuNzI4ZW07XHJcbiRmb250LXNpemUtaDQ6IDEuNDRlbTtcclxuJGZvbnQtc2l6ZS1oNTogMS4yZW07XHJcbiRmb250LXNpemUtaDY6IDFlbTtcclxuLy8gU21hbGxlciBoZWFkaW5ncyBmb3IgbW9iaWxlXHJcbi8vIGh0dHA6Ly93d3cubW9kdWxhcnNjYWxlLmNvbSAtIHJhdGlvOiAxLjEyNVxyXG4kZm9udC1zaXplLW1vYmlsZS1oMTogMS44MDJlbTtcclxuJGZvbnQtc2l6ZS1tb2JpbGUtaDI6IDEuNjAyZW07XHJcbiRmb250LXNpemUtbW9iaWxlLWgzOiAxLjQyNGVtO1xyXG4kZm9udC1zaXplLW1vYmlsZS1oNDogMS4yNjZlbTtcclxuJGZvbnQtc2l6ZS1tb2JpbGUtaDU6IDEuMTI1ZW07XHJcbiRmb250LXNpemUtbW9iaWxlLWg2OiAxZW07XHJcblxyXG4vLyBOYXZpZ2F0aW9uXHJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuJGJ1cmdlci1jb2xvcjogJGNsci1ibGFjaztcclxuJG1lbnUtcHJpbWFyeS1ib3JkZXI6ICRjbHItbWluZS1zaGFmdDtcclxuJG1lbnUtcHJpbWFyeS1tb2JpbGUtYm9yZGVyOiAkY2xyLWFsdG87XHJcbiRtZW51LXByaW1hcnktbGlzdC1pdGVtLWJvcmRlcjogJGNsci1taW5lLXNoYWZ0O1xyXG4kbWVudS1wcmltYXJ5LW1vYmlsZS1saXN0LWl0ZW0tYm9yZGVyOiAkY2xyLWFsdG87XHJcbiRtZW51LWNvbG9yOiAkY2xyLWJsYWNrO1xyXG4kbWVudS1jb2xvci1ob3ZlcjogbGlnaHRlbigkY2xyLWJsYWNrLCA1JSk7XHJcblxyXG4vLyBCcmVhZGNydW1ic1xyXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiRjbHItYnJlYWRjcnVtYjogI0FBQUFBQTtcclxuJGNsci1icmVhZGNydW1iLWFjdGl2ZTogI0FBQUFBQTtcclxuXHJcbi8vIFN0cmlwZVxyXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiRzdHJpcGUtYmFja2dyb3VuZC1jb2xvcjogJGNsci1taW5lLXNoYWZ0O1xyXG4kc3RyaXBlLXRleHQtY29sb3I6ICRjbHItc2lsdmVyO1xyXG4kc3RyaXBlLWZvbnQtc2l6ZTogMS4xZW07XHJcbiRzdHJpcGUtZm9udC13ZWlnaHQ6IDUwMDtcclxuJHN0cmlwZS1idXR0b24tdGV4dC1jb2xvcjogJGNsci1ibGFjaztcclxuJHN0cmlwZS1idXR0b24tdGV4dC1jb2xvci1ob3ZlcjogJGNsci13aGl0ZTtcclxuJHN0cmlwZS1idXR0b24tYmFja2dyb3VuZC1jb2xvcjogJGNsci1ncmVlbi1saWdodDtcclxuJHN0cmlwZS1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGNsci1ncmVlbi1kYXJrO1xyXG5cclxuLy8gRm9vdGVyXHJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuJGZvb3Rlci1iYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLXdoaXRlO1xyXG4kZm9vdGVyLXRleHQtY29sb3I6ICRjbHItbWluZS1zaGFmdDtcclxuJGZvb3Rlci1saW5rLWNvbG9yOiAkY2xyLW1pbmUtc2hhZnQ7XHJcbiRmb290ZXItbGluay1ob3Zlci1jb2xvcjogZGFya2VuKCRjbHItbWluZS1zaGFmdCwgNSUpO1xyXG5cclxuLy8gU2xpY2tcclxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4kc2xpY2stZm9udC1wYXRoOiAnLi4vZm9udHMvJztcclxuJHNsaWNrLWxvYWRlci1wYXRoOiAnLi4vaW1nLyc7XHJcbiRzbGljay1kb3Qtc2l6ZTogMTZweDtcclxuJHNsaWNrLWRvdC1jb2xvcjogJGNsci1ncmV5LW1lZGl1bTtcclxuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRjbHItZ3JlZW4tZGFyaztcclxuXHJcbi8vIEVudHJpZXNcclxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4kZW50cnktYm9yZGVyLXJhZGl1czogNnB4O1xyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG5AZnVuY3Rpb24gc2xpY2stZm9udC11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi8qIEljb25zICovXG5AaWYgJHNsaWNrLWZvbnQtZmFtaWx5ID09IFwic2xpY2tcIiB7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbn1cblxuLyogQXJyb3dzICovXG5cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICBmb250LXNpemU6IDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogLTI1cHg7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2NyZWVuLXJlYWRlci10ZXh0IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICB0cmFuc2l0aW9uOiBhbGwgLjU1cztcclxuICBjbGlwOiByZWN0KDFweCAxcHggMXB4IDFweCk7XHJcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLy8gTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuXHJcblxyXG4gICYuc2tpcC1saW5rIHtcclxuICAgIG1hcmdpbjogNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNjcmVlbi1yZWFkZXItdGV4dDpob3ZlcixcclxuLnNjcmVlbi1yZWFkZXItdGV4dDphY3RpdmUsXHJcbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIGhlaWdodDogYXV0bztcclxuICBwYWRkaW5nOiAxcmVtIC45Mzc1cmVtO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcclxuICBjb2xvcjogI0ZGRjtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIHotaW5kZXg6IDEwMDAwMDtcclxuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiZmlndXJlIHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4ubWFpbGNoaW1wIHtcclxuICBwYWRkaW5nOiAyZW0gMDtcclxuICBiYWNrZ3JvdW5kOiAkY2xyLWJsYWNrO1xyXG4gIGNvbG9yOiAkY2xyLXdoaXRlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgcGFkZGluZzogNGVtIDA7XHJcbiAgfVxyXG5cclxuICAubWFpbGNoaW1wLXNpZ24tdXAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIC5tYWlsY2hpbXAtdGV4dCB7XHJcbiAgICBjb2xvcjogJGNsci13aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgfVxyXG5cclxuICBpbnB1dCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAubWM0d3AtZm9ybS1maWVsZHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgIC8vIHNhc3MtbGludDpkaXNhYmxlIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxyXG4gICAgaW5wdXRbdHlwZT0nc3VibWl0J10ge1xyXG4gICAgICBAZXh0ZW5kIC5idXR0b247XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT0nZW1haWwnXSB7XHJcbiAgICAgIHdpZHRoOiAzMDBweDtcclxuICAgICAgbWFyZ2luOiAwIDFlbSAwIDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWM0d3AtYWxlcnQge1xyXG4gICAgbWFyZ2luOiAxZW0gYXV0byAwIGF1dG87XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLXdpbGQtc2FuZDtcclxuICAgIGNvbG9yOiAkY2xyLW1pbmUtc2hhZnQ7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4uYnV0dG9uIHtcclxuICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG4gIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBsZXR0ZXItc3BhY2luZzogLjA4ZW07XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLmFjdGlvbnMgLmJ1dHRvbiB7XHJcbiAgcGFkZGluZzogLjZlbSAzZW07XHJcbn1cclxuXHJcbi5idXR0b24tcmVhZC1tb3JlIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIGZvbnQtc2l6ZTogLjhlbTtcclxuICB9XHJcbn1cclxuIiwiLmlmcmFtZS1yZXNwb25zaXZlLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGhlaWdodDogMDtcclxuICBwYWRkaW5nLXRvcDogMzBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xyXG5cclxuICBpZnJhbWUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnBhZ2UtaGVhZGVyIHtcclxuICBwYWRkaW5nOiAyZW0gMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBwYWRkaW5nOiAyLjVlbSAwO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgcGFkZGluZzogMy4zMzMzZW0gMDtcclxuICB9XHJcblxyXG4gIC5wYWdlLXRpdGxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZm9udC1zaXplOiAyLjhlbTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBmb250LXNpemU6IDMuMmVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBhZ2Utc3VidGl0bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGNvbG9yOiAkY2xyLWdyZXktbGlnaHQ7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZm9udC1zaXplOiAxLjZlbTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBmb250LXNpemU6IDIuMmVtO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5jYXJkLXdyYXAge1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgfVxyXG59XHJcblxyXG4uY2FyZCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiAyZW07XHJcbiAgYm9yZGVyLXJhZGl1czogJGVudHJ5LWJvcmRlci1yYWRpdXM7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNsci13aGl0ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHJcbiAgICA+ICoge1xyXG4gICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuY2FyZC1pbm5lciB7XHJcbiAgICBwYWRkaW5nOiAyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGVudHJ5LWJvcmRlci1yYWRpdXMgJGVudHJ5LWJvcmRlci1yYWRpdXM7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuZW50cnktZmlndXJlLWxpbmsge1xyXG4gICAgZmxleDogbm9uZTtcclxuICAgIGhlaWdodDogMTIwcHg7XHJcbiAgfVxyXG5cclxuICAuZW50cnktZmlndXJlIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gIH1cclxuXHJcbiAgLmVudHJ5LXRpdGxlIHtcclxuICAgID4gYSB7XHJcbiAgICAgIGNvbG9yOiAkY2xyLWJsYWNrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmVudHJ5LXN1YnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMWVtO1xyXG5cclxuICAgID4gYSB7XHJcbiAgICAgIGNvbG9yOiAkY2xyLWdyZXktbGlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZW50cnktc3VtbWFyeSB7XHJcbiAgICBjb2xvcjogJGNsci1ncmV5LW1lZGl1bTtcclxuICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgfVxyXG5cclxuICAuZXZlbnQtZGV0YWlscyB7XHJcbiAgICB1bCB7XHJcbiAgICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQoKTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG5cclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XHJcblxyXG4gICAgICAgIHNwYW46bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMmVtO1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmEge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwLjJlbTtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICBjb2xvcjogJGNsci1ncmV5LW1lZGl1bTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZXZlbnQtc3RhcnQtZGF0ZSB7XHJcbiAgICAgICAgICBjb2xvcjogJGNsci1ncmV5LW1lZGl1bTtcclxuXHJcbiAgICAgICAgICB0aW1lIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY2xyLWJsYWNrO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gbGluaygkY29sb3IsICRjb2xvci1ob3Zlcikge1xyXG4gIGEge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYmFja2dyb3VuZC1jb3ZlcigpIHtcclxuICBiYWNrZ3JvdW5kOiB7XHJcbiAgICBwb3NpdGlvbjogY2VudGVyO1xyXG4gICAgc2l6ZTogY292ZXI7XHJcbiAgICByZXBlYXQ6IG5vLXJlcGVhdDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBiZy1vdmVybGF5KCkge1xyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG92ZXJsYXkoKSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxufVxyXG5cclxuQG1peGluIGxpc3QtcmVzZXQge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuIiwiQG1peGluIGNvbHVtbigkcmF0aW9zOiAxLCAkb2Zmc2V0OiAwLCAkY3ljbGU6IDAsICRndXR0ZXI6IG1hcC1nZXQoJGplZXQsICdndXR0ZXInKSwgJGNsZWFyZml4OiB0cnVlLCAkbnRoOiBtYXAtZ2V0KCRqZWV0LCAnbnRoJykpIHtcclxuICAkc2lkZTogX2dldC1sYXlvdXQtZGlyZWN0aW9uKCk7XHJcbiAgJG9wcG9zaXRlLXNpZGU6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG4gICRjb2x1bW4td2lkdGhzOiBfZ2V0LWNvbHVtbigkcmF0aW9zLCAkZ3V0dGVyKTtcclxuICAkbWFyZ2luLWxhc3Q6IDA7XHJcbiAgJG1hcmdpbi1sOiAkbWFyZ2luLWxhc3Q7XHJcbiAgJG1hcmdpbi1yOiBudGgoJGNvbHVtbi13aWR0aHMsIDIpO1xyXG4gICRudGgtc2VsZWN0b3I6IFwibnRoLWNoaWxkXCI7XHJcbiAgQGlmICRudGggPT0gXCJ0eXBlXCIge1xyXG4gICAgJG50aC1zZWxlY3RvcjogXCJudGgtb2YtdHlwZVwiO1xyXG4gIH1cclxuXHJcbiAgQGlmICRvZmZzZXQgIT0gMCB7XHJcbiAgICBAaWYgJG9mZnNldCA8IDAge1xyXG4gICAgICAkb2Zmc2V0OiAkb2Zmc2V0ICogLTE7XHJcbiAgICAgICRvZmZzZXQ6IG50aChfZ2V0LWNvbHVtbigkb2Zmc2V0LCBudGgoJGNvbHVtbi13aWR0aHMsIDIpKSwgMSk7XHJcbiAgICAgICRtYXJnaW4tbGFzdDogJG9mZnNldCArIG50aCgkY29sdW1uLXdpZHRocywgMikgKiAyO1xyXG4gICAgICAkbWFyZ2luLXI6ICRtYXJnaW4tbGFzdDtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkb2Zmc2V0OiBudGgoX2dldC1jb2x1bW4oJG9mZnNldCwgbnRoKCRjb2x1bW4td2lkdGhzLCAyKSksIDEpO1xyXG4gICAgICAkbWFyZ2luLWw6ICRvZmZzZXQgKyBudGgoJGNvbHVtbi13aWR0aHMsIDIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmICRjbGVhcmZpeCB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICB9XHJcblxyXG4gIGZsb2F0OiAkc2lkZTtcclxuICBjbGVhcjogbm9uZTtcclxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xyXG4gIHdpZHRoOiBudGgoJGNvbHVtbi13aWR0aHMsIDEpICogMSU7XHJcbiAgbWFyZ2luOiB7XHJcbiAgICAjeyRzaWRlfTogJG1hcmdpbi1sICogMSU7XHJcbiAgICAjeyRvcHBvc2l0ZS1zaWRlfTogJG1hcmdpbi1yICogMSU7XHJcbiAgfTtcclxuXHJcbiAgQGlmICRjeWNsZSAhPSAwIHtcclxuICAgICY6I3skbnRoLXNlbGVjdG9yfShuKSB7XHJcbiAgICAgIG1hcmdpbi0je19vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpfTogJG1hcmdpbi1yICogMSU7XHJcbiAgICAgIGZsb2F0OiAkc2lkZTtcclxuICAgICAgY2xlYXI6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjojeyRudGgtc2VsZWN0b3J9KCN7JGN5Y2xlfW4pIHtcclxuICAgICAgbWFyZ2luLSN7X29wcG9zaXRlLWRpcmVjdGlvbigkc2lkZSl9OiAkbWFyZ2luLWxhc3QgKiAxJTtcclxuICAgICAgZmxvYXQ6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6I3skbnRoLXNlbGVjdG9yfSgjeyRjeWNsZX1uICsgMSkge1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi0je19vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpfTogJG1hcmdpbi1sYXN0ICogMSU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQGZ1bmN0aW9uIGNvbHVtbi13aWR0aCgkcmF0aW9zOiAxLCAkZ3V0dGVyOiBtYXAtZ2V0KCRqZWV0LCAnZ3V0dGVyJykpIHtcclxuICBAaWYgKG1hcC1nZXQoJGplZXQsICdwYXJlbnQtZmlyc3QnKSAhPSAndHJ1ZScpIHtcclxuICAgICRyYXRpb3M6IF9yZXZlcnNlKCRyYXRpb3MpO1xyXG4gIH1cclxuXHJcbiAgJHc6IDEwMDtcclxuXHJcbiAgQGVhY2ggJHJhdGlvIGluICRyYXRpb3Mge1xyXG4gICAgJHc6IDEwMCAqICRyYXRpbyAtICRndXR0ZXIgKyAkcmF0aW8gKiAkZ3V0dGVyO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiB1bnF1b3RlKCR3ICsgJyUnKTtcclxufVxyXG5cclxuXHJcbkBmdW5jdGlvbiBjb2x1bW4tZ3V0dGVyKCRyYXRpb3M6IDEsICRndXR0ZXI6IG1hcC1nZXQoJGplZXQsICdndXR0ZXInKSkge1xyXG4gIEBpZiAobWFwLWdldCgkamVldCwgJ3BhcmVudC1maXJzdCcpICE9ICd0cnVlJykge1xyXG4gICAgJHJhdGlvczogX3JldmVyc2UoJHJhdGlvcyk7XHJcbiAgfVxyXG5cclxuICAkdzogMTAwO1xyXG5cclxuICBAZWFjaCAkcmF0aW8gaW4gJHJhdGlvcyB7XHJcbiAgICAkZ3V0dGVyOiAkZ3V0dGVyIC8gJHcgKiAxMDA7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIHVucXVvdGUoJGd1dHRlciArICclJyk7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gc3BhbigkcmF0aW86IDEsICRvZmZzZXQ6IDAsICRjeWNsZTogMCwgJGNsZWFyZml4OiB0cnVlLCAkbnRoOiBtYXAtZ2V0KCRqZWV0LCBcIm50aFwiKSkge1xyXG4gICRzaWRlOiBfZ2V0LWxheW91dC1kaXJlY3Rpb24oKTtcclxuICAkb3Bwb3NpdGUtc2lkZTogX29wcG9zaXRlLWRpcmVjdGlvbigkc2lkZSk7XHJcbiAgJHNwYW4td2lkdGg6IF9nZXQtc3BhbigkcmF0aW8pO1xyXG4gICRtYXJnaW4tcjogMDtcclxuICAkbWFyZ2luLWw6ICRtYXJnaW4tcjtcclxuICAkbnRoLXNlbGVjdG9yOiBcIm50aC1jaGlsZFwiO1xyXG4gIEBpZiAkbnRoID09IFwidHlwZVwiIHtcclxuICAgICRudGgtc2VsZWN0b3I6IFwibnRoLW9mLXR5cGVcIjtcclxuICB9XHJcblxyXG4gIEBpZiAkb2Zmc2V0ICE9IDAge1xyXG4gICAgQGlmICRvZmZzZXQgPCAwIHtcclxuICAgICAgJG9mZnNldDogJG9mZnNldCAqIC0xO1xyXG4gICAgICAkbWFyZ2luLXI6IF9nZXQtc3Bhbigkb2Zmc2V0KTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkbWFyZ2luLWw6IF9nZXQtc3Bhbigkb2Zmc2V0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkY2xlYXJmaXgge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgfVxyXG5cclxuICBmbG9hdDogJHNpZGU7XHJcbiAgY2xlYXI6IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcclxuICB3aWR0aDogJHNwYW4td2lkdGggKiAxJTtcclxuICBtYXJnaW46IHtcclxuICAgICN7JHNpZGV9OiAkbWFyZ2luLWwgKiAxJTtcclxuICAgICN7JG9wcG9zaXRlLXNpZGV9OiAkbWFyZ2luLXIgKiAxJTtcclxuICB9O1xyXG5cclxuICBAaWYgJGN5Y2xlICE9IDAge1xyXG4gICAgJjojeyRudGgtc2VsZWN0b3J9KG4pIHtcclxuICAgICAgZmxvYXQ6ICRzaWRlO1xyXG4gICAgICBjbGVhcjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOiN7JG50aC1zZWxlY3Rvcn0oI3skY3ljbGV9bikge1xyXG4gICAgICBmbG9hdDogX29wcG9zaXRlLWRpcmVjdGlvbigkc2lkZSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjojeyRudGgtc2VsZWN0b3J9KCN7JGN5Y2xlfW4gKyAxKSB7XHJcbiAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtaXhpbiBtb3ZlKCRyYXRpb3M6IDAsICRjb2wtb3Itc3BhbjogY29sdW1uLCAkZ3V0dGVyOiBtYXAtZ2V0KCRqZWV0LCAnZ3V0dGVyJykpIHtcclxuICAkdHJhbnNsYXRlOiAnJztcclxuICAkc2lkZTogX2dldC1sYXlvdXQtZGlyZWN0aW9uKCk7XHJcblxyXG4gIEBpZiAkc2lkZSA9PSByaWdodCB7XHJcbiAgICAkcmF0aW9zOiBfcmVwbGFjZS1udGgoJHJhdGlvcywgMCwgbnRoKCRyYXRpb3MsIDEpICogLTEpO1xyXG4gIH1cclxuXHJcbiAgQGlmIGluZGV4KFwiY29sdW1uXCIgXCJjb2xcIiBcImNcIiwgJGNvbC1vci1zcGFuKSB7XHJcbiAgICAkY29sdW1uLXdpZHRoczogX2dldC1jb2x1bW4oJHJhdGlvcywgJGd1dHRlcik7XHJcbiAgICAkdHJhbnNsYXRlOiBudGgoJGNvbHVtbi13aWR0aHMsIDEpICsgbnRoKCRjb2x1bW4td2lkdGhzLCAyKTtcclxuICB9IEBlbHNlIHtcclxuICAgICR0cmFuc2xhdGU6IF9nZXQtc3BhbigkcmF0aW9zKTtcclxuICB9XHJcblxyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBsZWZ0OiAkdHJhbnNsYXRlICogMSU7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gdW5tb3ZlKCkge1xyXG4gIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgbGVmdDogMDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBkZWJ1ZygkY29sb3I6IGJsdWUsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XHJcbiAgQGlmICRpbXBvcnRhbnQge1xyXG4gICAgKiB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuMDUpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAqIHtcclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIC4wNSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGNlbnRlcigkbWF4LXdpZHRoOiBtYXAtZ2V0KCRqZWV0LCAnbWF4LXdpZHRoJyksICRwYWQ6IDApIHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICB3aWR0aDogYXV0bztcclxuICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XHJcbiAgZmxvYXQ6IG5vbmU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiB7XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIGxlZnQ6ICBhdXRvO1xyXG4gIH07XHJcbiAgcGFkZGluZzoge1xyXG4gICAgbGVmdDogICRwYWQ7XHJcbiAgICByaWdodDogJHBhZDtcclxuICB9O1xyXG59XHJcblxyXG5cclxuQG1peGluIHVuY2VudGVyKCkge1xyXG4gIG1heC13aWR0aDogbm9uZTtcclxuICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDA7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gc3RhY2soJHBhZDogMCwgJGFsaWduOiBmYWxzZSkge1xyXG4gICRzaWRlOiBfZ2V0LWxheW91dC1kaXJlY3Rpb24oKTtcclxuICAkb3Bwb3NpdGUtc2lkZTogX29wcG9zaXRlLWRpcmVjdGlvbigkc2lkZSk7XHJcblxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbjoge1xyXG4gICAgbGVmdDogIGF1dG87XHJcbiAgICByaWdodDogYXV0bztcclxuICB9O1xyXG5cclxuICAmOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi0jeyRzaWRlfTogYXV0bztcclxuICB9XHJcblxyXG4gICY6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtc2lkZX06IGF1dG87XHJcbiAgfVxyXG5cclxuICBAaWYgJHBhZCAhPSAwIHtcclxuICAgIHBhZGRpbmc6IHtcclxuICAgICAgbGVmdDogICRwYWQ7XHJcbiAgICAgIHJpZ2h0OiAkcGFkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmICgkYWxpZ24gaXMgbm90IGZhbHNlKSB7XHJcbiAgICBAaWYgaW5kZXgoXCJjZW50ZXJcIiBcImNcIiwgJGFsaWduKSB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH0gQGVsc2UgaWYgaW5kZXgoXCJsZWZ0XCIgXCJsXCIsICRhbGlnbikge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfSBAZWxzZSBpZiBpbmRleChcInJpZ2h0XCIgXCJyXCIsICRhbGlnbikge1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gdW5zdGFjaygpIHtcclxuICAkc2lkZTogX2dldC1sYXlvdXQtZGlyZWN0aW9uKCk7XHJcbiAgJG9wcG9zaXRlLXNpZGU6IF9vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpO1xyXG5cclxuICB0ZXh0LWFsaWduOiAkc2lkZTtcclxuICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgY2xlYXI6IG5vbmU7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWFyZ2luOiB7XHJcbiAgICBsZWZ0OiAgMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gIH07XHJcblxyXG4gICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLSN7JHNpZGV9OiAwO1xyXG4gIH1cclxuXHJcbiAgJjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi0je19vcHBvc2l0ZS1kaXJlY3Rpb24oJHNpZGUpfTogMDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gYWxpZ24oJGRpcmVjdGlvbjogYm90aCkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG5cclxuICBAaWYgaW5kZXgoXCJob3Jpem9udGFsXCIgXCJoXCIsICRkaXJlY3Rpb24pIHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICB9IEBlbHNlIGlmIGluZGV4KFwidmVydGljYWxcIiBcInZcIiwgJGRpcmVjdGlvbikge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbkBtaXhpbiBjbGVhcmZpeCgpIHtcclxuICAmOjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLmVudHJ5LW1ldGEtYmFkZ2Uge1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gIC5lbnRyeS1tZXRhLWRhdGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICA+IGRpdiB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMC41ZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uaGFzLXBvc3QtdGh1bWJuYWlsIHtcclxuICAuZW50cnktbWV0YS1iYWRnZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcGFkZGluZzogMWVtO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRlbnRyeS1ib3JkZXItcmFkaXVzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci1ncmVlbi1saWdodDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAuZW50cnktbWV0YS1kYXRlIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGNvbG9yOiAkY2xyLWJsYWNrO1xyXG5cclxuICAgICAgPiBkaXYge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuZGF5LW51bWJlciB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS41MzMzM2VtO1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIH1cclxuXHJcbiAgICAubW9udGgtbmFtZSB7XHJcbiAgICAgIGNvbG9yOiAkY2xyLXdoaXRlO1xyXG4gICAgICBmb250LXNpemU6IC45ZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnBhZ2luYXRpb24ge1xyXG4gIG1hcmdpbjogMmVtIDA7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDRlbTtcclxuICB9XHJcblxyXG4gIGEsXHJcbiAgc3BhbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAwLjVlbTtcclxuICB9XHJcblxyXG4gIC5jdXJyZW50IHtcclxuICAgIGNvbG9yOiBkYXJrZW4oJGNsci1zaWx2ZXIsIDEwJSk7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5zaXRlLWhlYWRlci1zZWFyY2gge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgcGFkZGluZzogMWVtIDEuNWVtO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjbHItd2hpdGU7XHJcblxyXG4gIC5zZWFyY2gtZm9ybSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAuc2VhcmNoLWZpZWxkIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjhzIGVhc2U7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNsci13aWxkLXNhbmQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBib3JkZXItY29sb3I6ICRjbHItZ3JlZW4tZGFyaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWFyY2gtc3VibWl0IHtcclxuICAgIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcigpO1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICByaWdodDogMS41ZW07XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG4gICAgY29sb3I6ICRjbHItd2hpdGU7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMDhlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5hY3Rpb25zIHtcclxuICBtYXJnaW4tdG9wOiAxZW07XHJcblxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnJlYWQtbW9yZSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogMC45MzMzMzMzZW07XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnNlY3Rpb24taGVhZGVyIHtcclxuICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMy4zZW07XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4xO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgZm9udC1zaXplOiAzLjRlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHtcclxuICAgIGNvbG9yOiAkY2xyLWdyZXktbWVkaXVtO1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LXJ1YmlrO1xyXG4gICAgZm9udC1zaXplOiAxLjEzMzMzZW07XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMmVtO1xyXG5cclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG5cclxuLnNlY3Rpb24tZm9vdGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4uYnJlYWRjcnVtYnMge1xyXG4gIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgY29sb3I6ICRjbHItYnJlYWRjcnVtYjtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxuXHJcbiAgYSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgLjI1ZW07XHJcbiAgICBjb2xvcjogJGNsci1icmVhZGNydW1iO1xyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6IGRhcmtlbigkY2xyLWJyZWFkY3J1bWIsIDUlKTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgc3BhbiB7XHJcbiAgICBjb2xvcjogJGNsci1icmVhZGNydW1iLWFjdGl2ZTtcclxuICB9XHJcblxyXG4gIC8vIHNhc3MtbGludDpkaXNhYmxlIGNsYXNzLW5hbWUtZm9ybWF0XHJcbiAgLmJyZWFkY3J1bWJfbGFzdCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogLjI1ZW07XHJcbiAgfVxyXG5cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5pbmN1YmF0aW9uLXByb2Nlc3MtcGFnZS1saXN0LFxyXG4uaW5jdWJhdGlvbi1wcm9jZXNzLXBhZ2Utc2VsZWN0IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDAgMmVtO1xyXG4gIGJvcmRlci1yYWRpdXM6IDI2cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNsci1ncmVlbi1kYXJrO1xyXG4gIGNvbG9yOiAkY2xyLXdoaXRlO1xyXG4gIGZvbnQtc2l6ZTogMC45MzMzM2VtO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHotaW5kZXg6IDM7XHJcblxyXG4gIGEge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzogMWVtO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjRzIGVhc2U7XHJcbiAgICBjb2xvcjogJGNsci13aGl0ZTtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY2xyLWdyZWVuLWRhcmssIDUlKTtcclxuICAgICAgY29sb3I6ICRjbHItd2hpdGU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNsci1ncmVlbi1kYXJrLCAxNSUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAuaGVhZHJvb20ge1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC40cyBlYXNlLW91dDtcclxuICB9XHJcblxyXG4gIC5oZWFkcm9vbS0tdW5waW5uZWQge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuICB9XHJcblxyXG4gIC5oZWFkcm9vbS0tcGlubmVkLmhlYWRyb29tLS1ub3QtdG9wIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG1heC13aWR0aDogOTByZW07XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIGJveC1zaGFkb3c6IDAgLjI1cmVtIC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICB6LWluZGV4OiAzO1xyXG4gIH1cclxuXHJcbiAgLmFkbWluLWJhciB7XHJcbiAgICAuaGVhZHJvb20tLXBpbm5lZC5oZWFkcm9vbS0tbm90LXRvcCB7XHJcbiAgICAgIHRvcDogMzJweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4uY24tYm90dG9tIHtcclxuICB3aWR0aDogOTAlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uY29va2llLW5vdGljZS1jb250YWluZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjbHItbWluZS1zaGFmdDtcclxuICB6LWluZGV4OiA1O1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcbiAgICBib3R0b206IDEwcHg7XHJcbiAgICB3aWR0aDogMzUwcHg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gIH1cclxuXHJcbiAgc3BhbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIGEuY24tc2V0LWNvb2tpZS5idXR0b24sXHJcbiAgYS5jbi1tb3JlLWluZm8uYnV0dG9uIHtcclxuICAgIG1hcmdpbi10b3A6IC44NWVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogLjVlbTtcclxuICAgIH1cclxuICB9XHJcbn0iLCIucGFnZS10ZW1wbGF0ZS1pbmN1YmF0aW9uLXByb2Nlc3MgLmNhc2VzLWluLXRoaXMtcGhhc2UsXHJcbi5jYXNlcy1jb250YWluZXIge1xyXG4gIHBhZGRpbmctdG9wOiAwO1xyXG4gIHBhZGRpbmctYm90dG9tOiAwO1xyXG5cclxuICAuc2VjdGlvbi1oZWFkZXIge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxMTQwcHgpIHtcclxuICAgICAgcGFkZGluZzogMCAyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgcGFkZGluZzogMCA2LjE1ZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY2FyZC1pbm5lciB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZGRkO1xyXG4gIH1cclxuXHJcbiAgLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgbWFyZ2luOiAwIDAgMS43ZW0gMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIC5oZW50cnkge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkY2xyLXdpbGQtc2FuZDtcclxuXHJcbiAgICAuZW50cnktdGl0bGUge1xyXG4gICAgICBtYXJnaW46IDAgMCAwLjJlbSAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5yZWFkLW1vcmUge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjVlbTtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYXNlcy1jb250YWluZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAuY2FyZC13cmFwIHtcclxuICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICB9XHJcblxyXG4gIC5lbnRyeS10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICB9XHJcbn0iLCIucGVyc29ucy1zaG9ydGNvZGUge1xyXG4gIC5jb250YWN0LWluZm9ybWF0aW9uIGxpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgPiAuaXRlbXMgPiAucGVyc29uIC5lbnRyeS1maWd1cmUgaW1nIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICB9XHJcbn0iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbmJvZHkge1xyXG4gIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tb2JpbGU7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcbn1cclxuXHJcbmJvZHksXHJcbmh0bWwgKiB7XHJcbiAgZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIHRleHQtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247XHJcbiAgdGV4dC1zaXplLWFkanVzdDogbm9uZTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcblxyXG5hIHtcclxuICB0cmFuc2l0aW9uOiBjb2xvciAuMnM7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yLWxpbms7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvci1saW5rLWhvdmVyO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xyXG4gIGNvbG9yOiAkY2xyLWJsYWNrO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbn1cclxuXHJcbi5zaXRlLW1haW4gLmVudHJ5LWNvbnRlbnQge1xyXG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgbWFyZ2luLXRvcDogMWVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLjVlbTtcclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICB9XHJcblxyXG4gID4gOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gID4gOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuaDEsIC5oMSB7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1vYmlsZS1oMTtcclxufVxyXG5cclxuaDIsIC5oMiB7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1vYmlsZS1oMjtcclxufVxyXG5cclxuaDMsIC5oMyB7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1vYmlsZS1oMztcclxufVxyXG5cclxuaDQsIC5oNCB7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1vYmlsZS1oNDtcclxufVxyXG5cclxuaDUsIC5oNSB7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1vYmlsZS1oNTtcclxufVxyXG5cclxuaDYsIC5oNiB7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW1vYmlsZS1oNjtcclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICBib2R5IHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10YWJsZXQ7XHJcbiAgfVxyXG5cclxuICBoMSwgLmgxIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTtcclxuICB9XHJcblxyXG4gIGgyLCAuaDIge1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWgyO1xyXG4gIH1cclxuXHJcbiAgaDMsIC5oMyB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaDM7XHJcbiAgfVxyXG5cclxuICBoNCwgLmg0IHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDtcclxuICB9XHJcblxyXG4gIGg1LCAuaDUge1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWg1O1xyXG4gIH1cclxuXHJcbiAgaDYsIC5oNiB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaDY7XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gIGJvZHkge1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWRlc2t0b3A7XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnNpdGUtaW5uZXIge1xyXG4gIG1heC13aWR0aDogcmVtLWNhbGMoMTQ0MHB4KTtcclxuICBtYXJnaW46IDAgYXV0bztcclxuXHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4uc2l0ZS1jb250ZW50IHtcclxuICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xyXG59IiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4uY29udGVudC13cmFwcGVyIHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogMTI4MHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnNpdGUtdG9wLW1lbnUge1xyXG4gIHBhZGRpbmc6IDAuNWVtIDA7XHJcbn1cclxuXHJcbi5zaXRlLWhlYWRlci1tYWluIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLXdoaXRlO1xyXG59XHJcblxyXG4uc2l0ZS1oZWFkZXItbWFpbi1pbm5lciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBwYWRkaW5nOiAxZW0gMmVtO1xyXG59XHJcblxyXG4uc2l0ZS1icmFuZGluZyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5zaXRlLWJyYW5kLWltYWdlIHtcclxuICBtYXgtd2lkdGg6IDEyMHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIG1heC13aWR0aDogMTQwcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBtYXgtd2lkdGg6IDE4MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNpdGUtaGVhZGVyLWljb25zIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG59XHJcblxyXG4uc2l0ZS1zb2NpYWwtbGlua3Mge1xyXG4gIG1hcmdpbi1yaWdodDogMmVtO1xyXG5cclxuICAuc29jaWFsLWxpbmtzIHtcclxuICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQoKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICA+IGxpIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNpdGUtc2VhcmNoLXRvZ2dsZSB7XHJcbiAgbWFyZ2luOiAwIDJlbSAwIGF1dG87XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uc2l0ZS1oZWFkZXItbWVudSB7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgZmxleDogMCAwIDEwMCU7XHJcbiAgICBvcmRlcjogMztcclxuICB9XHJcbn1cclxuXHJcbi5zaXRlLWhlYWRlci1tYWluLmhlYWRyb29tLS1ub3QtdG9wLmhlYWRyb29tLS1waW5uZWQge1xyXG4gIC5zaXRlLWhlYWRlci1tYWluLWlubmVyIHtcclxuICAgIHBhZGRpbmc6IC41ZW0gMmVtO1xyXG4gIH1cclxuXHJcbiAgLnNpdGUtYnJhbmRpbmcgaW1nIHtcclxuICAgIG1heC13aWR0aDogMTAwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2l0ZS1oZWFkZXItZXh0cmEge1xyXG4gIEBpbmNsdWRlIHNob3ctZm9yKHh4bGFyZ2UpO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gIC5pbWcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gIH1cclxufVxyXG5cclxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgcHJvcGVydHktc29ydC1vcmRlclxyXG5AaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGE6YWZ0ZXIsXHJcbi5kcm9wZG93bi10b2dnbGU6YWZ0ZXIge1xyXG4gIEBpbmNsdWRlIGZhKCk7XHJcbn1cclxuXHJcbi5zaXRlLWhlYWRlci1tZW51IHtcclxuICBkaXNwbGF5OiBub25lO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5zaXRlLWhlYWRlci1tZW51LnRvZ2dsZWQtb24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ubWFpbi1uYXZpZ2F0aW9uIHVsIHVsIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbiB7XHJcbiAgbWFyZ2luLXRvcDogMS41ZW07XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG5cclxuICB1bCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICB9XHJcblxyXG4gIGxpIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVudS1wcmltYXJ5LW1vYmlsZS1saXN0LWl0ZW0tYm9yZGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZW51LXByaW1hcnktbGlzdC1pdGVtLWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgY29sb3I6ICRtZW51LWNvbG9yO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zMTI1O1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XHJcbiAgICBwYWRkaW5nOiAwLjg0Mzc1ZW0gMDtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkbWVudS1jb2xvci1ob3ZlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhLCAuY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcclxuICAgIGNvbG9yOiAkY2xyLWdyZWVuLWxpZ2h0O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGNvbG9yOiAkbWVudS1jb2xvci1ob3ZlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHNhc3MtbGludDpkaXNhYmxlIGNsYXNzLW5hbWUtZm9ybWF0XHJcbiAgLmN1cnJlbnRfcGFnZV9pdGVtID4gYSB7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgfVxyXG5cclxuICB1bCB1bCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDAuODc1ZW07XHJcbiAgfVxyXG5cclxuICB1bCAudG9nZ2xlZC1vbiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIC5wcmltYXJ5LW1lbnUge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZW51LXByaW1hcnktbW9iaWxlLWJvcmRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVudS1wcmltYXJ5LWJvcmRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDU2cHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAucHJpbWFyeS1tZW51LFxyXG4gICAgLnByaW1hcnktbWVudSA+IGxpIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcmltYXJ5LW1lbnUgPiBsaSB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3M7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIGNvbG9yOiAkY2xyLWdyZWVuLWRhcms7XHJcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtOHB4O1xyXG4gICAgICBwYWRkaW5nOiAwLjY1NjI1ZW0gMC44NzVlbTtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICBsaTpob3ZlciA+IGEsXHJcbiAgICBsaS5mb2N1cyA+IGEge1xyXG4gICAgICBjb2xvcjogJG1lbnUtY29sb3ItaG92ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgdWwgdWwge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lbnUtcHJpbWFyeS1ib3JkZXI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBsZWZ0OiAtOTk5ZW07XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB6LWluZGV4OiA5OTk5OTtcclxuICAgIH1cclxuXHJcbiAgICB1bCB1bCB1bCB7XHJcbiAgICAgIHRvcDogLTFweDtcclxuICAgIH1cclxuXHJcbiAgICB1bCB1bCB1bDpiZWZvcmUsXHJcbiAgICB1bCB1bCB1bDphZnRlciB7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuXHJcbiAgICB1bCB1bCBsaSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZW51LXByaW1hcnktbGlzdC1pdGVtLWJvcmRlcjtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcclxuICAgIH1cclxuXHJcbiAgICB1bCB1bCBhIHtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgd2lkdGg6IDEyLjY4NzVlbTtcclxuICAgIH1cclxuXHJcbiAgICB1bCB1bDpiZWZvcmUsXHJcbiAgICB1bCB1bDphZnRlciB7XHJcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIH1cclxuXHJcbiAgICB1bCB1bDpiZWZvcmUge1xyXG4gICAgICBib3JkZXItY29sb3I6ICRtZW51LXByaW1hcnktYm9yZGVyIHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItd2lkdGg6IDAgMTBweCAxMHB4O1xyXG4gICAgICByaWdodDogOXB4O1xyXG4gICAgICB0b3A6IC05cHg7XHJcbiAgICB9XHJcblxyXG4gICAgdWwgdWw6YWZ0ZXIge1xyXG4gICAgICBib3JkZXItY29sb3I6ICNGRkYgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMCA4cHggOHB4O1xyXG4gICAgICByaWdodDogMTFweDtcclxuICAgICAgdG9wOiAtN3B4O1xyXG4gICAgfVxyXG5cclxuICAgIGxpOmhvdmVyID4gdWwsXHJcbiAgICBsaS5mb2N1cyA+IHVsIHtcclxuICAgICAgbGVmdDogYXV0bztcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgdWwgdWwgbGk6aG92ZXIgPiB1bCxcclxuICAgIHVsIHVsIGxpLmZvY3VzID4gdWwge1xyXG4gICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICByaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGEge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIuMjVlbTtcclxuICAgIH1cclxuXHJcbiAgICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAwLjYyNWVtO1xyXG4gICAgICB0b3A6IDAuODEyNWVtO1xyXG4gICAgfVxyXG5cclxuICAgIHVsIHVsIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIuMDYyNWVtO1xyXG4gICAgfVxyXG5cclxuICAgIHVsIHVsIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XHJcbiAgICAgIHJpZ2h0OiAwLjU2MjVlbTtcclxuICAgICAgdG9wOiAwLjg3NWVtO1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgLmRyb3Bkb3duLXRvZ2dsZSxcclxuICAgIHVsIC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAuc3ViLW1lbnUge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcblxyXG4gICAgICA+IGxpOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDZweDtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICA+IGxpOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDZweDtcclxuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wcmltYXJ5LW1lbnU6YmVmb3JlLFxyXG4ucHJpbWFyeS1tZW51OmFmdGVyIHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG59XHJcblxyXG4ucHJpbWFyeS1tZW51OmFmdGVyIHtcclxuICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLy8gRHJvcGRvd24gdG9nZ2xlXHJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICBoZWlnaHQ6IDQ4cHg7XHJcbiAgd2lkdGg6IDQ4cHg7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBjb2xvcjogIzFBMUExQTtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICBjb250ZW50OiBcIlwiO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IHRoaW4gZG90dGVkO1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XHJcbiAgfVxyXG5cclxuICAmOmZvY3VzOmFmdGVyIHtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG5cclxuICAmLnRvZ2dsZWQtb246YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcXGYxMDZcIjtcclxuICB9XHJcblxyXG4gICY6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogMXB4O1xyXG4gICAgcGFkZGluZzogMCAxNnB4O1xyXG4gICAgYm9yZGVyOiAwIHNvbGlkICRtZW51LXByaW1hcnktbW9iaWxlLWJvcmRlcjtcclxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgYm9yZGVyOiAwIHNvbGlkICRtZW51LXByaW1hcnktYm9yZGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWVudSB0b2dnbGVcclxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4ubWVudS10b2dnbGUge1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG5cclxuICAmLnRvZ2dsZWQtb24sXHJcbiAgJi50b2dnbGVkLW9uOmhvdmVyLFxyXG4gICYudG9nZ2xlZC1vbjpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICB9XHJcblxyXG4gICY6Zm9jdXMsXHJcbiAgJi50b2dnbGVkLW9uOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfVxyXG5cclxuICAuYnVyZ2VyLWljb24ge1xyXG4gICAgQGluY2x1ZGUgYnVyZ2VyKDIwcHgsIDNweCwgM3B4LCAkYnVyZ2VyLWNvbG9yKTtcclxuICB9XHJcblxyXG4gICYudG9nZ2xlZC1vbiAuYnVyZ2VyLWljb24ge1xyXG4gICAgQGluY2x1ZGUgYnVyZ2VyLXRvLWNyb3NzO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEb2VzIHRoZSBzYW1lIHRoaW5nIGFzIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGhcIj4sXHJcbiAqIGJ1dCBpbiB0aGUgZnV0dXJlIFczQyBzdGFuZGFyZCB3YXkuIC1tcy0gcHJlZml4IGlzIHJlcXVpcmVkIGZvciBJRTEwKyB0b1xyXG4gKiByZW5kZXIgcmVzcG9uc2l2ZSBzdHlsaW5nIGluIFdpbmRvd3MgOCBcInNuYXBwZWRcIiB2aWV3czsgSUUxMCsgZG9lcyBub3QgaG9ub3JcclxuICogdGhlIG1ldGEgdGFnLiBTZWUgaHR0cHM6Ly9jb3JlLnRyYWMud29yZHByZXNzLm9yZy90aWNrZXQvMjU4ODguXHJcbiAqL1xyXG5ALW1zLXZpZXdwb3J0IHtcclxuICB3aWR0aDogZGV2aWNlLXdpZHRoO1xyXG59XHJcblxyXG5Admlld3BvcnQge1xyXG4gIHdpZHRoOiBkZXZpY2Utd2lkdGg7XHJcbn1cclxuIiwiQG1peGluIGZhKCkge1xyXG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcclxuICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxufVxyXG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBwcm9wZXJ0eS1zb3J0LW9yZGVyXHJcbi8vIEJ1cmdlciBwYXJ0c1xyXG4vL1xyXG4vLyAoLS0tKSB0b3AgICAgLT4gJjo6YmVmb3JlXHJcbi8vIFstLS1dIG1pZGRsZSAtPiAmXHJcbi8vICgtLS0pIGJvdHRvbSAtPiAmOjphZnRlclxyXG4vLyBWZW5kb3IgcHJlZml4ZXNcclxuJHNhc3MtYnVyZ2VyLWFkZC12ZW5kb3ItcHJlZml4ZXM6IHRydWUgIWRlZmF1bHQ7XHJcblxyXG4vLyBCdXJnZXJcclxuQG1peGluIGJ1cmdlcigkd2lkdGg6IDMwcHgsICRoZWlnaHQ6IDVweCwgJGd1dHRlcjogM3B4LCAkY29sb3I6ICMwMDAsICRib3JkZXItcmFkaXVzOiAwLCAkdHJhbnNpdGlvbi1kdXJhdGlvbjogLjNzKSB7XHJcbiAgJGJ1cmdlci1oZWlnaHQ6ICRoZWlnaHQgIWdsb2JhbDtcclxuICAkYnVyZ2VyLWd1dHRlcjogJGd1dHRlciAhZ2xvYmFsO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW4tdG9wOiAkaGVpZ2h0ICsgJGd1dHRlcjtcclxuICBtYXJnaW4tYm90dG9tOiAkaGVpZ2h0ICsgJGd1dHRlcjtcclxuXHJcbiAgQGlmICRzYXNzLWJ1cmdlci1hZGQtdmVuZG9yLXByZWZpeGVzIHtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIH1cclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxuXHJcbiAgJixcclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogJHdpZHRoO1xyXG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG5cclxuICAgIEBpZiAkYm9yZGVyLXJhZGl1cyAhPSAwIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRzYXNzLWJ1cmdlci1hZGQtdmVuZG9yLXByZWZpeGVzIHtcclxuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgLW8tdHJhbnNmb3JtO1xyXG4gICAgfVxyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgdHJhbnNmb3JtO1xyXG5cclxuICAgIEBpZiAkc2Fzcy1idXJnZXItYWRkLXZlbmRvci1wcmVmaXhlcyB7XHJcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG4gICAgfVxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XHJcbiAgfVxyXG5cclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgfVxyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gICAgdG9wOiAtICgkaGVpZ2h0ICsgJGd1dHRlcik7XHJcbiAgfVxyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICB0b3A6ICRoZWlnaHQgKyAkZ3V0dGVyO1xyXG4gIH1cclxufVxyXG5cclxuLy8gU2VsZWN0IHBhcnRzIG9mIHRoZSBidXJnZXJcclxuQG1peGluIGJ1cmdlci1wYXJ0cyB7XHJcbiAgJixcclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnVyZ2VyLXRvcCB7XHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJ1cmdlci1taWRkbGUge1xyXG4gICYge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnVyZ2VyLWJvdHRvbSB7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBCdXJnZXIgYW5pbWF0aW9uc1xyXG5AbWl4aW4gYnVyZ2VyLXRvLWNyb3NzKCRjb2xvcjogYXV0bykge1xyXG4gICYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG5cclxuICBAaWYgKCRjb2xvciAhPSBhdXRvKSB7XHJcbiAgICAmOjpiZWZvcmUsXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBAaWYgJHNhc3MtYnVyZ2VyLWFkZC12ZW5kb3ItcHJlZml4ZXMge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJGJ1cmdlci1ndXR0ZXIgKyAkYnVyZ2VyLWhlaWdodCkgcm90YXRlKDQ1ZGVnKTtcclxuICAgIH1cclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkYnVyZ2VyLWd1dHRlciArICRidXJnZXItaGVpZ2h0KSByb3RhdGUoNDVkZWcpO1xyXG4gIH1cclxuXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgQGlmICRzYXNzLWJ1cmdlci1hZGQtdmVuZG9yLXByZWZpeGVzIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0gKCRidXJnZXItZ3V0dGVyICsgJGJ1cmdlci1oZWlnaHQpKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgIH1cclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtICgkYnVyZ2VyLWd1dHRlciArICRidXJnZXItaGVpZ2h0KSkgcm90YXRlKC00NWRlZyk7XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnNlY29uZGFyeS1tZW51IHtcclxuICBAaW5jbHVkZSBsaXN0LXJlc2V0KCk7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmb250LXNpemU6IDAuOGVtO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gIGEge1xyXG4gICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICB9XHJcblxyXG4gIC5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xyXG4gICAgY29sb3I6ICRjbHItZ3JleS1tZWRpdW07XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgfVxyXG5cclxuICA+IGxpOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgIGEge1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcclxuICAgICAgICBjb250ZW50OiBcInxcIjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi5zaXRlLWhlYWRlciB7XHJcbiAgLnNlY29uZGFyeS1uYXZpZ2F0aW9uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAuc2Vjb25kYXJ5LW1lbnUge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnNpdGUtc2lkZWJhciB7XHJcbiAgbWFyZ2luLXRvcDogMmVtO1xyXG5cclxuICAud2lkZ2V0LXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcblxyXG4gIC53aWRnZXQ6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgbWFyZ2luLXRvcDogMmVtO1xyXG4gIH1cclxuXHJcbiAgdWwge1xyXG4gICAgQGluY2x1ZGUgbGlzdC1yZXNldCgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuXHJcbiAgICA+IGxpIHtcclxuICAgICAgcGFkZGluZzogMC41ZW0gMDtcclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBsaWdodGVuKCRjbHItc2lsdmVyLCAxMCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnNpdGUtZm9vdGVyIHtcclxuICBwYWRkaW5nOiA2MHB4IDJlbSAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItYmFja2dyb3VuZC1jb2xvcjtcclxuICBjb2xvcjogJGZvb3Rlci10ZXh0LWNvbG9yO1xyXG5cclxuICBhIHtcclxuICAgIGNvbG9yOiAkZm9vdGVyLWxpbmstY29sb3I7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogJGZvb3Rlci1saW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci10ZXh0LWNvbnRhaW5lciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbGlzaCkge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNpdGUtZm9vdGVyLWJyYW5kLWltYWdlIHtcclxuICAgIG1heC13aWR0aDogMTUwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMzBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWF4LXdpZHRoOiAyMDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zaXRlLWZvb3Rlci10b3Age1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDc1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2l0ZS1mb290ZXItYm90dG9tIHtcclxuICAgIHBhZGRpbmc6IDI1cHggMDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY2xyLXNpbHZlcjtcclxuXHJcbiAgICAuc2Vjb25kYXJ5LW1lbnUge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcblxyXG4gICAgICAubWVudS1pdGVtIGEge1xyXG4gICAgICAgIGNvbG9yOiAkY2xyLWdyZXktbGlnaHQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyLW1lbnUge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxpc2gpIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIH1cclxuXHJcbiAgICAubWVudS1pdGVtIHtcclxuICAgICAgZmxleC1iYXNpczogNTAlO1xyXG4gICAgICBtYXJnaW46IC41ZW0gMDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxpc2gpIHtcclxuICAgICAgICBtYXJnaW46IC41ZW0gMCAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogMjUlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgJGdsb2JhbC1tYXJnaW4gLyAyO1xyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgID4gbGkgPiBhOmZpcnN0LWNoaWxkIHtcclxuICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zdWItbWVudSB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxpc2gpIHtcclxuICAgICAgICBtYXJnaW46IDFlbSAwIDAgMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLm1lbnUtaXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogJGNsci1ncmVlbi1kYXJrO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3ItbGluay1ob3ZlcjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mb290ZXItdGV4dCB7XHJcbiAgICBtYXJnaW46IDRlbSAwIDFlbTtcclxuICAgIGNvbG9yOiAkY2xyLW1pbmUtc2hhZnQ7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWFyZ2luOiA0ZW0gMDtcclxuICAgICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgICAgZm9udC1zaXplOiAuOWVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci1sb2dvcyB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mb290ZXItc29jaWFsLFxyXG4gIC5mb290ZXItbG9nb3Mge1xyXG4gICAgbWFyZ2luLXRvcDogMmVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci1sb2dvIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWF4LWhlaWdodDogODVweDtcclxuICAgIG1hcmdpbjogMCBhdXRvIDFlbTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsaXNoKSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luOiAxZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyLXNvY2lhbCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgIG9yZGVyOiAyO1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9vdGVyLXNvY2lhbC10ZXh0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29sb3I6ICRjbHItbWluZS1zaGFmdDtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIGNvbG9yOiAkY2xyLWdyZXktbGlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDJlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mb290ZXItc29jaWFsLWxpbmtzIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIG1hcmdpbjogMWVtIDAgMDtcclxuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rlci1zb2NpYWwtaXRlbSB7XHJcbiAgICAgIG1hcmdpbjogMCAuNWVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci1zb2NpYWwsXHJcbiAgLmZvb3Rlci1zb2NpYWwtaXRlbSAuZmEge1xyXG4gICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICB9XHJcbn1cclxuXHJcbi5sZWdhbC1saW5rcyB7XHJcbiAgQGluY2x1ZGUgbGlzdC1yZXNldCgpO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgID4gbGkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMWVtO1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5oZXJvIHtcclxuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvdmVyKCk7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgQGluY2x1ZGUgYmctb3ZlcmxheSgpO1xyXG4gIH1cclxuXHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmc6IDJlbSAwO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmhlcm8tbWFpbiB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgIEBpbmNsdWRlIGJnLW92ZXJsYXkoKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY292ZXIoKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgID4gKiB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuaGVyby10aXRsZSB7XHJcbiAgICBjb2xvcjogJGNsci13aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMi40ZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZm9udC1zaXplOiA0LjJlbTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oZXJvLWlubmVyIHtcclxuICAgIHBhZGRpbmc6IDRlbSAyZW07XHJcbiAgICBjb2xvcjogJGNsci13aGl0ZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmc6IDVlbSAwIDRlbSA0ZW07XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgcGFkZGluZzogN2VtIDAgNWVtIDZlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oZXJvLWNvbnRlbnQge1xyXG4gICAgbWFyZ2luLXRvcDogMmVtO1xyXG4gICAgZm9udC1zaXplOiAxMjAlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgLy9tYXJnaW4tdG9wOiA0ZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubGlmdC11cHMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgcGFkZGluZzogMCAyZW0gMWVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmxpZnQtdXBzLWlubmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbHItd2lsZC1zYW5kO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICA+ICoge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmxpZnQtdXAge1xyXG4gICAgbWFyZ2luLXRvcDogMWVtO1xyXG4gICAgcGFkZGluZzogMS41ZW0gMmVtIC43NWVtO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMjBweDtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci13aGl0ZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmc6IDIuNWVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5hY3Rpb25zIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubGlmdC11cC10aXRsZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgZm9udC1zaXplOiAxLjdlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbjogMWVtIDAgLTFlbSAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4ud2hhdHMtaGFwcGVuaW5nIHtcclxuICBwYWRkaW5nOiAxLjVlbSAxZW07XHJcbiAgYmFja2dyb3VuZDogJGNsci13aGl0ZTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nOiA0ZW07XHJcbiAgfVxyXG5cclxuICBoMiB7XHJcbiAgICBtYXJnaW46IDAgMCAwLjVlbSAwO1xyXG5cclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ldmVudC1pdGVtcyB7XHJcbiAgICAuaGVudHJ5IHtcclxuICAgICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyZW07XHJcblxyXG4gICAgICAuZW50cnktbGluayB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5lbnRyeS1maWd1cmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYXJ0aWNsZS1maWVsZHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRjbHItYmxhY2ssIDAuMik7XHJcblxyXG4gICAgICAgIC5lbnRyeS10aXRsZXMge1xyXG4gICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICBtYXJnaW46IDFlbTtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0LjVlbTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuMmVtO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNsci13aGl0ZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgY29sb3I6ICRjbHItd2hpdGU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZW50cnktbWV0YSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwLjZlbSAwLjhlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLWdyZWVuLWxpZ2h0O1xyXG4gICAgICAgIGNvbG9yOiAkY2xyLXdoaXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgdG9wOiB1bnNldDtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIHdpZHRoOiA0ZW07XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5lbnRyeS1zdGFydC1kYXRlIHtcclxuICAgICAgICAgIGNvbG9yOiAkY2xyLWJsYWNrO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNsci13aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5lbnRyeS1zdGFydC1tb250aCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5ld3MtaXRlbXMge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuXHJcbiAgICAuaGVudHJ5IHtcclxuICAgICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMS8yLCAkY3ljbGU6IDIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaGVudHJ5LWNvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5lbnRyeS10aXRsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZmlndXJlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgY29sdW1uKDIvNSk7XHJcbiAgICAgICAgaGVpZ2h0OiAxMjVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgaGVpZ2h0OiA3NXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmVudHJ5LWZpZ3VyZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFydGljbGUtZmllbGRzIHtcclxuICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMy81KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5lbnRyeS10YWcge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBtYXJnaW4tdG9wOiAuMjVlbTtcclxuICAgICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICRjbHItZ290aGljO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZW50cnktbWV0YSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cclxuICAgICAgICAuZW50cnktbWV0YS1pdGVtIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmVudHJ5LW1ldGEtaXRlbSB7XHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC41ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZW50cnktbWV0YS1pdGVtLmVudHJ5LXRhZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAuNWVtIDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZW50cnktdGl0bGUge1xyXG4gICAgbWFyZ2luOiAwIDAgMWVtIDA7XHJcbiAgICBmb250LXNpemU6IDEuM2VtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICB9XHJcblxyXG4gIC5maXJzdC1yb3cuaGFzLXBvc3QtdGh1bWJuYWlsIC5lbnRyeS10aXRsZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgfVxyXG59XHJcblxyXG4uaG9tZSAud2hhdHMtaGFwcGVuaW5nLFxyXG4uc2luZ2xlLWV2ZW50IC53aGF0cy1oYXBwZW5pbmcge1xyXG4gIC5uZXdzLWl0ZW1zIHtcclxuICAgIC5maXJzdC1yb3cge1xyXG4gICAgICAuZmlndXJlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgY29sdW1uKDEvMSk7XHJcbiAgICAgICAgaGVpZ2h0OiAyMzBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFydGljbGUtZmllbGRzIHtcclxuICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMS8xKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmVudHJ5LXRhZyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLjI1ZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnBvc3QtdHlwZS1hcmNoaXZlLWV2ZW50IC53aGF0cy1oYXBwZW5pbmcge1xyXG4gIC5hcnRpY2xlLWZpZWxkcyB7XHJcbiAgICAuZW50cnktdGl0bGUge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi8vIExpc3QgZnVuY3Rpb25zIGNvdXJ0ZXN5IG9mIFRlYW0gU2Fzcy5cclxuXHJcbi8vIEdldCAgcGVyY2VudGFnZSBmcm9tIGEgZ2l2ZW4gcmF0aW8uXHJcbkBmdW5jdGlvbiBfZ2V0LXNwYW4oJHJhdGlvOiAxKSB7XHJcbiAgQHJldHVybiAkcmF0aW8gKiAxMDA7XHJcbn1cclxuXHJcbi8vIFdvcmsgb3V0IHRoZSBjb2x1bW4gd2lkdGhzIGJhc2VkIG9uIHRoZSByYXRpbyBhbmQgZ3V0dGVyIHNpemVzLlxyXG5AZnVuY3Rpb24gX2dldC1jb2x1bW4oJHJhdGlvczogMSwgJGd1dHRlcjogbWFwLWdldCgkamVldCwgJ2d1dHRlcicpKSB7XHJcbiAgJHJhdGlvczogaWYobm90IG1hcC1nZXQoJGplZXQsICdwYXJlbnQtZmlyc3QnKSwgX3JldmVyc2UoJHJhdGlvcyksICRyYXRpb3MpO1xyXG4gICR3aWR0aDogMTAwO1xyXG5cclxuICBAZWFjaCAkcmF0aW8gaW4gJHJhdGlvcyB7XHJcbiAgICAkZ3V0dGVyOiAkZ3V0dGVyIC8gJHdpZHRoICogMTAwO1xyXG4gICAgJHdpZHRoOiAxMDAgKiAkcmF0aW8gLSAkZ3V0dGVyICsgJHJhdGlvICogJGd1dHRlcjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHdpZHRoICRndXR0ZXI7XHJcbn1cclxuXHJcbi8vIEdldCB0aGUgc2V0IGxheW91dCBkaXJlY3Rpb24gZm9yIHRoZSBwcm9qZWN0LlxyXG5AZnVuY3Rpb24gX2dldC1sYXlvdXQtZGlyZWN0aW9uKCkge1xyXG4gICRkaXJlY3Rpb246IGlmKG1hcC1nZXQoJGplZXQsICdsYXlvdXQtZGlyZWN0aW9uJykgPT0gJ1JUTCcsIHJpZ2h0LCBsZWZ0KTtcclxuXHJcbiAgQHJldHVybiAkZGlyZWN0aW9uO1xyXG59XHJcblxyXG4vLyBSZXBsYWNlIGEgc3BlY2lmaWVkIGxpc3QgdmFsdWUgd2l0aCBhIG5ldyB2YWx1ZSAodXNlcyBidWlsdCBpbiBzZXQtbnRoKCkgaWYgYXZhaWxhYmxlKVxyXG5AZnVuY3Rpb24gX3JlcGxhY2UtbnRoKCRsaXN0LCAkaW5kZXgsICR2YWx1ZSkge1xyXG4gIC8vIEZhbGxiYWNrIGZvciBTYXNzIDMuMlxyXG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoJ3NldC1udGgnKSAhPSB0cnVlIHtcclxuICAgICRyZXN1bHQ6ICgpO1xyXG4gICAgJGluZGV4OiBpZigkaW5kZXggPCAwLCBsZW5ndGgoJGxpc3QpICsgJGluZGV4ICsgMSwgJGluZGV4KTtcclxuXHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkbGlzdCkge1xyXG4gICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgaWYoJGkgPT0gJGluZGV4LCAkdmFsdWUsIG50aCgkbGlzdCwgJGkpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgLy8gU2FzcyAzLjNcclxuICAkcmVzdWx0OiBzZXQtbnRoKCRsaXN0LCAkaW5kZXgsICR2YWx1ZSk7XHJcblxyXG4gIEByZXR1cm4gJHJlc3VsdDtcclxufVxyXG5cclxuLy8gUmV2ZXJzZSBhIGxpc3QgKHByb2dyZXNzaXZlbHkgZW5oYW5jZWQgZm9yIFNhc3MgMy4zKVxyXG5AZnVuY3Rpb24gX3JldmVyc2UoJGxpc3QpIHtcclxuICAvLyBTYXNzIDMuMlxyXG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoJ3NldC1udGgnKSAhPSB0cnVlIHtcclxuICAgICRyZXN1bHQ6ICgpO1xyXG5cclxuICAgIEBmb3IgJGkgZnJvbSBsZW5ndGgoJGxpc3QpICogLTEgdGhyb3VnaCAtMSB7XHJcbiAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsIGFicygkaSkpKTtcclxuICAgIH1cclxuXHJcbiAgICBAcmV0dXJuICRyZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvLyBTYXNzIDMuM1xyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggZmxvb3IobGVuZ3RoKCRsaXN0KSAvIDIpICsgMSB7XHJcbiAgICAkdG1wOiBudGgoJGxpc3QsICRpKTtcclxuICAgICRsaXN0OiBzZXQtbnRoKCRsaXN0LCAkaSwgbnRoKCRsaXN0LCAtJGkpKTtcclxuICAgICRsaXN0OiBzZXQtbnRoKCRsaXN0LCAtJGksICR0bXApO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkbGlzdDtcclxufVxyXG5cclxuLy8gR2V0IHRoZSBvcHBvc2l0ZSBkaXJlY3Rpb24gdG8gYSBnaXZlbiB2YWx1ZS5cclxuQGZ1bmN0aW9uIF9vcHBvc2l0ZS1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xyXG4gIEBpZiAkZGlyZWN0aW9uID09ICdsZWZ0JyB7XHJcbiAgICBAcmV0dXJuIHJpZ2h0O1xyXG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAncmlnaHQnIHtcclxuICAgIEByZXR1cm4gbGVmdDtcclxuICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gJ3RvcCcge1xyXG4gICAgQHJldHVybiBib3R0b207XHJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09ICdib3R0b20nIHtcclxuICAgIEByZXR1cm4gdG9wO1xyXG4gIH0gQGVsc2UgaWYgaW5kZXgoJ2x0cicgJ0xUUicsICRkaXJlY3Rpb24pIHtcclxuICAgIEByZXR1cm4gcnRsO1xyXG4gIH0gQGVsc2UgaWYgaW5kZXgoJ3J0bCcgJ1JUTCcsICRkaXJlY3Rpb24pIHtcclxuICAgIEByZXR1cm4gbHRyO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQHdhcm4gJ2AjeyRkaXJlY3Rpb259YCBpcyBub3QgYSBkaXJlY3Rpb247IHBsZWFzZSBtYWtlIHN1cmUgeW91ciBkaXJlY3Rpb24gaXMgYWxsIGxvd2VyY2FzZS4nO1xyXG4gICAgQHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4udHdlZXRzIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6IDEyODBweDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBwYWRkaW5nOiAyZW07XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIHBhZGRpbmc6IDAgMCA0ZW07XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgLmRhdGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAuNWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcbiAgICAuZmEge1xyXG4gICAgICBjb2xvcjogIzNlOTBiYjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5pbWFnZSB7XHJcbiAgICBAaW5jbHVkZSBjb2x1bW4oMi82KTtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogODBweDtcclxuICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiA3cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbGlzaCkge1xyXG4gICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICB3aWR0aDogODBweDtcclxuICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zdG9yeSB7XHJcbiAgICBAaW5jbHVkZSBjb2x1bW4oNC82KTtcclxuXHJcbiAgICBhIHtcclxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgIGhlaWdodDogOTJweDtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogNDtcclxuICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ5LWxpbmUge1xyXG4gICAgbWFyZ2luOiAuNWVtO1xyXG4gICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uLXR3aXR0ZXItZm9sbG93IHtcclxuICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICB9XHJcblxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gIC5ob21lIC50d2VldHMge1xyXG4gICAgcGFkZGluZzogM2VtIDA7XHJcbiAgfVxyXG59XHJcblxyXG4udHdlZXQtbGlzdCB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuICBtYXJnaW4tdG9wOiAxZW07XHJcblxyXG4gIC50d2VldCB7XHJcbiAgICBib3JkZXItc3BhY2luZzogLjVlbTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsaXNoKSB7XHJcbiAgICAgIEBpbmNsdWRlIGNvbHVtbigxLzIsICRjeWNsZTogMik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgQGluY2x1ZGUgY29sdW1uKDEvMywgJGN5Y2xlOiAzKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnBhcnRuZXJzIHtcclxuICBwYWRkaW5nOiAyZW0gMDtcclxuXHJcbiAgYmFja2dyb3VuZDogJGNsci13aGl0ZTtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgcGFkZGluZzogNGVtIDA7XHJcbiAgfVxyXG5cclxuICAucGFydG5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xyXG4gIH1cclxuXHJcbiAgLnBhcnRuZXItbGluayB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMjBweDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5yZWxhdGVkLXBlcnNvbnMsXHJcbi5wZXJzb25zLXNob3J0Y29kZSB7XHJcbiAgbWFyZ2luOiAyZW0gMDtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgbWFyZ2luOiA0ZW0gMDtcclxuICB9XHJcblxyXG4gIC5pdGVtcyB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG4gIH1cclxuXHJcbiAgLnJlbGF0ZWQtc2VjdGlvbi10aXRsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgfVxyXG5cclxuICAucmVsYXRlZC1wZXJzb24ge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgQGluY2x1ZGUgY29sdW1uKDEvMiwgJGN5Y2xlOiAyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZWxhdGVkLXBlcnNvbi5oZW50cnkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG4gIH1cclxuXHJcbiAgLmVudHJ5LWZpZ3VyZSB7XHJcbiAgICBAaW5jbHVkZSBjb2x1bW4oNC8xMik7XHJcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG4gICAgbWFyZ2luLXRvcDogMWVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxpc2gpIHtcclxuICAgICAgQGluY2x1ZGUgY29sdW1uKDMvMTIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgQGluY2x1ZGUgY29sdW1uKDIvMTIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgQGluY2x1ZGUgY29sdW1uKDQvMTIpO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGJvcmRlcjogc29saWQgM3B4ICRjbHItZ3JleS12ZXJ5bGlnaHQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZWxhdGVkLXBlcnNvbi1uYW1lIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAuMDJlbTtcclxuICB9XHJcblxyXG4gIC5qb2ItdGl0bGUge1xyXG4gICAgbWFyZ2luOiAuMjVlbSAwO1xyXG4gICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLjA3ZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgLmNvbnRhY3QtaW5mb3JtYXRpb24ge1xyXG4gICAgbWFyZ2luOiAwLjVlbSAwIDAgMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG5cclxuICAgIGFbaHJlZl49XCJ0ZWw6XCJdIHtcclxuICAgICAgY29sb3I6ICRjbHItZ3JleS1tZWRpdW07XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAuMzVlbTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IC4yZW07XHJcbiAgICAgIGNvbG9yOiBsaWdodGVuKCRjbHItZ3JleS1saWdodCwgMjAlKTtcclxuXHJcbiAgICAgICYuZmEtbW9iaWxlIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC42ZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wZXJzb25zLXNob3J0Y29kZSB7XHJcbiAgLnBlcnNvbi10b3Age1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLmVudHJ5LWZpZ3VyZSB7XHJcbiAgICAgIG1heC13aWR0aDogMTAwcHg7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbXBhY3Qge1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIC5jb250YWN0LWluZm9ybWF0aW9uIHtcclxuICAgICAgbWFyZ2luLXRvcDogMWVtO1xyXG5cclxuICAgICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJpbWFyeSB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsaXNoKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2Vjb25kYXJ5IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxpc2gpIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnN0cmlwZSB7XHJcbiAgcGFkZGluZzogM2VtIDJlbTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nOiAyZW0gMDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIHBhZGRpbmc6IDNlbSAwO1xyXG4gIH1cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RyaXBlLWJhY2tncm91bmQtY29sb3I7XHJcbiAgY29sb3I6ICRzdHJpcGUtdGV4dC1jb2xvcjtcclxuICBmb250LXNpemU6ICRzdHJpcGUtZm9udC1zaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiAkc3RyaXBlLWZvbnQtd2VpZ2h0O1xyXG5cclxuICAuc3RyaXBlLXRpdGxlIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBjb2xvcjogJGNsci13aGl0ZTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcblxyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RyaXBlLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgY29sb3I6ICRzdHJpcGUtYnV0dG9uLXRleHQtY29sb3I7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RyaXBlLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyO1xyXG4gICAgICBjb2xvcjogJHN0cmlwZS1idXR0b24tdGV4dC1jb2xvci1ob3ZlcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4uc3VjY2Vzcy1zdG9yaWVzIHtcclxuICBwYWRkaW5nOiAyZW0gMDtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgcGFkZGluZzogMy41ZW0gMDtcclxuICB9XHJcblxyXG4gIC5zdG9yeSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oZW50cnkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkZW50cnktYm9yZGVyLXJhZGl1cztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbHItd2hpdGU7XHJcbiAgfVxyXG5cclxuICAuZW50cnktZmlndXJlLWxpbmsge1xyXG4gICAgaGVpZ2h0OiAyNDVweDtcclxuICB9XHJcblxyXG4gIC5lbnRyeS1maWd1cmUge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGVudHJ5LWJvcmRlci1yYWRpdXMgJGVudHJ5LWJvcmRlci1yYWRpdXMgMCAwO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgfVxyXG5cclxuICAuZW50cnktaW5uZXIge1xyXG4gICAgcGFkZGluZzogMWVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjVlbTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmc6IDEuNWVtIDEuNWVtIDQuNWVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmVudHJ5LXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMS41MzMzMzNlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgfVxyXG5cclxuICAuZW50cnktbWV0YSB7XHJcbiAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICBjb2xvcjogJGNsci1nb3RoaWM7XHJcbiAgICBmb250LXNpemU6IC44NWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgIC50YWcge1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHJpZ2h0OiAzcHg7XHJcbiAgICAgICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgICAgICBjb250ZW50OiAnLCAnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhZzpsYXN0LW9mLXR5cGU6OmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmVudHJ5LXN1bW1hcnkge1xyXG4gICAgbWFyZ2luOiAxLjVlbSAwO1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbi1yZWFkLW1vcmUge1xyXG4gICAgbWFyZ2luLXRvcDogMS41ZW07XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206IDFlbTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGJvdHRvbTogMjRweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5hY3Rpb25zIHtcclxuICAgIG1hcmdpbjogMmVtIDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLmluY3ViYXRpb24tcHJvY2VzcyB7XHJcbiAgcGFkZGluZzogMmVtO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjbHItd2hpdGU7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nOiA0ZW0gMDtcclxuICB9XHJcblxyXG4gIC5zZWN0aW9uLWhlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAyZW07XHJcbiAgfVxyXG5cclxuICAuc2VjdGlvbi10aXRsZSB7XHJcbiAgICBjb2xvcjogJGNsci1ncmVlbi1kYXJrO1xyXG4gIH1cclxuXHJcbiAgLmluY3ViYXRpb24tcHJvY2Vzcy1zbGlkZXIge1xyXG5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbHItd2lsZC1zYW5kO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMTQwcHgpO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjgwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgYm90dG9tOiAtNDBweDtcclxuXHJcbiAgICAgIGxpIGJ1dHRvbjo6YmVmb3JlIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNsaWRlcyB7XHJcbiAgICBwYWRkaW5nOiAwLjVlbSAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci1taW5lLXNoYWZ0O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNWVtO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY2xyLXNpbHZlcjtcclxuICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGVudHJ5LWJvcmRlci1yYWRpdXM7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkZW50cnktYm9yZGVyLXJhZGl1cztcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaW5jdWJhdGlvbi1wcm9jZXNzLXBhZ2UtbGlzdCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkZW50cnktYm9yZGVyLXJhZGl1cyAkZW50cnktYm9yZGVyLXJhZGl1cyAwIDA7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNsaWNrLXRyYWNrIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgfVxyXG5cclxuICAuc2xpY2stc2xpZGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICA+IGRpdiB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZSxcclxuICAgIC5zbGlkZS1pbm5lciB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zbGlkZS1pbm5lciB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDQyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNsaWRlLXRpdGxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IC41ZW07XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtaDE7XHJcbiAgfVxyXG5cclxuICAuaW5jdWJhdGlvbi1wcm9jZXNzLXN0ZXAtbnVtYmVyIHtcclxuICAgIGNvbG9yOiAkY2xyLWdyZWVuLWxpZ2h0O1xyXG4gIH1cclxuXHJcbiAgLnNsaWRlLWZpZWxkcyB7XHJcbiAgICBwYWRkaW5nOiAyZW07XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICB3aWR0aDogNjAlO1xyXG4gICAgICBwYWRkaW5nOiAzZW07XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgcGFkZGluZzogNGVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgICBwYWRkaW5nOiA1ZW0gNmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiAyZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpZGUtbW9iaWxlLXRpdGxlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDAuM2VtIDFlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbHItbWluZS1zaGFmdDtcclxuICAgIGNvbG9yOiAkY2xyLXdoaXRlO1xyXG4gICAgZm9udC1zaXplOiAxLjNlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBAaW5jbHVkZSBmYSgpO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcclxuICAgICAgY29udGVudDogJ1xcZjBmZSc7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmU6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICdcXGYxNDYnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNsaWRlLWZpZWxkcyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgbWFyZ2luOiAwIDFlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRlbnRyeS1ib3JkZXItcmFkaXVzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci13aGl0ZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zbGlkZS1pbWFnZSB7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvdmVyKCk7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgd2lkdGg6IDQwJTtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkZW50cnktYm9yZGVyLXJhZGl1cztcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgLmlubmVyIHtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDYwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBwYWRkaW5nOiAuNmVtIDJlbTtcclxuICB9XHJcblxyXG4gIC5hcnJvdyB7XHJcbiAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXIoKTtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogMmVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5hcnJvdy1wcmV2aW91cyB7XHJcbiAgICBsZWZ0OiAtMWVtO1xyXG4gIH1cclxuXHJcbiAgLmFycm93LW5leHQge1xyXG4gICAgcmlnaHQ6IC0xZW07XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLmZhY2Vib29rIHtcclxuICBwYWRkaW5nOiAyZW0gMDtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgcGFkZGluZzogNGVtIDA7XHJcbiAgfVxyXG5cclxuICAuY29sdW1uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAuZmFjZWJvb2staXRlbSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbGlzaCkge1xyXG4gICAgICBAaW5jbHVkZSBjb2x1bW4oMS8yLCAkY3ljbGU6IDIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIEBpbmNsdWRlIGNvbHVtbigxLzMsICRjeWNsZTogMyk7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmltYWdlIHtcclxuICAgICAgaGVpZ2h0OiAyMDBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIGhlaWdodDogMjQwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRjbHItYmxhY2s7XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJGNsci1ncmVlbi1kYXJrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLmluc3RhZ3JhbSB7XHJcbiAgcGFkZGluZzogMmVtIDA7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIHBhZGRpbmc6IDRlbSAwO1xyXG4gIH1cclxuXHJcbiAgLmNvbHVtbiB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgLmluc3RhZ3JhbS1pdGVtIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsaXNoKSB7XHJcbiAgICAgIEBpbmNsdWRlIGNvbHVtbigxLzIsICRjeWNsZTogMik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgQGluY2x1ZGUgY29sdW1uKDEvMywgJGN5Y2xlOiAzKTtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuaW1hZ2Uge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkY2xyLWJsYWNrO1xyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRjbHItZ3JlZW4tZGFyaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4uc2luZ2xlLWV2ZW50IHtcclxuICAuZW50cnktcmVnaXN0cmF0aW9uIHtcclxuICAgIG1hcmdpbi10b3A6IDJlbTtcclxuXHJcbiAgICBsZWdlbmQge1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG5cclxuICAgICAgJi5oYXMtZXJyb3Ige1xyXG4gICAgICAgIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBkaXYuaGFzLWVycm9yIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0Lmhhcy1lcnJvciB7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1lcnJvci1jb2xvcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkaW5wdXQtZXJyb3ItY29sb3IsIDQwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1zdWJtaXRdIHtcclxuICAgICAgbWFyZ2luLXRvcDogMWVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmV2ZW50LWNvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgb3JkZXI6IDI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZXZlbnQtZGV0YWlscyB7XHJcbiAgICAuZXZlbnQtZGV0YWlsLXRpdGxlIHtcclxuICAgICAgY29sb3I6ICRjbHItZ3JleS1tZWRpdW07XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMS41ZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQoKTtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG5cclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XHJcblxyXG4gICAgICAgIHNwYW46bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMmVtO1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBjb2xvcjogJGNsci1ncmV5LW1lZGl1bTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmV2ZW50LXdlYnNpdGUgYSwgaDMge1xyXG4gICAgICAgIG1hcmdpbjogMC4xZW0gMCAwIDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZmEge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDAuMmVtO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgY29sb3I6ICRjbHItZ3JleS1tZWRpdW07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5ldmVudC1zdGFydC1kYXRlIHtcclxuICAgICAgICBjb2xvcjogJGNsci1ncmV5LW1lZGl1bTtcclxuXHJcbiAgICAgICAgdGltZSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGNvbG9yOiAkY2xyLWJsYWNrO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5ldmVudC1yZWdpc3RyYXRpb24ge1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgbWFyZ2luOiAwLjhlbSAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgIGNvbG9yOiAkY2xyLWdyZXktbWVkaXVtO1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idXR0b24ge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMmVtO1xyXG4gICAgICAgICAgY29sb3I6ICRjbHItd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAud2hhdHMtaGFwcGVuaW5nIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbHItZ3JleS1saWdodGVzdDtcclxuICB9XHJcbn1cclxuIiwiLmZsZXhpYmxlLWNhc2VzIHtcclxuICAuZW50cnktZmlndXJlLWxpbmssXHJcbiAgLmVudHJ5LWZpZ3VyZSB7XHJcbiAgICBoZWlnaHQ6IDIyMHB4O1xyXG4gIH1cclxufSIsIkBpbXBvcnQgXCIuLi9iYXNlL3ZhcmlhYmxlc1wiO1xyXG5cclxuLnNlYXJjaCB7XHJcbiAgLmNhcmQge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgZmxleDogMSAxIDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmVudHJ5LWZpZ3VyZSB7XHJcbiAgICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMzVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBoZWlnaHQ6IDE3MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5zaW5nbGUtY29udGVudCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0ZW07XHJcbiAgfVxyXG5cclxuICAuY29udGVudC13cmFwIHtcclxuICAgIG1heC13aWR0aDogMTI4MHB4O1xyXG4gIH1cclxuXHJcbiAgLmhlbnRyeSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAkZW50cnktYm9yZGVyLXJhZGl1cztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbHItd2hpdGU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZW50cnktZmlndXJlIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGVudHJ5LWJvcmRlci1yYWRpdXM7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRlbnRyeS1ib3JkZXItcmFkaXVzO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZW50cnktZmlndXJlLWNhcHRpb24ge1xyXG4gICAgICAgIHBhZGRpbmc6IC4yNWVtIDFlbTtcclxuICAgICAgICBjb2xvcjogJGNsci1ncmV5LWxpZ2h0O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDQwMHB4KSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiAuNWVtIDEuNWVtO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7XHJcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZW50cnktaW5uZXIge1xyXG4gICAgICBwYWRkaW5nOiAxZW07XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgcGFkZGluZzogMi41ZW0gNGVtO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZmEtY2FsZW5kYXIge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLjVlbTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmZ1bGwtZGF0ZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVlbTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mdWxsLWRhdGUge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICAgIGNvbG9yOiAkY2xyLWdyZXktbGlnaHQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC5lbnRyeS1tZXRhIHtcclxuICAgICAgLmVudHJ5LXRhZyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLjI1ZW07XHJcbiAgICAgICAgY29sb3I6ICRjbHItZ3JleS1saWdodDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgY29sb3I6ICRjbHItZ290aGljO1xyXG4gICAgICAgICAgZm9udC1zaXplOiAuODVlbTtcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAaW1wb3J0IFwiLi4vYmFzZS92YXJpYWJsZXNcIjtcclxuXHJcbi5zaW5nbGUtY2FzZSB7XHJcblxyXG4gIC5jb250ZW50LXdyYXAge1xyXG4gICAgbWF4LXdpZHRoOiAxMjgwcHg7XHJcbiAgfVxyXG5cclxuICAubGVhZCB7XHJcbiAgICBjb2xvcjogJGNsci1ncmV5LW1lZGl1bTtcclxuICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICB9XHJcblxyXG4gIC5jYXNlLWxvZ28ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNGVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNhc2UtaW5mby1jb250YWluZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG4gICAgZm9udC1zaXplOiAuOTRlbTtcclxuICB9XHJcblxyXG4gIC5jYXNlLWluZm8tdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuXHJcbiAgLmNhc2Utd2Vic2l0ZSxcclxuICAuY2FzZS1pbmN1YmF0aW9uLXBoYXNlIHtcclxuICAgIGZvbnQtc2l6ZTogMS4wNjZlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG5cclxuICAuY2FzZS1pbmZvLWdyb3VwIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgLmNhc2UtaW5mby1ncm91cC1pY29uIHtcclxuICAgICAgd2lkdGg6IDJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFjdC1wZXJzb24ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgICAucGVyc29uLW5hbWUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmb250LXNpemU6IDAuOTMzMzNlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudHdlZXRzIHtcclxuICAgIHBhZGRpbmc6IDJlbSAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgcGFkZGluZzogMy41ZW0gMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5yZWxhdGVkLW5ld3Mge1xyXG4gICAgLmhlbnRyeSB7XHJcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDJlbTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAuZW50cnktZmlndXJlIHtcclxuICAgICAgICBAaW5jbHVkZSBjb2x1bW4oMi81KTtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuYXJ0aWNsZS1maWVsZHMge1xyXG4gICAgICAgIEBpbmNsdWRlIGNvbHVtbigzLzUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmVudHJ5LW1ldGEge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBmb250LXNpemU6IDAuOGVtO1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblxyXG4gICAgICAgIC5lbnRyeS1tZXRhLWl0ZW0ge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZW50cnktdGFnIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zaW5nbGUtcG9zdCB7XHJcbiAgLmhlbnRyeSB7XHJcbiAgICAuZW50cnktZGF0ZSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgcGFkZGluZzogMC42ZW0gMC44ZW07XHJcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDZweDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci1ncmVlbi1saWdodDtcclxuICAgICAgY29sb3I6ICRjbHItd2hpdGU7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICB0b3A6IHVuc2V0O1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogNGVtO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZW50cnktZGF5IHtcclxuICAgICAgICBjb2xvcjogJGNsci1ibGFjaztcclxuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgIGNvbG9yOiAkY2xyLXdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmVudHJ5LW1vbnRoIHtcclxuICAgICAgICBmb250LXNpemU6IDFlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGVzXCI7XHJcblxyXG4ucGFnZS10ZW1wbGF0ZS1pbmN1YmF0aW9uLXByb2Nlc3Mge1xyXG5cclxuICAucGFnZS1oZWFkZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xyXG4gIH1cclxuXHJcbiAgLmluY3ViYXRpb24tcHJvY2Vzcy1wYWdlLWxpc3Qge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIHdpZHRoOiA5OCU7XHJcbiAgICAgIG1heC13aWR0aDogMTE0MHB4O1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaW5jdWJhdGlvbi1wcm9jZXNzLXBhZ2Utc2VsZWN0IHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xyXG4gICAgICBmb250LXNpemU6IDEuMjVlbTtcclxuICAgIH1cclxuXHJcbiAgICAucHJvY2Vzcy1wYWdlLXNlbGVjdCB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tYWluLWNvbnRlbnQge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci13aGl0ZTtcclxuICB9XHJcblxyXG4gIC5jb250ZW50LXdyYXBwZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGVudHJ5LWJvcmRlci1yYWRpdXM7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLXdoaXRlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDRlbTtcclxuICAgIH1cclxuXHJcbiAgICA+ICoge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nOiAyZW07XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgcGFkZGluZzogNGVtIDhlbTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250ZW50LWlubmVyIHtcclxuICAgIC5jYXJkIC5lbnRyeS1maWd1cmUtbGluayB7XHJcbiAgICAgIGhlaWdodDogMjUwcHg7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBoZWlnaHQ6IDE3NXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWFpbi1lbnRyeSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTA4MHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBwYWRkaW5nLXRvcDogNGVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA2ZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmVudHJ5LXRpdGxlIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtaDE7XHJcblxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBjb2xvcjogJGNsci1ncmVlbi1saWdodDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC4yNWVtO1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXIoKTtcclxuICAgICAgICAgIGxlZnQ6IC0yZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucHJvY2Vzcy1kdXJhdGlvbiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcclxuICAgIGNvbG9yOiAkY2xyLWdyZXktbGlnaHQ7XHJcbiAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB9XHJcblxyXG4gIC5pbmN1YmF0aW9uLXByb2Nlc3MtYWRqYWNlbnQtbGluayB7XHJcbiAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXIoKTtcclxuICAgIGZvbnQtc2l6ZTogNGVtO1xyXG5cclxuICB9XHJcblxyXG4gIC5pbmN1YmF0aW9uLXByb2Nlc3MtbmV4dCB7XHJcbiAgICByaWdodDogLjVlbTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmluY3ViYXRpb24tcHJvY2Vzcy1wcmV2aW91cyB7XHJcbiAgICBsZWZ0OiAuNWVtO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tb2JpbGUtbmF2aWdhdGlvbi1hcnJvd3Mge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogNGVtIDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLXdpbGQtc2FuZDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbmN1YmF0aW9uLXByb2Nlc3MtYWRqYWNlbnQtbGluayB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmFycm93LXRpdGxlIHtcclxuICAgICAgbWFyZ2luLXRvcDogLjE1ZW07XHJcbiAgICAgIGNvbG9yOiAkY2xyLWdyZXktbWVkaXVtLWxpZ2h0O1xyXG4gICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMDRlbTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMzYwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pbmN1YmF0aW9uLXByb2Nlc3MtcHJldmlvdXMge1xyXG4gICAgICAuYXJyb3ctdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuNWVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmluY3ViYXRpb24tcHJvY2Vzcy1uZXh0IHtcclxuICAgICAgLmFycm93LXRpdGxlIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC41ZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmFyY2hpdmUge1xyXG4gIC5lbnRyeS1maWd1cmUtbGluayxcclxuICAuZW50cnktZmlndXJlIHtcclxuICAgIGhlaWdodDogMjIwcHg7XHJcbiAgfVxyXG5cclxuICAuZW50cnktZmlndXJlLWxpbmsge1xyXG4gICAgZmxleDogMDtcclxuICB9XHJcblxyXG4gIC5lbnRyeS1maWd1cmUge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgfVxyXG59Il19 */
