@import url(https://fonts.googleapis.com/css?family=Poppins:400,600);@font-face{font-family:'WEB Regular Bold';src:url("../../fonts/Regular-BoldWEB.eot");src:url("../../fonts/Regular-BoldWEB.eot?#iefix") format("embedded-opentype"),url("../../fonts/Regular-BoldWEB.woff2") format("woff2"),url("../../fonts/Regular-BoldWEB.woff") format("woff"),url("../../fonts/Regular-BoldWEB.ttf") format("truetype"),url("../../fonts/Regular-BoldWEB.svg#WEBRegularBold") format("svg")}@font-face{font-family:'WEB Regular Medium';src:url("../../fonts/Regular-MediumWEB.eot");src:url("../../fonts/Regular-MediumWEB.eot?#iefix") format("embedded-opentype"),url("../../fonts/Regular-MediumWEB.woff2") format("woff2"),url("../../fonts/Regular-MediumWEB.woff") format("woff"),url("../../fonts/Regular-MediumWEB.ttf") format("truetype"),url("../../fonts/Regular-MediumWEB.svg#WEBRegularBold") format("svg")}/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:0.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}@media only screen and (max-width: 30em){[class*="col-"]{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;width:100%}}.row,.gform_fields,.text-row--1 ul.gform_fields{display:-moz-flex;display:-ms-flexbox;display:flex;-moz-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-16px;margin-left:-16px}.row.reverse{-moz-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.row.col{-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.col.reverse{-moz-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.col-xs{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:auto;flex-basis:auto}.col-xs{-moz-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.start-xs{-ms-flex-pack:start;-moz-justify-content:flex-start;justify-content:flex-start;text-align:start}.center-xs{-ms-flex-pack:center;-moz-justify-content:center;justify-content:center;text-align:center}.end-xs{-ms-flex-pack:end;-moz-justify-content:flex-end;justify-content:flex-end;text-align:end}.top-xs{-ms-flex-align:start;-moz-align-items:flex-start;align-items:flex-start}.middle-xs{-ms-flex-align:center;-moz-align-items:center;align-items:center}.bottom-xs{-ms-flex-align:end;-moz-align-items:flex-end;align-items:flex-end}.around-xs{-ms-flex-pack:distribute;-moz-justify-content:space-around;justify-content:space-around}.between-xs{-ms-flex-pack:justify;-moz-justify-content:space-between;justify-content:space-between}.first-xs{-ms-flex-order:-1;order:-1}.last-xs{-ms-flex-order:1;order:1}@media only screen and (min-width: 30em){.col-xs{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:auto;flex-basis:auto}.col-xs-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:8.33333%;flex-basis:8.33333%;max-width:8.33333%}.col-xs-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:16.66667%;flex-basis:16.66667%;max-width:16.66667%}.col-xs-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-xs-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:33.33333%;flex-basis:33.33333%;max-width:33.33333%}.col-xs-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:41.66667%;flex-basis:41.66667%;max-width:41.66667%}.col-xs-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-xs-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:58.33333%;flex-basis:58.33333%;max-width:58.33333%}.col-xs-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:66.66667%;flex-basis:66.66667%;max-width:66.66667%}.col-xs-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-xs-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:83.33333%;flex-basis:83.33333%;max-width:83.33333%}.col-xs-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:91.66667%;flex-basis:91.66667%;max-width:91.66667%}.col-xs-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.col-xs-offset-0{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:0%}.col-xs-offset-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:8.33333%}.col-xs-offset-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:16.66667%}.col-xs-offset-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:25%}.col-xs-offset-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:33.33333%}.col-xs-offset-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:41.66667%}.col-xs-offset-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:50%}.col-xs-offset-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:58.33333%}.col-xs-offset-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:66.66667%}.col-xs-offset-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:75%}.col-xs-offset-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:83.33333%}.col-xs-offset-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:91.66667%}.col-xs-offset-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:100%}.col-xs{-moz-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.start-xs{-ms-flex-pack:start;-moz-justify-content:flex-start;justify-content:flex-start;text-align:start}.center-xs{-ms-flex-pack:center;-moz-justify-content:center;justify-content:center;text-align:center}.end-xs{-ms-flex-pack:end;-moz-justify-content:flex-end;justify-content:flex-end;text-align:end}.top-xs{-ms-flex-align:start;-moz-align-items:flex-start;align-items:flex-start}.middle-xs{-ms-flex-align:center;-moz-align-items:center;align-items:center}.bottom-xs{-ms-flex-align:end;-moz-align-items:flex-end;align-items:flex-end}.around-xs{-ms-flex-pack:distribute;-moz-justify-content:space-around;justify-content:space-around}.between-xs{-ms-flex-pack:justify;-moz-justify-content:space-between;justify-content:space-between}.first-xs{-ms-flex-order:-1;order:-1}.last-xs{-ms-flex-order:1;order:1}}@media only screen and (min-width: 48em){.col-sm{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:auto;flex-basis:auto}.col-sm-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:8.33333%;flex-basis:8.33333%;max-width:8.33333%}.col-sm-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:16.66667%;flex-basis:16.66667%;max-width:16.66667%}.col-sm-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-sm-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:33.33333%;flex-basis:33.33333%;max-width:33.33333%}.col-sm-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:41.66667%;flex-basis:41.66667%;max-width:41.66667%}.col-sm-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-sm-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:58.33333%;flex-basis:58.33333%;max-width:58.33333%}.col-sm-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:66.66667%;flex-basis:66.66667%;max-width:66.66667%}.col-sm-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-sm-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:83.33333%;flex-basis:83.33333%;max-width:83.33333%}.col-sm-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:91.66667%;flex-basis:91.66667%;max-width:91.66667%}.col-sm-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.col-sm-offset-0{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:0%}.col-sm-offset-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:8.33333%}.col-sm-offset-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:16.66667%}.col-sm-offset-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:25%}.col-sm-offset-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:33.33333%}.col-sm-offset-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:41.66667%}.col-sm-offset-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:50%}.col-sm-offset-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:58.33333%}.col-sm-offset-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:66.66667%}.col-sm-offset-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:75%}.col-sm-offset-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:83.33333%}.col-sm-offset-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:91.66667%}.col-sm-offset-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:100%}.col-sm{-moz-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.start-sm{-ms-flex-pack:start;-moz-justify-content:flex-start;justify-content:flex-start;text-align:start}.center-sm{-ms-flex-pack:center;-moz-justify-content:center;justify-content:center;text-align:center}.end-sm{-ms-flex-pack:end;-moz-justify-content:flex-end;justify-content:flex-end;text-align:end}.top-sm{-ms-flex-align:start;-moz-align-items:flex-start;align-items:flex-start}.middle-sm{-ms-flex-align:center;-moz-align-items:center;align-items:center}.bottom-sm{-ms-flex-align:end;-moz-align-items:flex-end;align-items:flex-end}.around-sm{-ms-flex-pack:distribute;-moz-justify-content:space-around;justify-content:space-around}.between-sm{-ms-flex-pack:justify;-moz-justify-content:space-between;justify-content:space-between}.first-sm{-ms-flex-order:-1;order:-1}.last-sm{-ms-flex-order:1;order:1}}@media only screen and (min-width: 62em){.col-md{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:auto;flex-basis:auto}.col-md-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:8.33333%;flex-basis:8.33333%;max-width:8.33333%}.col-md-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:16.66667%;flex-basis:16.66667%;max-width:16.66667%}.col-md-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-md-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:33.33333%;flex-basis:33.33333%;max-width:33.33333%}.col-md-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:41.66667%;flex-basis:41.66667%;max-width:41.66667%}.col-md-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-md-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:58.33333%;flex-basis:58.33333%;max-width:58.33333%}.col-md-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:66.66667%;flex-basis:66.66667%;max-width:66.66667%}.col-md-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-md-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:83.33333%;flex-basis:83.33333%;max-width:83.33333%}.col-md-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:91.66667%;flex-basis:91.66667%;max-width:91.66667%}.col-md-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.col-md-offset-0{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:0%}.col-md-offset-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:8.33333%}.col-md-offset-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:16.66667%}.col-md-offset-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:25%}.col-md-offset-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:33.33333%}.col-md-offset-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:41.66667%}.col-md-offset-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:50%}.col-md-offset-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:58.33333%}.col-md-offset-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:66.66667%}.col-md-offset-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:75%}.col-md-offset-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:83.33333%}.col-md-offset-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:91.66667%}.col-md-offset-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:100%}.col-md{-moz-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.start-md{-ms-flex-pack:start;-moz-justify-content:flex-start;justify-content:flex-start;text-align:start}.center-md{-ms-flex-pack:center;-moz-justify-content:center;justify-content:center;text-align:center}.end-md{-ms-flex-pack:end;-moz-justify-content:flex-end;justify-content:flex-end;text-align:end}.top-md{-ms-flex-align:start;-moz-align-items:flex-start;align-items:flex-start}.middle-md{-ms-flex-align:center;-moz-align-items:center;align-items:center}.bottom-md{-ms-flex-align:end;-moz-align-items:flex-end;align-items:flex-end}.around-md{-ms-flex-pack:distribute;-moz-justify-content:space-around;justify-content:space-around}.between-md{-ms-flex-pack:justify;-moz-justify-content:space-between;justify-content:space-between}.first-md{-ms-flex-order:-1;order:-1}.last-md{-ms-flex-order:1;order:1}}@media only screen and (min-width: 75em){.col-lg{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:auto;flex-basis:auto}.col-lg-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:8.33333%;flex-basis:8.33333%;max-width:8.33333%}.col-lg-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:16.66667%;flex-basis:16.66667%;max-width:16.66667%}.col-lg-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-lg-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:33.33333%;flex-basis:33.33333%;max-width:33.33333%}.col-lg-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:41.66667%;flex-basis:41.66667%;max-width:41.66667%}.col-lg-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-lg-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:58.33333%;flex-basis:58.33333%;max-width:58.33333%}.col-lg-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:66.66667%;flex-basis:66.66667%;max-width:66.66667%}.col-lg-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-lg-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:83.33333%;flex-basis:83.33333%;max-width:83.33333%}.col-lg-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:91.66667%;flex-basis:91.66667%;max-width:91.66667%}.col-lg-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.col-lg-offset-0{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:0%}.col-lg-offset-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:8.33333%}.col-lg-offset-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:16.66667%}.col-lg-offset-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:25%}.col-lg-offset-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:33.33333%}.col-lg-offset-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:41.66667%}.col-lg-offset-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:50%}.col-lg-offset-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:58.33333%}.col-lg-offset-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:66.66667%}.col-lg-offset-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:75%}.col-lg-offset-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:83.33333%}.col-lg-offset-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:91.66667%}.col-lg-offset-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:100%}.col-lg{-moz-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.start-lg{-ms-flex-pack:start;-moz-justify-content:flex-start;justify-content:flex-start;text-align:start}.center-lg{-ms-flex-pack:center;-moz-justify-content:center;justify-content:center;text-align:center}.end-lg{-ms-flex-pack:end;-moz-justify-content:flex-end;justify-content:flex-end;text-align:end}.top-lg{-ms-flex-align:start;-moz-align-items:flex-start;align-items:flex-start}.middle-lg{-ms-flex-align:center;-moz-align-items:center;align-items:center}.bottom-lg{-ms-flex-align:end;-moz-align-items:flex-end;align-items:flex-end}.around-lg{-ms-flex-pack:distribute;-moz-justify-content:space-around;justify-content:space-around}.between-lg{-ms-flex-pack:justify;-moz-justify-content:space-between;justify-content:space-between}.first-lg{-ms-flex-order:-1;order:-1}.last-lg{-ms-flex-order:1;order:1}}@media only screen and (min-width: 100em){.col-xlg{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:auto;flex-basis:auto}.col-xlg-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:8.33333%;flex-basis:8.33333%;max-width:8.33333%}.col-xlg-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:16.66667%;flex-basis:16.66667%;max-width:16.66667%}.col-xlg-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:25%;flex-basis:25%;max-width:25%}.col-xlg-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:33.33333%;flex-basis:33.33333%;max-width:33.33333%}.col-xlg-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:41.66667%;flex-basis:41.66667%;max-width:41.66667%}.col-xlg-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:50%;flex-basis:50%;max-width:50%}.col-xlg-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:58.33333%;flex-basis:58.33333%;max-width:58.33333%}.col-xlg-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:66.66667%;flex-basis:66.66667%;max-width:66.66667%}.col-xlg-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:75%;flex-basis:75%;max-width:75%}.col-xlg-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:83.33333%;flex-basis:83.33333%;max-width:83.33333%}.col-xlg-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:91.66667%;flex-basis:91.66667%;max-width:91.66667%}.col-xlg-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.col-xlg-offset-0{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:0%}.col-xlg-offset-1{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:8.33333%}.col-xlg-offset-2{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:16.66667%}.col-xlg-offset-3{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:25%}.col-xlg-offset-4{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:33.33333%}.col-xlg-offset-5{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:41.66667%}.col-xlg-offset-6{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:50%}.col-xlg-offset-7{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:58.33333%}.col-xlg-offset-8{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:66.66667%}.col-xlg-offset-9{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:75%}.col-xlg-offset-10{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:83.33333%}.col-xlg-offset-11{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:91.66667%}.col-xlg-offset-12{-moz-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;padding-right:16px;padding-left:16px;margin-left:100%}.col-xlg{-moz-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-preferred-size:0;flex-basis:0;max-width:100%}.start-xlg{-ms-flex-pack:start;-moz-justify-content:flex-start;justify-content:flex-start;text-align:start}.center-xlg{-ms-flex-pack:center;-moz-justify-content:center;justify-content:center;text-align:center}.end-xlg{-ms-flex-pack:end;-moz-justify-content:flex-end;justify-content:flex-end;text-align:end}.top-xlg{-ms-flex-align:start;-moz-align-items:flex-start;align-items:flex-start}.middle-xlg{-ms-flex-align:center;-moz-align-items:center;align-items:center}.bottom-xlg{-ms-flex-align:end;-moz-align-items:flex-end;align-items:flex-end}.around-xlg{-ms-flex-pack:distribute;-moz-justify-content:space-around;justify-content:space-around}.between-xlg{-ms-flex-pack:justify;-moz-justify-content:space-between;justify-content:space-between}.first-xlg{-ms-flex-order:-1;order:-1}.last-xlg{-ms-flex-order:1;order:1}}html.remodal-is-locked{overflow:hidden;-ms-touch-action:none;touch-action:none}.remodal,[data-remodal-id]{display:none}.remodal-overlay{position:fixed;z-index:9999;top:-5000px;right:-5000px;bottom:-5000px;left:-5000px;display:none}.remodal-wrapper{position:fixed;z-index:10000;top:0;right:0;bottom:0;left:0;display:none;overflow:auto;text-align:center;-webkit-overflow-scrolling:touch}.remodal-wrapper:after{display:inline-block;height:100%;margin-left:-0.05em;content:""}.remodal-overlay,.remodal-wrapper{-webkit-backface-visibility:hidden;backface-visibility:hidden}.remodal{position:relative;outline:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}.remodal-is-initialized{display:inline-block}.remodal-bg.remodal-is-opening,.remodal-bg.remodal-is-opened{filter:blur(3px)}.remodal-overlay{background:rgba(43,46,56,0.9)}.remodal-overlay.remodal-is-opening,.remodal-overlay.remodal-is-closing{animation-duration:0.3s;animation-fill-mode:forwards}.remodal-overlay.remodal-is-opening{animation-name:remodal-overlay-opening-keyframes}.remodal-overlay.remodal-is-closing{animation-name:remodal-overlay-closing-keyframes}.remodal-wrapper{padding:10px 10px 0}.remodal{box-sizing:border-box;width:100%;transform:translate3d(0, 0, 0);background:#fff}.remodal.remodal-is-opening,.remodal.remodal-is-closing{animation-duration:0.3s;animation-fill-mode:forwards}.remodal.remodal-is-opening{animation-name:remodal-opening-keyframes}.remodal.remodal-is-closing{animation-name:remodal-closing-keyframes}.remodal,.remodal-wrapper:after{vertical-align:middle}.remodal-close,button.remodal-close{position:absolute;top:.5rem;right:.5rem;display:block;overflow:visible;margin:0;padding:0;cursor:pointer;transition:color 0.2s;text-decoration:none;border:1px solid #d2d2d2;outline:0;background:transparent;z-index:2}@media (max-width: 47.99em){.remodal-close,button.remodal-close{width:2.8125rem;height:2.8125rem}}@media (min-width: 48em){.remodal-close,button.remodal-close{top:4.375rem;right:9.5%}}.remodal-close:before{position:absolute;top:0;left:0;display:block;width:35px;text-align:center}.remodal-confirm,.remodal-cancel{font:inherit;display:inline-block;overflow:visible;min-width:110px;margin:0;padding:12px 0;cursor:pointer;transition:background 0.2s;text-align:center;vertical-align:middle;text-decoration:none;border:0;outline:0}.remodal-confirm::-moz-focus-inner,.remodal-cancel::-moz-focus-inner,.remodal-close::-moz-focus-inner{padding:0;border:0}@keyframes remodal-opening-keyframes{from{transform:scale(1.05);opacity:0}to{transform:none;opacity:1;filter:blur(0)}}@keyframes remodal-closing-keyframes{from{transform:scale(1);opacity:1}to{transform:scale(0.95);opacity:0;filter:blur(0)}}@keyframes remodal-overlay-opening-keyframes{from{opacity:0}to{opacity:1}}@keyframes remodal-overlay-closing-keyframes{from{opacity:1}to{opacity:0}}@media only screen and (min-width: 641px){.remodal{max-width:1200px}}.lt-ie9 .remodal-overlay{background:#2b2e38}.lt-ie9 .remodal{width:1200px}.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-touch-callout: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{-ms-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}.slick-track{position:relative;left:0;top:0;display:block}.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;outline:none;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-prev i{-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.slick-loading .slick-list{background:#fff url("./ajax-loader.gif") center center no-repeat}.slick-prev,button.slick-prev,.slick-next,button.slick-next{position:absolute;display:block;line-height:0px;font-size:0px;cursor:pointer;background:transparent;color:transparent;top:.5rem;padding:0;border:none;outline:none;z-index:2;border:1px solid #d2d2d2}@media (max-width: 47.99em){.slick-prev,button.slick-prev,.slick-next,button.slick-next{width:2.8125rem;height:2.8125rem}}.slick-prev:hover,.slick-prev:focus,button.slick-prev:hover,button.slick-prev:focus,.slick-next:hover,.slick-next:focus,button.slick-next:hover,button.slick-next:focus{outline:none;background:transparent;color:transparent}.slick-prev:hover:before,.slick-prev:focus:before,button.slick-prev:hover:before,button.slick-prev:focus:before,.slick-next:hover:before,.slick-next:focus:before,button.slick-next:hover:before,button.slick-next:focus:before{opacity:1}.slick-prev.slick-disabled:before,button.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before,button.slick-next.slick-disabled:before{opacity:.25}.slick-prev:before,button.slick-prev:before,.slick-next:before,button.slick-next:before{line-height:1;opacity:.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-prev,button.slick-prev{right:6rem}@media (min-width: 48em){.slick-prev,button.slick-prev{top:13rem;right:9.5%}}.slick-next,button.slick-next{right:3.25rem}@media (min-width: 48em){.slick-next,button.slick-next{top:8.6875rem;right:9.5%}}.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;width:20px;height:20px;font-size:6px;line-height:20px;text-align:center;opacity:.25;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-dots li.slick-active button:before{opacity:.75}html,button,input,select,textarea{font-family:"Poppins",sans-serif;line-height:1.5;color:#25272a;-webkit-font-smoothing:antialiased}::-moz-selection{background:#c2d400;color:#25272a;text-shadow:none}::selection{background:#c2d400;color:#25272a;text-shadow:none}h1,.h1,h2,.h2,.site-dex .partners--featured .partners__title,h3,.h3,h4,.h4,h5,.h5,h6,.h6{margin-top:0;margin-bottom:1.5rem}p{margin-top:0;margin-bottom:1.5rem}h1,.h1{font-family:"WEB Regular Bold",sans-serif;font-size:2.1875rem;font-weight:bold;line-height:1;letter-spacing:-1.5px}@media (min-width: 48em){h1,.h1{font-size:3rem}}@media (min-width: 75em){h1,.h1{font-size:3.75rem}}h1--xlarge,.h1--xlarge{font-size:4rem}@media (min-width: 48em){h1--xlarge,.h1--xlarge{font-size:5rem}}@media (min-width: 75em){h1--xlarge,.h1--xlarge{font-size:9rem}}h1--large,.h1--large{font-size:3.75rem}@media (min-width: 48em){h1--large,.h1--large{font-size:3.75rem}}@media (min-width: 75em){h1--large,.h1--large{font-size:5rem}}h2,.h2,.site-dex .partners--featured .partners__title{font-family:"WEB Regular Medium",sans-serif;font-size:1.875rem;font-weight:normal;line-height:1.167}@media (min-width: 48em){h2,.h2,.site-dex .partners--featured .partners__title{font-size:2.25rem}}@media (min-width: 75em){h2,.h2,.site-dex .partners--featured .partners__title{font-size:3rem}}h2.bold,h2 strong,.h2.bold,.site-dex .partners--featured .bold.partners__title,.h2 strong,.site-dex .partners--featured .partners__title strong{font-family:"WEB Regular Bold",sans-serif}.text-row--1 .text h2,.text-row--1 .text .h2,.text-row--1 .text .site-dex .partners--featured .partners__title,.site-dex .partners--featured .text-row--1 .text .partners__title{margin-top:3.125rem}.text-row--1 .text h2:first-child,.text-row--1 .text .h2:first-child,.text-row--1 .text .site-dex .partners--featured .partners__title:first-child,.site-dex .partners--featured .text-row--1 .text .partners__title:first-child{margin-top:0}.text-row--1 .text h2+h3,.text-row--1 .text h2+.h3,.text-row--1 .text .h2+h3,.text-row--1 .text .site-dex .partners--featured .partners__title+h3,.site-dex .partners--featured .text-row--1 .text .partners__title+h3,.text-row--1 .text .h2+.h3,.text-row--1 .text .site-dex .partners--featured .partners__title+.h3,.site-dex .partners--featured .text-row--1 .text .partners__title+.h3{margin-top:-.9375rem}h3,.h3{font-family:"WEB Regular Medium",sans-serif;font-size:1.625rem;font-weight:normal;line-height:1.3}@media (min-width: 48em){h3,.h3{font-size:2rem}}@media (min-width: 75em){h3,.h3{font-size:2.25rem}}h3.bold,h3 strong,.h3.bold,.h3 strong{font-family:"WEB Regular Bold",sans-serif}.text-row--1 .text h3,.text-row--1 .text .h3{margin-top:3.125rem;font-family:"WEB Regular Bold",sans-serif}.text-row--1 .text h3:first-child,.text-row--1 .text .h3:first-child{margin-top:0}.text-row--1 .text h3+h4,.text-row--1 .text h3+.h4,.text-row--1 .text .h3+h4,.text-row--1 .text .h3+.h4{margin-top:-.9375rem}h4,.h4{font-size:1.25rem;font-weight:bold;line-height:1.4}@media (min-width: 48em){h4,.h4{font-size:1.375rem}}@media (min-width: 75em){h4,.h4{font-size:1.5rem}}.text-row--1 .text h4,.text-row--1 .text .h4{margin-top:3.125rem}.text-row--1 .text h4:first-child,.text-row--1 .text .h4:first-child{margin-top:0}h5,.h5{font-size:1.125rem;font-weight:bold;line-height:1.6}h6,.h6{font-size:.875rem;font-weight:normal}a{border-bottom:1px solid currentColor;text-decoration:none;transition:color .5s cubic-bezier(0.4, 0, 0, 1),border .5s cubic-bezier(0.4, 0, 0, 1);color:#25272a}a:hover,a:focus{border-bottom:1px solid #c2d400}@media (min-width: 62em){a:hover,a:focus{outline:0;color:#25272a}}a[href*="tel:"]{border:0}a:visited{color:#25272a}.link-reset{text-decoration:none;border-bottom:0}.link-reset:hover,.link-reset:focus{border-bottom:0}blockquote{font-size:1.125rem;font-weight:bold;color:#aebe04;margin:2.5rem 0;text-align:center}@media (min-width: 48em){blockquote{font-size:1.375rem;margin-top:4rem;margin-bottom:4rem}}@media (min-width: 75em){blockquote{font-size:1.625rem}}@media (min-width: 48em){.article blockquote{margin-left:-7%;margin-right:-7%}}@media (min-width: 75em){.article blockquote{margin-left:-15%;margin-right:-15%}}blockquote cite{color:#25272a;font-style:normal;font-size:.875rem;text-align:center;display:block;margin-top:1rem}abbr[title]{border-bottom:0}b,strong{font-weight:600}i,em{font-style:italic}small{font-size:80%}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-normal{text-transform:none}.base,a.base:visited,a.base:hover,a.base:focus{color:#25272a}.light,a.light:visited,a.light:hover,a.light:focus{color:#fff}.faint,a.faint:visited,a.faint:hover,a.faint:focus{color:rgba(255,255,255,0.5)}.grey,a.grey:visited,a.grey:hover,a.grey:focus{color:rgba(0,0,0,0.4)}.dark,a.dark:visited,a.dark:hover,a.dark:focus{color:#000}.primary,a.primary:visited,a.primary:hover,a.primary:focus{color:#aebe04}.secondary,a.secondary:visited,a.secondary:hover,a.secondary:focus{color:#00c4b3}.tertiary,a.tertiary:visited,a.tertiary:hover,a.tertiary:focus{color:#004d5a}.accent1,a.accent1:visited,a.accent1:hover,a.accent1:focus{color:#ffc000}.accent2,a.accent2:visited,a.accent2:hover,a.accent2:focus{color:#4bb543}.accent3,a.accent3:visited,a.accent3:hover,a.accent3:focus{color:#ff0048}.dex-light,a.dex-light:visited,a.dex-light:hover,a.dex-light:focus{color:#00d8ff}.error{color:#ff0048}.error [class*="icon-"]{margin-right:.1875rem}.error [class*="icon-"] *{fill:#ff0048}.caption{font-size:1.125rem;font-weight:600;line-height:1.28;letter-spacing:0}@media (min-width: 48em){.caption{font-size:1.375rem}}@media (min-width: 75em){.caption{font-size:1.625rem}}.caption--small{font-size:1rem}.caption--large{font-size:2rem}.bold{font-weight:bold}.normal{font-weight:normal}.small{font-size:.875rem}.medium{font-size:1rem}.drop{position:relative;padding-bottom:1.875rem;margin-bottom:2rem}.drop::after{content:"";display:block;position:absolute;width:2.5rem;height:.25rem;background:#c2d400;left:0;bottom:0}.drop--top{padding-bottom:0;padding-top:1.875rem;margin-bottom:0;margin-top:2rem}.drop--top::after{bottom:auto;top:0}@media (min-width: 48em){.drop{padding-bottom:2.8125rem;margin-bottom:3rem}.drop::after{width:5rem;height:.5rem}.drop--top{padding-bottom:0;padding-top:2.8125rem;margin-top:3rem;margin-bottom:0}.drop.h1{padding-bottom:2.375rem}}*,*::before,*::after{box-sizing:border-box}html{font-size:100%;height:100%;-webkit-text-size-adjust:none}@media (max-width: 29.99em){html{font-size:100%}}body{min-height:100%;min-width:320px;overflow-x:hidden}.barba-container{overflow:hidden}.page-main{padding-top:7.5rem}@media (min-width: 62em){.page-main{padding-top:15.625rem}}.wrap{position:relative;overflow-x:hidden}ul,ol,dl{margin-top:0;margin-bottom:1.5rem}ol,ul{counter-reset:ol}ol ol,ol ul,ul ol,ul ul{margin-top:1rem;margin-bottom:0}.text-row--1 ol,.text-row--1 ul{margin-left:1.5625rem}.text-row--1 ul.gform_fields ul,.text-row--1 ul.gform_fields ol{margin-left:0}ul{padding-left:1.5625rem;list-style:none}ul li{margin-bottom:1.25rem;position:relative}ul li::before{content:'';width:.5rem;height:.5rem;border-radius:.5rem;display:block;position:absolute;top:.5625rem;left:-1.5625rem;background-color:#aebe04}.list--unstyled{margin-top:0;margin-left:0;padding-left:0;list-style:none}.list--unstyled>li{margin-bottom:0}.list--unstyled>li::before{display:none}.list--flat{margin-top:0;margin-left:0;padding-left:0;list-style:none}.list--flat>li{margin-bottom:0}.list--flat>li::before{display:none}.list--flat::after{content:'';display:table;clear:both}.list--flat>li{float:left}.list--inline{margin-top:0;margin-left:0;padding-left:0;list-style:none}.list--inline>li{margin-bottom:0}.list--inline>li::before{display:none}.list--inline>li{display:inline-block}.list--block{margin-top:0;margin-left:0;padding-left:0;list-style:none}.list--block>li{margin-bottom:0}.list--block>li::before{display:none}.list--block>li{display:block}ol{padding-left:1.5625rem;list-style:none}ol li{margin-bottom:1rem;position:relative}ol li::before{content:counter(ol) ".";counter-increment:ol;position:absolute;top:0;left:-1.5625rem;font-weight:bold;border:0}ol ul li::before{content:'';top:.4375rem;left:-1.5625rem}.list--linked-unstyled a{text-decoration:none;border-bottom:0}.list--linked-unstyled a:hover,.list--linked-unstyled a:focus{border-bottom:0}.list--bordered li{border-bottom:1px solid #d2d2d2}.list--bordered-side{display:-moz-flex;display:-ms-flexbox;display:flex;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.list--bordered-side li{width:calc(33.33% - 24px);-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:1;flex-shrink:1;border-right:1px solid #d2d2d2;margin-right:1.5rem;margin-bottom:1.5rem;padding-right:1.5rem;padding-top:1rem;padding-bottom:1rem}@media (min-width: 62em){.list--bordered-side li:nth-child(3n){border-right:0}}.list--bordered-side li:last-child{margin-right:0}.list--bordered-side a{word-break:break-all}@media (max-width: 61.99em){.list--bordered-side-medium{-ms-flex-wrap:wrap;flex-wrap:wrap}.list--bordered-side-medium li{width:50%;border-bottom:1px solid #d2d2d2;border-right:0;margin-right:0;margin-bottom:0;padding-top:2rem;padding-bottom:2rem}.list--bordered-side-medium li:nth-child(2n){margin-right:0}}@media (max-width: 37.49em){.list--bordered-side-small{-ms-flex-wrap:wrap;flex-wrap:wrap}.list--bordered-side-small li{width:100%;-moz-flex:0 1 100%;-ms-flex:0 1 100%;flex:0 1 100%}}.list--margin li{margin-top:1rem;margin-bottom:1rem}.list--padding li{padding-top:1rem;padding-bottom:1rem}.list--large{font-size:1.5rem}.list--features{padding-left:0}.list--features li{padding-left:2.1875rem;font-size:1rem}.list--features li::before{width:1.5rem;height:1.5rem;border-radius:1.5rem;background:#c2d400;top:-.0625rem;left:0}.list--features li::after{content:"";display:block;position:absolute;position:absolute;top:5px;left:9px;border-right:2px solid black;border-bottom:2px solid black;width:.3125rem;height:.625rem;-ms-transform:rotate(40deg);transform:rotate(40deg)}hr{margin-top:0;margin-bottom:1.5rem;background:none;border:0;border-top:1px solid #d2d2d2}@keyframes rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeInUpSmall{from{opacity:0;transform:translate3d(0, 10vh, 0)}to{opacity:1;transform:none}}@keyframes fadeInUpLarge{from{opacity:0;transform:translate3d(0, 100vh, 0)}to{opacity:1;transform:none}}@keyframes upSmall{from{transform:translate3d(0, 75%, 0)}to{transform:none}}@keyframes upLarge{from{transform:translate3d(0, 100vh, 0)}to{transform:none}}@keyframes pulse{0%{transform:scale(0.3);opacity:1}100%{transform:scale(1);opacity:0}}.transition-delay-1{transition-delay:.1s}.transition-delay-2{transition-delay:.2s}.transition-delay-3{transition-delay:.3s}.transition-delay-4{transition-delay:.4s}.transition-delay-5{transition-delay:.5s}.transition-delay-6{transition-delay:.6s}.transition-delay-7{transition-delay:.7s}.transition-delay-8{transition-delay:.8s}.transition-delay-9{transition-delay:.9s}.transition-delay-10{transition-delay:1s}.transition-delay-11{transition-delay:1.1s}.transition-delay-12{transition-delay:1.2s}.transition-delay-13{transition-delay:1.3s}.transition-delay-14{transition-delay:1.4s}.transition-delay-15{transition-delay:1.5s}.transition-delay-16{transition-delay:1.6s}.transition-delay-17{transition-delay:1.7s}.transition-delay-18{transition-delay:1.8s}.transition-delay-19{transition-delay:1.9s}.transition-delay-20{transition-delay:2s}@media (min-width: 48em){.js.cssanimations [data-animation]{opacity:0}.js.cssanimations .fadeIn{animation:fadeIn 0.5s 1 both cubic-bezier(0.4, 0, 0.2, 1)}.js.cssanimations .fadeInUpSmall{animation:fadeInUpSmall 0.6s 1 both cubic-bezier(0.4, 0, 0.2, 1)}.js.cssanimations .fadeInUpLarge{animation:fadeInUpLarge 0.6s 1 both cubic-bezier(0.4, 0, 0.2, 1)}.js.cssanimations .upSmall{animation:upSmall 0.6s 1 both cubic-bezier(0.4, 0, 0.2, 1)}.js.cssanimations .upLarge{animation:upLarge 0.6s 1 both cubic-bezier(0.4, 0, 0.2, 1)}}.is-hidden{display:none !important;visibility:hidden}.is-visible{display:block;visibility:visible}.is-invisible{opacity:0}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;left:-9999px;width:1px}.cf::after{content:'';display:table;clear:both}.right{float:right}.left{float:left}.px1{padding:.5rem}.mx1{margin:.5rem}.m-tx1{margin-top:.5rem}.m-bx1{margin-bottom:.5rem}.p-tx1{padding-top:.5rem}.p-bx1{padding-bottom:.5rem}@media only screen and (min-width: 480px){.p-xsx1{padding:.5rem}.m-xsx1{margin:.5rem}.m-xs-tx1{margin-top:.5rem}.m-xs-bx1{margin-bottom:.5rem}.p-xs-tx1{padding-top:.5rem}.p-xs-bx1{padding-bottom:.5rem}}@media only screen and (min-width: 768px){.p-smx1{padding:.5rem}.m-smx1{margin:.5rem}.m-sm-tx1{margin-top:.5rem}.m-sm-bx1{margin-bottom:.5rem}.p-sm-tx1{padding-top:.5rem}.p-sm-bx1{padding-bottom:.5rem}}@media only screen and (min-width: 992px){.p-mdx1{padding:.5rem}.m-mdx1{margin:.5rem}.m-md-tx1{margin-top:.5rem}.m-md-bx1{margin-bottom:.5rem}.p-md-tx1{padding-top:.5rem}.p-md-bx1{padding-bottom:.5rem}}@media only screen and (min-width: 1200px){.p-lgx1{padding:.5rem}.m-lgx1{margin:.5rem}.m-lg-tx1{margin-top:.5rem}.m-lg-bx1{margin-bottom:.5rem}.p-lg-tx1{padding-top:.5rem}.p-lg-bx1{padding-bottom:.5rem}}@media only screen and (min-width: 1600px){.p-xlgx1{padding:.5rem}.m-xlgx1{margin:.5rem}.m-xlg-tx1{margin-top:.5rem}.m-xlg-bx1{margin-bottom:.5rem}.p-xlg-tx1{padding-top:.5rem}.p-xlg-bx1{padding-bottom:.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx1{padding:.5rem}.m-iphone6plusx1{margin:.5rem}.m-iphone6plus-tx1{margin-top:.5rem}.m-iphone6plus-bx1{margin-bottom:.5rem}.p-iphone6plus-tx1{padding-top:.5rem}.p-iphone6plus-bx1{padding-bottom:.5rem}}@media only screen and (min-width: 820px){.p-navverticalx1{padding:.5rem}.m-navverticalx1{margin:.5rem}.m-navvertical-tx1{margin-top:.5rem}.m-navvertical-bx1{margin-bottom:.5rem}.p-navvertical-tx1{padding-top:.5rem}.p-navvertical-bx1{padding-bottom:.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx1{padding:.5rem}.m-listborderedsmallx1{margin:.5rem}.m-listborderedsmall-tx1{margin-top:.5rem}.m-listborderedsmall-bx1{margin-bottom:.5rem}.p-listborderedsmall-tx1{padding-top:.5rem}.p-listborderedsmall-bx1{padding-bottom:.5rem}}.px2{padding:1rem}.mx2{margin:1rem}.m-tx2{margin-top:1rem}.m-bx2{margin-bottom:1rem}.p-tx2{padding-top:1rem}.p-bx2{padding-bottom:1rem}@media only screen and (min-width: 480px){.p-xsx2{padding:1rem}.m-xsx2{margin:1rem}.m-xs-tx2{margin-top:1rem}.m-xs-bx2{margin-bottom:1rem}.p-xs-tx2{padding-top:1rem}.p-xs-bx2{padding-bottom:1rem}}@media only screen and (min-width: 768px){.p-smx2{padding:1rem}.m-smx2{margin:1rem}.m-sm-tx2{margin-top:1rem}.m-sm-bx2{margin-bottom:1rem}.p-sm-tx2{padding-top:1rem}.p-sm-bx2{padding-bottom:1rem}}@media only screen and (min-width: 992px){.p-mdx2{padding:1rem}.m-mdx2{margin:1rem}.m-md-tx2{margin-top:1rem}.m-md-bx2{margin-bottom:1rem}.p-md-tx2{padding-top:1rem}.p-md-bx2{padding-bottom:1rem}}@media only screen and (min-width: 1200px){.p-lgx2{padding:1rem}.m-lgx2{margin:1rem}.m-lg-tx2{margin-top:1rem}.m-lg-bx2{margin-bottom:1rem}.p-lg-tx2{padding-top:1rem}.p-lg-bx2{padding-bottom:1rem}}@media only screen and (min-width: 1600px){.p-xlgx2{padding:1rem}.m-xlgx2{margin:1rem}.m-xlg-tx2{margin-top:1rem}.m-xlg-bx2{margin-bottom:1rem}.p-xlg-tx2{padding-top:1rem}.p-xlg-bx2{padding-bottom:1rem}}@media only screen and (min-width: 400px){.p-iphone6plusx2{padding:1rem}.m-iphone6plusx2{margin:1rem}.m-iphone6plus-tx2{margin-top:1rem}.m-iphone6plus-bx2{margin-bottom:1rem}.p-iphone6plus-tx2{padding-top:1rem}.p-iphone6plus-bx2{padding-bottom:1rem}}@media only screen and (min-width: 820px){.p-navverticalx2{padding:1rem}.m-navverticalx2{margin:1rem}.m-navvertical-tx2{margin-top:1rem}.m-navvertical-bx2{margin-bottom:1rem}.p-navvertical-tx2{padding-top:1rem}.p-navvertical-bx2{padding-bottom:1rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx2{padding:1rem}.m-listborderedsmallx2{margin:1rem}.m-listborderedsmall-tx2{margin-top:1rem}.m-listborderedsmall-bx2{margin-bottom:1rem}.p-listborderedsmall-tx2{padding-top:1rem}.p-listborderedsmall-bx2{padding-bottom:1rem}}.px3{padding:1.5rem}.mx3{margin:1.5rem}.m-tx3{margin-top:1.5rem}.m-bx3{margin-bottom:1.5rem}.p-tx3{padding-top:1.5rem}.p-bx3{padding-bottom:1.5rem}@media only screen and (min-width: 480px){.p-xsx3{padding:1.5rem}.m-xsx3{margin:1.5rem}.m-xs-tx3{margin-top:1.5rem}.m-xs-bx3{margin-bottom:1.5rem}.p-xs-tx3{padding-top:1.5rem}.p-xs-bx3{padding-bottom:1.5rem}}@media only screen and (min-width: 768px){.p-smx3{padding:1.5rem}.m-smx3{margin:1.5rem}.m-sm-tx3{margin-top:1.5rem}.m-sm-bx3{margin-bottom:1.5rem}.p-sm-tx3{padding-top:1.5rem}.p-sm-bx3{padding-bottom:1.5rem}}@media only screen and (min-width: 992px){.p-mdx3{padding:1.5rem}.m-mdx3{margin:1.5rem}.m-md-tx3{margin-top:1.5rem}.m-md-bx3{margin-bottom:1.5rem}.p-md-tx3{padding-top:1.5rem}.p-md-bx3{padding-bottom:1.5rem}}@media only screen and (min-width: 1200px){.p-lgx3{padding:1.5rem}.m-lgx3{margin:1.5rem}.m-lg-tx3{margin-top:1.5rem}.m-lg-bx3{margin-bottom:1.5rem}.p-lg-tx3{padding-top:1.5rem}.p-lg-bx3{padding-bottom:1.5rem}}@media only screen and (min-width: 1600px){.p-xlgx3{padding:1.5rem}.m-xlgx3{margin:1.5rem}.m-xlg-tx3{margin-top:1.5rem}.m-xlg-bx3{margin-bottom:1.5rem}.p-xlg-tx3{padding-top:1.5rem}.p-xlg-bx3{padding-bottom:1.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx3{padding:1.5rem}.m-iphone6plusx3{margin:1.5rem}.m-iphone6plus-tx3{margin-top:1.5rem}.m-iphone6plus-bx3{margin-bottom:1.5rem}.p-iphone6plus-tx3{padding-top:1.5rem}.p-iphone6plus-bx3{padding-bottom:1.5rem}}@media only screen and (min-width: 820px){.p-navverticalx3{padding:1.5rem}.m-navverticalx3{margin:1.5rem}.m-navvertical-tx3{margin-top:1.5rem}.m-navvertical-bx3{margin-bottom:1.5rem}.p-navvertical-tx3{padding-top:1.5rem}.p-navvertical-bx3{padding-bottom:1.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx3{padding:1.5rem}.m-listborderedsmallx3{margin:1.5rem}.m-listborderedsmall-tx3{margin-top:1.5rem}.m-listborderedsmall-bx3{margin-bottom:1.5rem}.p-listborderedsmall-tx3{padding-top:1.5rem}.p-listborderedsmall-bx3{padding-bottom:1.5rem}}.px4{padding:2rem}.mx4{margin:2rem}.m-tx4{margin-top:2rem}.m-bx4{margin-bottom:2rem}.p-tx4{padding-top:2rem}.p-bx4{padding-bottom:2rem}@media only screen and (min-width: 480px){.p-xsx4{padding:2rem}.m-xsx4{margin:2rem}.m-xs-tx4{margin-top:2rem}.m-xs-bx4{margin-bottom:2rem}.p-xs-tx4{padding-top:2rem}.p-xs-bx4{padding-bottom:2rem}}@media only screen and (min-width: 768px){.p-smx4{padding:2rem}.m-smx4{margin:2rem}.m-sm-tx4{margin-top:2rem}.m-sm-bx4{margin-bottom:2rem}.p-sm-tx4{padding-top:2rem}.p-sm-bx4{padding-bottom:2rem}}@media only screen and (min-width: 992px){.p-mdx4{padding:2rem}.m-mdx4{margin:2rem}.m-md-tx4{margin-top:2rem}.m-md-bx4{margin-bottom:2rem}.p-md-tx4{padding-top:2rem}.p-md-bx4{padding-bottom:2rem}}@media only screen and (min-width: 1200px){.p-lgx4{padding:2rem}.m-lgx4{margin:2rem}.m-lg-tx4{margin-top:2rem}.m-lg-bx4{margin-bottom:2rem}.p-lg-tx4{padding-top:2rem}.p-lg-bx4{padding-bottom:2rem}}@media only screen and (min-width: 1600px){.p-xlgx4{padding:2rem}.m-xlgx4{margin:2rem}.m-xlg-tx4{margin-top:2rem}.m-xlg-bx4{margin-bottom:2rem}.p-xlg-tx4{padding-top:2rem}.p-xlg-bx4{padding-bottom:2rem}}@media only screen and (min-width: 400px){.p-iphone6plusx4{padding:2rem}.m-iphone6plusx4{margin:2rem}.m-iphone6plus-tx4{margin-top:2rem}.m-iphone6plus-bx4{margin-bottom:2rem}.p-iphone6plus-tx4{padding-top:2rem}.p-iphone6plus-bx4{padding-bottom:2rem}}@media only screen and (min-width: 820px){.p-navverticalx4{padding:2rem}.m-navverticalx4{margin:2rem}.m-navvertical-tx4{margin-top:2rem}.m-navvertical-bx4{margin-bottom:2rem}.p-navvertical-tx4{padding-top:2rem}.p-navvertical-bx4{padding-bottom:2rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx4{padding:2rem}.m-listborderedsmallx4{margin:2rem}.m-listborderedsmall-tx4{margin-top:2rem}.m-listborderedsmall-bx4{margin-bottom:2rem}.p-listborderedsmall-tx4{padding-top:2rem}.p-listborderedsmall-bx4{padding-bottom:2rem}}.px5{padding:2.5rem}.mx5{margin:2.5rem}.m-tx5{margin-top:2.5rem}.m-bx5{margin-bottom:2.5rem}.p-tx5{padding-top:2.5rem}.p-bx5{padding-bottom:2.5rem}@media only screen and (min-width: 480px){.p-xsx5{padding:2.5rem}.m-xsx5{margin:2.5rem}.m-xs-tx5{margin-top:2.5rem}.m-xs-bx5{margin-bottom:2.5rem}.p-xs-tx5{padding-top:2.5rem}.p-xs-bx5{padding-bottom:2.5rem}}@media only screen and (min-width: 768px){.p-smx5{padding:2.5rem}.m-smx5{margin:2.5rem}.m-sm-tx5{margin-top:2.5rem}.m-sm-bx5{margin-bottom:2.5rem}.p-sm-tx5{padding-top:2.5rem}.p-sm-bx5{padding-bottom:2.5rem}}@media only screen and (min-width: 992px){.p-mdx5{padding:2.5rem}.m-mdx5{margin:2.5rem}.m-md-tx5{margin-top:2.5rem}.m-md-bx5{margin-bottom:2.5rem}.p-md-tx5{padding-top:2.5rem}.p-md-bx5{padding-bottom:2.5rem}}@media only screen and (min-width: 1200px){.p-lgx5{padding:2.5rem}.m-lgx5{margin:2.5rem}.m-lg-tx5{margin-top:2.5rem}.m-lg-bx5{margin-bottom:2.5rem}.p-lg-tx5{padding-top:2.5rem}.p-lg-bx5{padding-bottom:2.5rem}}@media only screen and (min-width: 1600px){.p-xlgx5{padding:2.5rem}.m-xlgx5{margin:2.5rem}.m-xlg-tx5{margin-top:2.5rem}.m-xlg-bx5{margin-bottom:2.5rem}.p-xlg-tx5{padding-top:2.5rem}.p-xlg-bx5{padding-bottom:2.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx5{padding:2.5rem}.m-iphone6plusx5{margin:2.5rem}.m-iphone6plus-tx5{margin-top:2.5rem}.m-iphone6plus-bx5{margin-bottom:2.5rem}.p-iphone6plus-tx5{padding-top:2.5rem}.p-iphone6plus-bx5{padding-bottom:2.5rem}}@media only screen and (min-width: 820px){.p-navverticalx5{padding:2.5rem}.m-navverticalx5{margin:2.5rem}.m-navvertical-tx5{margin-top:2.5rem}.m-navvertical-bx5{margin-bottom:2.5rem}.p-navvertical-tx5{padding-top:2.5rem}.p-navvertical-bx5{padding-bottom:2.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx5{padding:2.5rem}.m-listborderedsmallx5{margin:2.5rem}.m-listborderedsmall-tx5{margin-top:2.5rem}.m-listborderedsmall-bx5{margin-bottom:2.5rem}.p-listborderedsmall-tx5{padding-top:2.5rem}.p-listborderedsmall-bx5{padding-bottom:2.5rem}}.px6{padding:3rem}.mx6{margin:3rem}.m-tx6{margin-top:3rem}.m-bx6{margin-bottom:3rem}.p-tx6{padding-top:3rem}.p-bx6{padding-bottom:3rem}@media only screen and (min-width: 480px){.p-xsx6{padding:3rem}.m-xsx6{margin:3rem}.m-xs-tx6{margin-top:3rem}.m-xs-bx6{margin-bottom:3rem}.p-xs-tx6{padding-top:3rem}.p-xs-bx6{padding-bottom:3rem}}@media only screen and (min-width: 768px){.p-smx6{padding:3rem}.m-smx6{margin:3rem}.m-sm-tx6{margin-top:3rem}.m-sm-bx6{margin-bottom:3rem}.p-sm-tx6{padding-top:3rem}.p-sm-bx6{padding-bottom:3rem}}@media only screen and (min-width: 992px){.p-mdx6{padding:3rem}.m-mdx6{margin:3rem}.m-md-tx6{margin-top:3rem}.m-md-bx6{margin-bottom:3rem}.p-md-tx6{padding-top:3rem}.p-md-bx6{padding-bottom:3rem}}@media only screen and (min-width: 1200px){.p-lgx6{padding:3rem}.m-lgx6{margin:3rem}.m-lg-tx6{margin-top:3rem}.m-lg-bx6{margin-bottom:3rem}.p-lg-tx6{padding-top:3rem}.p-lg-bx6{padding-bottom:3rem}}@media only screen and (min-width: 1600px){.p-xlgx6{padding:3rem}.m-xlgx6{margin:3rem}.m-xlg-tx6{margin-top:3rem}.m-xlg-bx6{margin-bottom:3rem}.p-xlg-tx6{padding-top:3rem}.p-xlg-bx6{padding-bottom:3rem}}@media only screen and (min-width: 400px){.p-iphone6plusx6{padding:3rem}.m-iphone6plusx6{margin:3rem}.m-iphone6plus-tx6{margin-top:3rem}.m-iphone6plus-bx6{margin-bottom:3rem}.p-iphone6plus-tx6{padding-top:3rem}.p-iphone6plus-bx6{padding-bottom:3rem}}@media only screen and (min-width: 820px){.p-navverticalx6{padding:3rem}.m-navverticalx6{margin:3rem}.m-navvertical-tx6{margin-top:3rem}.m-navvertical-bx6{margin-bottom:3rem}.p-navvertical-tx6{padding-top:3rem}.p-navvertical-bx6{padding-bottom:3rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx6{padding:3rem}.m-listborderedsmallx6{margin:3rem}.m-listborderedsmall-tx6{margin-top:3rem}.m-listborderedsmall-bx6{margin-bottom:3rem}.p-listborderedsmall-tx6{padding-top:3rem}.p-listborderedsmall-bx6{padding-bottom:3rem}}.px7{padding:3.5rem}.mx7{margin:3.5rem}.m-tx7{margin-top:3.5rem}.m-bx7{margin-bottom:3.5rem}.p-tx7{padding-top:3.5rem}.p-bx7{padding-bottom:3.5rem}@media only screen and (min-width: 480px){.p-xsx7{padding:3.5rem}.m-xsx7{margin:3.5rem}.m-xs-tx7{margin-top:3.5rem}.m-xs-bx7{margin-bottom:3.5rem}.p-xs-tx7{padding-top:3.5rem}.p-xs-bx7{padding-bottom:3.5rem}}@media only screen and (min-width: 768px){.p-smx7{padding:3.5rem}.m-smx7{margin:3.5rem}.m-sm-tx7{margin-top:3.5rem}.m-sm-bx7{margin-bottom:3.5rem}.p-sm-tx7{padding-top:3.5rem}.p-sm-bx7{padding-bottom:3.5rem}}@media only screen and (min-width: 992px){.p-mdx7{padding:3.5rem}.m-mdx7{margin:3.5rem}.m-md-tx7{margin-top:3.5rem}.m-md-bx7{margin-bottom:3.5rem}.p-md-tx7{padding-top:3.5rem}.p-md-bx7{padding-bottom:3.5rem}}@media only screen and (min-width: 1200px){.p-lgx7{padding:3.5rem}.m-lgx7{margin:3.5rem}.m-lg-tx7{margin-top:3.5rem}.m-lg-bx7{margin-bottom:3.5rem}.p-lg-tx7{padding-top:3.5rem}.p-lg-bx7{padding-bottom:3.5rem}}@media only screen and (min-width: 1600px){.p-xlgx7{padding:3.5rem}.m-xlgx7{margin:3.5rem}.m-xlg-tx7{margin-top:3.5rem}.m-xlg-bx7{margin-bottom:3.5rem}.p-xlg-tx7{padding-top:3.5rem}.p-xlg-bx7{padding-bottom:3.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx7{padding:3.5rem}.m-iphone6plusx7{margin:3.5rem}.m-iphone6plus-tx7{margin-top:3.5rem}.m-iphone6plus-bx7{margin-bottom:3.5rem}.p-iphone6plus-tx7{padding-top:3.5rem}.p-iphone6plus-bx7{padding-bottom:3.5rem}}@media only screen and (min-width: 820px){.p-navverticalx7{padding:3.5rem}.m-navverticalx7{margin:3.5rem}.m-navvertical-tx7{margin-top:3.5rem}.m-navvertical-bx7{margin-bottom:3.5rem}.p-navvertical-tx7{padding-top:3.5rem}.p-navvertical-bx7{padding-bottom:3.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx7{padding:3.5rem}.m-listborderedsmallx7{margin:3.5rem}.m-listborderedsmall-tx7{margin-top:3.5rem}.m-listborderedsmall-bx7{margin-bottom:3.5rem}.p-listborderedsmall-tx7{padding-top:3.5rem}.p-listborderedsmall-bx7{padding-bottom:3.5rem}}.px8{padding:4rem}.mx8{margin:4rem}.m-tx8{margin-top:4rem}.m-bx8{margin-bottom:4rem}.p-tx8{padding-top:4rem}.p-bx8{padding-bottom:4rem}@media only screen and (min-width: 480px){.p-xsx8{padding:4rem}.m-xsx8{margin:4rem}.m-xs-tx8{margin-top:4rem}.m-xs-bx8{margin-bottom:4rem}.p-xs-tx8{padding-top:4rem}.p-xs-bx8{padding-bottom:4rem}}@media only screen and (min-width: 768px){.p-smx8{padding:4rem}.m-smx8{margin:4rem}.m-sm-tx8{margin-top:4rem}.m-sm-bx8{margin-bottom:4rem}.p-sm-tx8{padding-top:4rem}.p-sm-bx8{padding-bottom:4rem}}@media only screen and (min-width: 992px){.p-mdx8{padding:4rem}.m-mdx8{margin:4rem}.m-md-tx8{margin-top:4rem}.m-md-bx8{margin-bottom:4rem}.p-md-tx8{padding-top:4rem}.p-md-bx8{padding-bottom:4rem}}@media only screen and (min-width: 1200px){.p-lgx8{padding:4rem}.m-lgx8{margin:4rem}.m-lg-tx8{margin-top:4rem}.m-lg-bx8{margin-bottom:4rem}.p-lg-tx8{padding-top:4rem}.p-lg-bx8{padding-bottom:4rem}}@media only screen and (min-width: 1600px){.p-xlgx8{padding:4rem}.m-xlgx8{margin:4rem}.m-xlg-tx8{margin-top:4rem}.m-xlg-bx8{margin-bottom:4rem}.p-xlg-tx8{padding-top:4rem}.p-xlg-bx8{padding-bottom:4rem}}@media only screen and (min-width: 400px){.p-iphone6plusx8{padding:4rem}.m-iphone6plusx8{margin:4rem}.m-iphone6plus-tx8{margin-top:4rem}.m-iphone6plus-bx8{margin-bottom:4rem}.p-iphone6plus-tx8{padding-top:4rem}.p-iphone6plus-bx8{padding-bottom:4rem}}@media only screen and (min-width: 820px){.p-navverticalx8{padding:4rem}.m-navverticalx8{margin:4rem}.m-navvertical-tx8{margin-top:4rem}.m-navvertical-bx8{margin-bottom:4rem}.p-navvertical-tx8{padding-top:4rem}.p-navvertical-bx8{padding-bottom:4rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx8{padding:4rem}.m-listborderedsmallx8{margin:4rem}.m-listborderedsmall-tx8{margin-top:4rem}.m-listborderedsmall-bx8{margin-bottom:4rem}.p-listborderedsmall-tx8{padding-top:4rem}.p-listborderedsmall-bx8{padding-bottom:4rem}}.px9{padding:4.5rem}.mx9{margin:4.5rem}.m-tx9{margin-top:4.5rem}.m-bx9{margin-bottom:4.5rem}.p-tx9{padding-top:4.5rem}.p-bx9{padding-bottom:4.5rem}@media only screen and (min-width: 480px){.p-xsx9{padding:4.5rem}.m-xsx9{margin:4.5rem}.m-xs-tx9{margin-top:4.5rem}.m-xs-bx9{margin-bottom:4.5rem}.p-xs-tx9{padding-top:4.5rem}.p-xs-bx9{padding-bottom:4.5rem}}@media only screen and (min-width: 768px){.p-smx9{padding:4.5rem}.m-smx9{margin:4.5rem}.m-sm-tx9{margin-top:4.5rem}.m-sm-bx9{margin-bottom:4.5rem}.p-sm-tx9{padding-top:4.5rem}.p-sm-bx9{padding-bottom:4.5rem}}@media only screen and (min-width: 992px){.p-mdx9{padding:4.5rem}.m-mdx9{margin:4.5rem}.m-md-tx9{margin-top:4.5rem}.m-md-bx9{margin-bottom:4.5rem}.p-md-tx9{padding-top:4.5rem}.p-md-bx9{padding-bottom:4.5rem}}@media only screen and (min-width: 1200px){.p-lgx9{padding:4.5rem}.m-lgx9{margin:4.5rem}.m-lg-tx9{margin-top:4.5rem}.m-lg-bx9{margin-bottom:4.5rem}.p-lg-tx9{padding-top:4.5rem}.p-lg-bx9{padding-bottom:4.5rem}}@media only screen and (min-width: 1600px){.p-xlgx9{padding:4.5rem}.m-xlgx9{margin:4.5rem}.m-xlg-tx9{margin-top:4.5rem}.m-xlg-bx9{margin-bottom:4.5rem}.p-xlg-tx9{padding-top:4.5rem}.p-xlg-bx9{padding-bottom:4.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx9{padding:4.5rem}.m-iphone6plusx9{margin:4.5rem}.m-iphone6plus-tx9{margin-top:4.5rem}.m-iphone6plus-bx9{margin-bottom:4.5rem}.p-iphone6plus-tx9{padding-top:4.5rem}.p-iphone6plus-bx9{padding-bottom:4.5rem}}@media only screen and (min-width: 820px){.p-navverticalx9{padding:4.5rem}.m-navverticalx9{margin:4.5rem}.m-navvertical-tx9{margin-top:4.5rem}.m-navvertical-bx9{margin-bottom:4.5rem}.p-navvertical-tx9{padding-top:4.5rem}.p-navvertical-bx9{padding-bottom:4.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx9{padding:4.5rem}.m-listborderedsmallx9{margin:4.5rem}.m-listborderedsmall-tx9{margin-top:4.5rem}.m-listborderedsmall-bx9{margin-bottom:4.5rem}.p-listborderedsmall-tx9{padding-top:4.5rem}.p-listborderedsmall-bx9{padding-bottom:4.5rem}}.px10{padding:5rem}.mx10{margin:5rem}.m-tx10{margin-top:5rem}.m-bx10{margin-bottom:5rem}.p-tx10{padding-top:5rem}.p-bx10{padding-bottom:5rem}@media only screen and (min-width: 480px){.p-xsx10{padding:5rem}.m-xsx10{margin:5rem}.m-xs-tx10{margin-top:5rem}.m-xs-bx10{margin-bottom:5rem}.p-xs-tx10{padding-top:5rem}.p-xs-bx10{padding-bottom:5rem}}@media only screen and (min-width: 768px){.p-smx10{padding:5rem}.m-smx10{margin:5rem}.m-sm-tx10{margin-top:5rem}.m-sm-bx10{margin-bottom:5rem}.p-sm-tx10{padding-top:5rem}.p-sm-bx10{padding-bottom:5rem}}@media only screen and (min-width: 992px){.p-mdx10{padding:5rem}.m-mdx10{margin:5rem}.m-md-tx10{margin-top:5rem}.m-md-bx10{margin-bottom:5rem}.p-md-tx10{padding-top:5rem}.p-md-bx10{padding-bottom:5rem}}@media only screen and (min-width: 1200px){.p-lgx10{padding:5rem}.m-lgx10{margin:5rem}.m-lg-tx10{margin-top:5rem}.m-lg-bx10{margin-bottom:5rem}.p-lg-tx10{padding-top:5rem}.p-lg-bx10{padding-bottom:5rem}}@media only screen and (min-width: 1600px){.p-xlgx10{padding:5rem}.m-xlgx10{margin:5rem}.m-xlg-tx10{margin-top:5rem}.m-xlg-bx10{margin-bottom:5rem}.p-xlg-tx10{padding-top:5rem}.p-xlg-bx10{padding-bottom:5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx10{padding:5rem}.m-iphone6plusx10{margin:5rem}.m-iphone6plus-tx10{margin-top:5rem}.m-iphone6plus-bx10{margin-bottom:5rem}.p-iphone6plus-tx10{padding-top:5rem}.p-iphone6plus-bx10{padding-bottom:5rem}}@media only screen and (min-width: 820px){.p-navverticalx10{padding:5rem}.m-navverticalx10{margin:5rem}.m-navvertical-tx10{margin-top:5rem}.m-navvertical-bx10{margin-bottom:5rem}.p-navvertical-tx10{padding-top:5rem}.p-navvertical-bx10{padding-bottom:5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx10{padding:5rem}.m-listborderedsmallx10{margin:5rem}.m-listborderedsmall-tx10{margin-top:5rem}.m-listborderedsmall-bx10{margin-bottom:5rem}.p-listborderedsmall-tx10{padding-top:5rem}.p-listborderedsmall-bx10{padding-bottom:5rem}}.px11{padding:5.5rem}.mx11{margin:5.5rem}.m-tx11{margin-top:5.5rem}.m-bx11{margin-bottom:5.5rem}.p-tx11{padding-top:5.5rem}.p-bx11{padding-bottom:5.5rem}@media only screen and (min-width: 480px){.p-xsx11{padding:5.5rem}.m-xsx11{margin:5.5rem}.m-xs-tx11{margin-top:5.5rem}.m-xs-bx11{margin-bottom:5.5rem}.p-xs-tx11{padding-top:5.5rem}.p-xs-bx11{padding-bottom:5.5rem}}@media only screen and (min-width: 768px){.p-smx11{padding:5.5rem}.m-smx11{margin:5.5rem}.m-sm-tx11{margin-top:5.5rem}.m-sm-bx11{margin-bottom:5.5rem}.p-sm-tx11{padding-top:5.5rem}.p-sm-bx11{padding-bottom:5.5rem}}@media only screen and (min-width: 992px){.p-mdx11{padding:5.5rem}.m-mdx11{margin:5.5rem}.m-md-tx11{margin-top:5.5rem}.m-md-bx11{margin-bottom:5.5rem}.p-md-tx11{padding-top:5.5rem}.p-md-bx11{padding-bottom:5.5rem}}@media only screen and (min-width: 1200px){.p-lgx11{padding:5.5rem}.m-lgx11{margin:5.5rem}.m-lg-tx11{margin-top:5.5rem}.m-lg-bx11{margin-bottom:5.5rem}.p-lg-tx11{padding-top:5.5rem}.p-lg-bx11{padding-bottom:5.5rem}}@media only screen and (min-width: 1600px){.p-xlgx11{padding:5.5rem}.m-xlgx11{margin:5.5rem}.m-xlg-tx11{margin-top:5.5rem}.m-xlg-bx11{margin-bottom:5.5rem}.p-xlg-tx11{padding-top:5.5rem}.p-xlg-bx11{padding-bottom:5.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx11{padding:5.5rem}.m-iphone6plusx11{margin:5.5rem}.m-iphone6plus-tx11{margin-top:5.5rem}.m-iphone6plus-bx11{margin-bottom:5.5rem}.p-iphone6plus-tx11{padding-top:5.5rem}.p-iphone6plus-bx11{padding-bottom:5.5rem}}@media only screen and (min-width: 820px){.p-navverticalx11{padding:5.5rem}.m-navverticalx11{margin:5.5rem}.m-navvertical-tx11{margin-top:5.5rem}.m-navvertical-bx11{margin-bottom:5.5rem}.p-navvertical-tx11{padding-top:5.5rem}.p-navvertical-bx11{padding-bottom:5.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx11{padding:5.5rem}.m-listborderedsmallx11{margin:5.5rem}.m-listborderedsmall-tx11{margin-top:5.5rem}.m-listborderedsmall-bx11{margin-bottom:5.5rem}.p-listborderedsmall-tx11{padding-top:5.5rem}.p-listborderedsmall-bx11{padding-bottom:5.5rem}}.px12{padding:6rem}.mx12{margin:6rem}.m-tx12{margin-top:6rem}.m-bx12{margin-bottom:6rem}.p-tx12{padding-top:6rem}.p-bx12{padding-bottom:6rem}@media only screen and (min-width: 480px){.p-xsx12{padding:6rem}.m-xsx12{margin:6rem}.m-xs-tx12{margin-top:6rem}.m-xs-bx12{margin-bottom:6rem}.p-xs-tx12{padding-top:6rem}.p-xs-bx12{padding-bottom:6rem}}@media only screen and (min-width: 768px){.p-smx12{padding:6rem}.m-smx12{margin:6rem}.m-sm-tx12{margin-top:6rem}.m-sm-bx12{margin-bottom:6rem}.p-sm-tx12{padding-top:6rem}.p-sm-bx12{padding-bottom:6rem}}@media only screen and (min-width: 992px){.p-mdx12{padding:6rem}.m-mdx12{margin:6rem}.m-md-tx12{margin-top:6rem}.m-md-bx12{margin-bottom:6rem}.p-md-tx12{padding-top:6rem}.p-md-bx12{padding-bottom:6rem}}@media only screen and (min-width: 1200px){.p-lgx12{padding:6rem}.m-lgx12{margin:6rem}.m-lg-tx12{margin-top:6rem}.m-lg-bx12{margin-bottom:6rem}.p-lg-tx12{padding-top:6rem}.p-lg-bx12{padding-bottom:6rem}}@media only screen and (min-width: 1600px){.p-xlgx12{padding:6rem}.m-xlgx12{margin:6rem}.m-xlg-tx12{margin-top:6rem}.m-xlg-bx12{margin-bottom:6rem}.p-xlg-tx12{padding-top:6rem}.p-xlg-bx12{padding-bottom:6rem}}@media only screen and (min-width: 400px){.p-iphone6plusx12{padding:6rem}.m-iphone6plusx12{margin:6rem}.m-iphone6plus-tx12{margin-top:6rem}.m-iphone6plus-bx12{margin-bottom:6rem}.p-iphone6plus-tx12{padding-top:6rem}.p-iphone6plus-bx12{padding-bottom:6rem}}@media only screen and (min-width: 820px){.p-navverticalx12{padding:6rem}.m-navverticalx12{margin:6rem}.m-navvertical-tx12{margin-top:6rem}.m-navvertical-bx12{margin-bottom:6rem}.p-navvertical-tx12{padding-top:6rem}.p-navvertical-bx12{padding-bottom:6rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx12{padding:6rem}.m-listborderedsmallx12{margin:6rem}.m-listborderedsmall-tx12{margin-top:6rem}.m-listborderedsmall-bx12{margin-bottom:6rem}.p-listborderedsmall-tx12{padding-top:6rem}.p-listborderedsmall-bx12{padding-bottom:6rem}}.px13{padding:6.5rem}.mx13{margin:6.5rem}.m-tx13{margin-top:6.5rem}.m-bx13{margin-bottom:6.5rem}.p-tx13{padding-top:6.5rem}.p-bx13{padding-bottom:6.5rem}@media only screen and (min-width: 480px){.p-xsx13{padding:6.5rem}.m-xsx13{margin:6.5rem}.m-xs-tx13{margin-top:6.5rem}.m-xs-bx13{margin-bottom:6.5rem}.p-xs-tx13{padding-top:6.5rem}.p-xs-bx13{padding-bottom:6.5rem}}@media only screen and (min-width: 768px){.p-smx13{padding:6.5rem}.m-smx13{margin:6.5rem}.m-sm-tx13{margin-top:6.5rem}.m-sm-bx13{margin-bottom:6.5rem}.p-sm-tx13{padding-top:6.5rem}.p-sm-bx13{padding-bottom:6.5rem}}@media only screen and (min-width: 992px){.p-mdx13{padding:6.5rem}.m-mdx13{margin:6.5rem}.m-md-tx13{margin-top:6.5rem}.m-md-bx13{margin-bottom:6.5rem}.p-md-tx13{padding-top:6.5rem}.p-md-bx13{padding-bottom:6.5rem}}@media only screen and (min-width: 1200px){.p-lgx13{padding:6.5rem}.m-lgx13{margin:6.5rem}.m-lg-tx13{margin-top:6.5rem}.m-lg-bx13{margin-bottom:6.5rem}.p-lg-tx13{padding-top:6.5rem}.p-lg-bx13{padding-bottom:6.5rem}}@media only screen and (min-width: 1600px){.p-xlgx13{padding:6.5rem}.m-xlgx13{margin:6.5rem}.m-xlg-tx13{margin-top:6.5rem}.m-xlg-bx13{margin-bottom:6.5rem}.p-xlg-tx13{padding-top:6.5rem}.p-xlg-bx13{padding-bottom:6.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx13{padding:6.5rem}.m-iphone6plusx13{margin:6.5rem}.m-iphone6plus-tx13{margin-top:6.5rem}.m-iphone6plus-bx13{margin-bottom:6.5rem}.p-iphone6plus-tx13{padding-top:6.5rem}.p-iphone6plus-bx13{padding-bottom:6.5rem}}@media only screen and (min-width: 820px){.p-navverticalx13{padding:6.5rem}.m-navverticalx13{margin:6.5rem}.m-navvertical-tx13{margin-top:6.5rem}.m-navvertical-bx13{margin-bottom:6.5rem}.p-navvertical-tx13{padding-top:6.5rem}.p-navvertical-bx13{padding-bottom:6.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx13{padding:6.5rem}.m-listborderedsmallx13{margin:6.5rem}.m-listborderedsmall-tx13{margin-top:6.5rem}.m-listborderedsmall-bx13{margin-bottom:6.5rem}.p-listborderedsmall-tx13{padding-top:6.5rem}.p-listborderedsmall-bx13{padding-bottom:6.5rem}}.px14{padding:7rem}.mx14{margin:7rem}.m-tx14{margin-top:7rem}.m-bx14{margin-bottom:7rem}.p-tx14{padding-top:7rem}.p-bx14{padding-bottom:7rem}@media only screen and (min-width: 480px){.p-xsx14{padding:7rem}.m-xsx14{margin:7rem}.m-xs-tx14{margin-top:7rem}.m-xs-bx14{margin-bottom:7rem}.p-xs-tx14{padding-top:7rem}.p-xs-bx14{padding-bottom:7rem}}@media only screen and (min-width: 768px){.p-smx14{padding:7rem}.m-smx14{margin:7rem}.m-sm-tx14{margin-top:7rem}.m-sm-bx14{margin-bottom:7rem}.p-sm-tx14{padding-top:7rem}.p-sm-bx14{padding-bottom:7rem}}@media only screen and (min-width: 992px){.p-mdx14{padding:7rem}.m-mdx14{margin:7rem}.m-md-tx14{margin-top:7rem}.m-md-bx14{margin-bottom:7rem}.p-md-tx14{padding-top:7rem}.p-md-bx14{padding-bottom:7rem}}@media only screen and (min-width: 1200px){.p-lgx14{padding:7rem}.m-lgx14{margin:7rem}.m-lg-tx14{margin-top:7rem}.m-lg-bx14{margin-bottom:7rem}.p-lg-tx14{padding-top:7rem}.p-lg-bx14{padding-bottom:7rem}}@media only screen and (min-width: 1600px){.p-xlgx14{padding:7rem}.m-xlgx14{margin:7rem}.m-xlg-tx14{margin-top:7rem}.m-xlg-bx14{margin-bottom:7rem}.p-xlg-tx14{padding-top:7rem}.p-xlg-bx14{padding-bottom:7rem}}@media only screen and (min-width: 400px){.p-iphone6plusx14{padding:7rem}.m-iphone6plusx14{margin:7rem}.m-iphone6plus-tx14{margin-top:7rem}.m-iphone6plus-bx14{margin-bottom:7rem}.p-iphone6plus-tx14{padding-top:7rem}.p-iphone6plus-bx14{padding-bottom:7rem}}@media only screen and (min-width: 820px){.p-navverticalx14{padding:7rem}.m-navverticalx14{margin:7rem}.m-navvertical-tx14{margin-top:7rem}.m-navvertical-bx14{margin-bottom:7rem}.p-navvertical-tx14{padding-top:7rem}.p-navvertical-bx14{padding-bottom:7rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx14{padding:7rem}.m-listborderedsmallx14{margin:7rem}.m-listborderedsmall-tx14{margin-top:7rem}.m-listborderedsmall-bx14{margin-bottom:7rem}.p-listborderedsmall-tx14{padding-top:7rem}.p-listborderedsmall-bx14{padding-bottom:7rem}}.px15{padding:7.5rem}.mx15{margin:7.5rem}.m-tx15{margin-top:7.5rem}.m-bx15{margin-bottom:7.5rem}.p-tx15{padding-top:7.5rem}.p-bx15{padding-bottom:7.5rem}@media only screen and (min-width: 480px){.p-xsx15{padding:7.5rem}.m-xsx15{margin:7.5rem}.m-xs-tx15{margin-top:7.5rem}.m-xs-bx15{margin-bottom:7.5rem}.p-xs-tx15{padding-top:7.5rem}.p-xs-bx15{padding-bottom:7.5rem}}@media only screen and (min-width: 768px){.p-smx15{padding:7.5rem}.m-smx15{margin:7.5rem}.m-sm-tx15{margin-top:7.5rem}.m-sm-bx15{margin-bottom:7.5rem}.p-sm-tx15{padding-top:7.5rem}.p-sm-bx15{padding-bottom:7.5rem}}@media only screen and (min-width: 992px){.p-mdx15{padding:7.5rem}.m-mdx15{margin:7.5rem}.m-md-tx15{margin-top:7.5rem}.m-md-bx15{margin-bottom:7.5rem}.p-md-tx15{padding-top:7.5rem}.p-md-bx15{padding-bottom:7.5rem}}@media only screen and (min-width: 1200px){.p-lgx15{padding:7.5rem}.m-lgx15{margin:7.5rem}.m-lg-tx15{margin-top:7.5rem}.m-lg-bx15{margin-bottom:7.5rem}.p-lg-tx15{padding-top:7.5rem}.p-lg-bx15{padding-bottom:7.5rem}}@media only screen and (min-width: 1600px){.p-xlgx15{padding:7.5rem}.m-xlgx15{margin:7.5rem}.m-xlg-tx15{margin-top:7.5rem}.m-xlg-bx15{margin-bottom:7.5rem}.p-xlg-tx15{padding-top:7.5rem}.p-xlg-bx15{padding-bottom:7.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx15{padding:7.5rem}.m-iphone6plusx15{margin:7.5rem}.m-iphone6plus-tx15{margin-top:7.5rem}.m-iphone6plus-bx15{margin-bottom:7.5rem}.p-iphone6plus-tx15{padding-top:7.5rem}.p-iphone6plus-bx15{padding-bottom:7.5rem}}@media only screen and (min-width: 820px){.p-navverticalx15{padding:7.5rem}.m-navverticalx15{margin:7.5rem}.m-navvertical-tx15{margin-top:7.5rem}.m-navvertical-bx15{margin-bottom:7.5rem}.p-navvertical-tx15{padding-top:7.5rem}.p-navvertical-bx15{padding-bottom:7.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx15{padding:7.5rem}.m-listborderedsmallx15{margin:7.5rem}.m-listborderedsmall-tx15{margin-top:7.5rem}.m-listborderedsmall-bx15{margin-bottom:7.5rem}.p-listborderedsmall-tx15{padding-top:7.5rem}.p-listborderedsmall-bx15{padding-bottom:7.5rem}}.px16{padding:8rem}.mx16{margin:8rem}.m-tx16{margin-top:8rem}.m-bx16{margin-bottom:8rem}.p-tx16{padding-top:8rem}.p-bx16{padding-bottom:8rem}@media only screen and (min-width: 480px){.p-xsx16{padding:8rem}.m-xsx16{margin:8rem}.m-xs-tx16{margin-top:8rem}.m-xs-bx16{margin-bottom:8rem}.p-xs-tx16{padding-top:8rem}.p-xs-bx16{padding-bottom:8rem}}@media only screen and (min-width: 768px){.p-smx16{padding:8rem}.m-smx16{margin:8rem}.m-sm-tx16{margin-top:8rem}.m-sm-bx16{margin-bottom:8rem}.p-sm-tx16{padding-top:8rem}.p-sm-bx16{padding-bottom:8rem}}@media only screen and (min-width: 992px){.p-mdx16{padding:8rem}.m-mdx16{margin:8rem}.m-md-tx16{margin-top:8rem}.m-md-bx16{margin-bottom:8rem}.p-md-tx16{padding-top:8rem}.p-md-bx16{padding-bottom:8rem}}@media only screen and (min-width: 1200px){.p-lgx16{padding:8rem}.m-lgx16{margin:8rem}.m-lg-tx16{margin-top:8rem}.m-lg-bx16{margin-bottom:8rem}.p-lg-tx16{padding-top:8rem}.p-lg-bx16{padding-bottom:8rem}}@media only screen and (min-width: 1600px){.p-xlgx16{padding:8rem}.m-xlgx16{margin:8rem}.m-xlg-tx16{margin-top:8rem}.m-xlg-bx16{margin-bottom:8rem}.p-xlg-tx16{padding-top:8rem}.p-xlg-bx16{padding-bottom:8rem}}@media only screen and (min-width: 400px){.p-iphone6plusx16{padding:8rem}.m-iphone6plusx16{margin:8rem}.m-iphone6plus-tx16{margin-top:8rem}.m-iphone6plus-bx16{margin-bottom:8rem}.p-iphone6plus-tx16{padding-top:8rem}.p-iphone6plus-bx16{padding-bottom:8rem}}@media only screen and (min-width: 820px){.p-navverticalx16{padding:8rem}.m-navverticalx16{margin:8rem}.m-navvertical-tx16{margin-top:8rem}.m-navvertical-bx16{margin-bottom:8rem}.p-navvertical-tx16{padding-top:8rem}.p-navvertical-bx16{padding-bottom:8rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx16{padding:8rem}.m-listborderedsmallx16{margin:8rem}.m-listborderedsmall-tx16{margin-top:8rem}.m-listborderedsmall-bx16{margin-bottom:8rem}.p-listborderedsmall-tx16{padding-top:8rem}.p-listborderedsmall-bx16{padding-bottom:8rem}}.px17{padding:8.5rem}.mx17{margin:8.5rem}.m-tx17{margin-top:8.5rem}.m-bx17{margin-bottom:8.5rem}.p-tx17{padding-top:8.5rem}.p-bx17{padding-bottom:8.5rem}@media only screen and (min-width: 480px){.p-xsx17{padding:8.5rem}.m-xsx17{margin:8.5rem}.m-xs-tx17{margin-top:8.5rem}.m-xs-bx17{margin-bottom:8.5rem}.p-xs-tx17{padding-top:8.5rem}.p-xs-bx17{padding-bottom:8.5rem}}@media only screen and (min-width: 768px){.p-smx17{padding:8.5rem}.m-smx17{margin:8.5rem}.m-sm-tx17{margin-top:8.5rem}.m-sm-bx17{margin-bottom:8.5rem}.p-sm-tx17{padding-top:8.5rem}.p-sm-bx17{padding-bottom:8.5rem}}@media only screen and (min-width: 992px){.p-mdx17{padding:8.5rem}.m-mdx17{margin:8.5rem}.m-md-tx17{margin-top:8.5rem}.m-md-bx17{margin-bottom:8.5rem}.p-md-tx17{padding-top:8.5rem}.p-md-bx17{padding-bottom:8.5rem}}@media only screen and (min-width: 1200px){.p-lgx17{padding:8.5rem}.m-lgx17{margin:8.5rem}.m-lg-tx17{margin-top:8.5rem}.m-lg-bx17{margin-bottom:8.5rem}.p-lg-tx17{padding-top:8.5rem}.p-lg-bx17{padding-bottom:8.5rem}}@media only screen and (min-width: 1600px){.p-xlgx17{padding:8.5rem}.m-xlgx17{margin:8.5rem}.m-xlg-tx17{margin-top:8.5rem}.m-xlg-bx17{margin-bottom:8.5rem}.p-xlg-tx17{padding-top:8.5rem}.p-xlg-bx17{padding-bottom:8.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx17{padding:8.5rem}.m-iphone6plusx17{margin:8.5rem}.m-iphone6plus-tx17{margin-top:8.5rem}.m-iphone6plus-bx17{margin-bottom:8.5rem}.p-iphone6plus-tx17{padding-top:8.5rem}.p-iphone6plus-bx17{padding-bottom:8.5rem}}@media only screen and (min-width: 820px){.p-navverticalx17{padding:8.5rem}.m-navverticalx17{margin:8.5rem}.m-navvertical-tx17{margin-top:8.5rem}.m-navvertical-bx17{margin-bottom:8.5rem}.p-navvertical-tx17{padding-top:8.5rem}.p-navvertical-bx17{padding-bottom:8.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx17{padding:8.5rem}.m-listborderedsmallx17{margin:8.5rem}.m-listborderedsmall-tx17{margin-top:8.5rem}.m-listborderedsmall-bx17{margin-bottom:8.5rem}.p-listborderedsmall-tx17{padding-top:8.5rem}.p-listborderedsmall-bx17{padding-bottom:8.5rem}}.px18{padding:9rem}.mx18{margin:9rem}.m-tx18{margin-top:9rem}.m-bx18{margin-bottom:9rem}.p-tx18{padding-top:9rem}.p-bx18{padding-bottom:9rem}@media only screen and (min-width: 480px){.p-xsx18{padding:9rem}.m-xsx18{margin:9rem}.m-xs-tx18{margin-top:9rem}.m-xs-bx18{margin-bottom:9rem}.p-xs-tx18{padding-top:9rem}.p-xs-bx18{padding-bottom:9rem}}@media only screen and (min-width: 768px){.p-smx18{padding:9rem}.m-smx18{margin:9rem}.m-sm-tx18{margin-top:9rem}.m-sm-bx18{margin-bottom:9rem}.p-sm-tx18{padding-top:9rem}.p-sm-bx18{padding-bottom:9rem}}@media only screen and (min-width: 992px){.p-mdx18{padding:9rem}.m-mdx18{margin:9rem}.m-md-tx18{margin-top:9rem}.m-md-bx18{margin-bottom:9rem}.p-md-tx18{padding-top:9rem}.p-md-bx18{padding-bottom:9rem}}@media only screen and (min-width: 1200px){.p-lgx18{padding:9rem}.m-lgx18{margin:9rem}.m-lg-tx18{margin-top:9rem}.m-lg-bx18{margin-bottom:9rem}.p-lg-tx18{padding-top:9rem}.p-lg-bx18{padding-bottom:9rem}}@media only screen and (min-width: 1600px){.p-xlgx18{padding:9rem}.m-xlgx18{margin:9rem}.m-xlg-tx18{margin-top:9rem}.m-xlg-bx18{margin-bottom:9rem}.p-xlg-tx18{padding-top:9rem}.p-xlg-bx18{padding-bottom:9rem}}@media only screen and (min-width: 400px){.p-iphone6plusx18{padding:9rem}.m-iphone6plusx18{margin:9rem}.m-iphone6plus-tx18{margin-top:9rem}.m-iphone6plus-bx18{margin-bottom:9rem}.p-iphone6plus-tx18{padding-top:9rem}.p-iphone6plus-bx18{padding-bottom:9rem}}@media only screen and (min-width: 820px){.p-navverticalx18{padding:9rem}.m-navverticalx18{margin:9rem}.m-navvertical-tx18{margin-top:9rem}.m-navvertical-bx18{margin-bottom:9rem}.p-navvertical-tx18{padding-top:9rem}.p-navvertical-bx18{padding-bottom:9rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx18{padding:9rem}.m-listborderedsmallx18{margin:9rem}.m-listborderedsmall-tx18{margin-top:9rem}.m-listborderedsmall-bx18{margin-bottom:9rem}.p-listborderedsmall-tx18{padding-top:9rem}.p-listborderedsmall-bx18{padding-bottom:9rem}}.px19{padding:9.5rem}.mx19{margin:9.5rem}.m-tx19{margin-top:9.5rem}.m-bx19{margin-bottom:9.5rem}.p-tx19{padding-top:9.5rem}.p-bx19{padding-bottom:9.5rem}@media only screen and (min-width: 480px){.p-xsx19{padding:9.5rem}.m-xsx19{margin:9.5rem}.m-xs-tx19{margin-top:9.5rem}.m-xs-bx19{margin-bottom:9.5rem}.p-xs-tx19{padding-top:9.5rem}.p-xs-bx19{padding-bottom:9.5rem}}@media only screen and (min-width: 768px){.p-smx19{padding:9.5rem}.m-smx19{margin:9.5rem}.m-sm-tx19{margin-top:9.5rem}.m-sm-bx19{margin-bottom:9.5rem}.p-sm-tx19{padding-top:9.5rem}.p-sm-bx19{padding-bottom:9.5rem}}@media only screen and (min-width: 992px){.p-mdx19{padding:9.5rem}.m-mdx19{margin:9.5rem}.m-md-tx19{margin-top:9.5rem}.m-md-bx19{margin-bottom:9.5rem}.p-md-tx19{padding-top:9.5rem}.p-md-bx19{padding-bottom:9.5rem}}@media only screen and (min-width: 1200px){.p-lgx19{padding:9.5rem}.m-lgx19{margin:9.5rem}.m-lg-tx19{margin-top:9.5rem}.m-lg-bx19{margin-bottom:9.5rem}.p-lg-tx19{padding-top:9.5rem}.p-lg-bx19{padding-bottom:9.5rem}}@media only screen and (min-width: 1600px){.p-xlgx19{padding:9.5rem}.m-xlgx19{margin:9.5rem}.m-xlg-tx19{margin-top:9.5rem}.m-xlg-bx19{margin-bottom:9.5rem}.p-xlg-tx19{padding-top:9.5rem}.p-xlg-bx19{padding-bottom:9.5rem}}@media only screen and (min-width: 400px){.p-iphone6plusx19{padding:9.5rem}.m-iphone6plusx19{margin:9.5rem}.m-iphone6plus-tx19{margin-top:9.5rem}.m-iphone6plus-bx19{margin-bottom:9.5rem}.p-iphone6plus-tx19{padding-top:9.5rem}.p-iphone6plus-bx19{padding-bottom:9.5rem}}@media only screen and (min-width: 820px){.p-navverticalx19{padding:9.5rem}.m-navverticalx19{margin:9.5rem}.m-navvertical-tx19{margin-top:9.5rem}.m-navvertical-bx19{margin-bottom:9.5rem}.p-navvertical-tx19{padding-top:9.5rem}.p-navvertical-bx19{padding-bottom:9.5rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx19{padding:9.5rem}.m-listborderedsmallx19{margin:9.5rem}.m-listborderedsmall-tx19{margin-top:9.5rem}.m-listborderedsmall-bx19{margin-bottom:9.5rem}.p-listborderedsmall-tx19{padding-top:9.5rem}.p-listborderedsmall-bx19{padding-bottom:9.5rem}}.px20{padding:10rem}.mx20{margin:10rem}.m-tx20{margin-top:10rem}.m-bx20{margin-bottom:10rem}.p-tx20{padding-top:10rem}.p-bx20{padding-bottom:10rem}@media only screen and (min-width: 480px){.p-xsx20{padding:10rem}.m-xsx20{margin:10rem}.m-xs-tx20{margin-top:10rem}.m-xs-bx20{margin-bottom:10rem}.p-xs-tx20{padding-top:10rem}.p-xs-bx20{padding-bottom:10rem}}@media only screen and (min-width: 768px){.p-smx20{padding:10rem}.m-smx20{margin:10rem}.m-sm-tx20{margin-top:10rem}.m-sm-bx20{margin-bottom:10rem}.p-sm-tx20{padding-top:10rem}.p-sm-bx20{padding-bottom:10rem}}@media only screen and (min-width: 992px){.p-mdx20{padding:10rem}.m-mdx20{margin:10rem}.m-md-tx20{margin-top:10rem}.m-md-bx20{margin-bottom:10rem}.p-md-tx20{padding-top:10rem}.p-md-bx20{padding-bottom:10rem}}@media only screen and (min-width: 1200px){.p-lgx20{padding:10rem}.m-lgx20{margin:10rem}.m-lg-tx20{margin-top:10rem}.m-lg-bx20{margin-bottom:10rem}.p-lg-tx20{padding-top:10rem}.p-lg-bx20{padding-bottom:10rem}}@media only screen and (min-width: 1600px){.p-xlgx20{padding:10rem}.m-xlgx20{margin:10rem}.m-xlg-tx20{margin-top:10rem}.m-xlg-bx20{margin-bottom:10rem}.p-xlg-tx20{padding-top:10rem}.p-xlg-bx20{padding-bottom:10rem}}@media only screen and (min-width: 400px){.p-iphone6plusx20{padding:10rem}.m-iphone6plusx20{margin:10rem}.m-iphone6plus-tx20{margin-top:10rem}.m-iphone6plus-bx20{margin-bottom:10rem}.p-iphone6plus-tx20{padding-top:10rem}.p-iphone6plus-bx20{padding-bottom:10rem}}@media only screen and (min-width: 820px){.p-navverticalx20{padding:10rem}.m-navverticalx20{margin:10rem}.m-navvertical-tx20{margin-top:10rem}.m-navvertical-bx20{margin-bottom:10rem}.p-navvertical-tx20{padding-top:10rem}.p-navvertical-bx20{padding-bottom:10rem}}@media only screen and (min-width: 600px){.p-listborderedsmallx20{padding:10rem}.m-listborderedsmallx20{margin:10rem}.m-listborderedsmall-tx20{margin-top:10rem}.m-listborderedsmall-bx20{margin-bottom:10rem}.p-listborderedsmall-tx20{padding-top:10rem}.p-listborderedsmall-bx20{padding-bottom:10rem}}.no-m{margin:0 !important}.no-m-t{margin-top:0 !important}.no-m-b{margin-bottom:0 !important}.no-p{padding:0 !important}.no-p-t{padding-top:0 !important}.no-p-b{padding-bottom:0 !important}@media only screen and (min-width: 480px){.no-m-xs{margin:0 !important}.no-m-xs-t{margin-top:0 !important}.no-m-xs-b{margin-bottom:0 !important}.no-p-xs{padding:0 !important}.no-p-xs-t{padding-top:0 !important}.no-p-xs-b{padding-bottom:0 !important}}@media only screen and (min-width: 768px){.no-m-sm{margin:0 !important}.no-m-sm-t{margin-top:0 !important}.no-m-sm-b{margin-bottom:0 !important}.no-p-sm{padding:0 !important}.no-p-sm-t{padding-top:0 !important}.no-p-sm-b{padding-bottom:0 !important}}@media only screen and (min-width: 992px){.no-m-md{margin:0 !important}.no-m-md-t{margin-top:0 !important}.no-m-md-b{margin-bottom:0 !important}.no-p-md{padding:0 !important}.no-p-md-t{padding-top:0 !important}.no-p-md-b{padding-bottom:0 !important}}@media only screen and (min-width: 1200px){.no-m-lg{margin:0 !important}.no-m-lg-t{margin-top:0 !important}.no-m-lg-b{margin-bottom:0 !important}.no-p-lg{padding:0 !important}.no-p-lg-t{padding-top:0 !important}.no-p-lg-b{padding-bottom:0 !important}}@media only screen and (min-width: 1600px){.no-m-xlg{margin:0 !important}.no-m-xlg-t{margin-top:0 !important}.no-m-xlg-b{margin-bottom:0 !important}.no-p-xlg{padding:0 !important}.no-p-xlg-t{padding-top:0 !important}.no-p-xlg-b{padding-bottom:0 !important}}@media only screen and (min-width: 400px){.no-m-iphone6plus{margin:0 !important}.no-m-iphone6plus-t{margin-top:0 !important}.no-m-iphone6plus-b{margin-bottom:0 !important}.no-p-iphone6plus{padding:0 !important}.no-p-iphone6plus-t{padding-top:0 !important}.no-p-iphone6plus-b{padding-bottom:0 !important}}@media only screen and (min-width: 820px){.no-m-navvertical{margin:0 !important}.no-m-navvertical-t{margin-top:0 !important}.no-m-navvertical-b{margin-bottom:0 !important}.no-p-navvertical{padding:0 !important}.no-p-navvertical-t{padding-top:0 !important}.no-p-navvertical-b{padding-bottom:0 !important}}@media only screen and (min-width: 600px){.no-m-listborderedsmall{margin:0 !important}.no-m-listborderedsmall-t{margin-top:0 !important}.no-m-listborderedsmall-b{margin-bottom:0 !important}.no-p-listborderedsmall{padding:0 !important}.no-p-listborderedsmall-t{padding-top:0 !important}.no-p-listborderedsmall-b{padding-bottom:0 !important}}.relative{position:relative}.absolute{position:absolute}.static{position:static}@media print{.screen{display:none}}.print{display:none}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:-ms-flexbox;display:flex}.flex-column{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.flex-center{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.flex-h-center{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}.flex-v-center{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.flex-self-center{-ms-flex-item-align:center;-ms-grid-row-align:center;align-self:center}.align-center{margin-left:auto;margin-right:auto}.align-middle{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.border-top{border-top:1px solid #d2d2d2}.border-bottom{border-bottom:1px solid #d2d2d2}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}[class*="icon-"]{display:block}[class*="icon-"].inline-block{display:inline-block;vertical-align:middle}[class*="icon-"] svg{width:100%;height:100%;display:block}.icon__primary{fill:#c2d400}.icon__secondary{fill:#25272a}.icon--base *{fill:#25272a}.icon--light *{fill:#fff}.icon--opaque *{fill:rgba(255,255,255,0.25)}.icon--dark *{fill:#000}.icon--primary *{fill:#c2d400}.icon--secondary *{fill:#00c4b3}.icon--tertiary *{fill:#004d5a}.icon--accent1 *{fill:#ffc000}.icon--accent2 *{fill:#4bb543}.icon--accent3 *{fill:#ff0048}.icon--x1{width:.5rem;height:.5rem}.icon--x2{width:1rem;height:1rem}.icon--x3{width:1.5rem;height:1.5rem}.icon--x4{width:2rem;height:2rem}.icon--x5{width:2.5rem;height:2.5rem}.icon--x6{width:3rem;height:3rem}.icon--x7{width:3.5rem;height:3.5rem}.icon--x8{width:4rem;height:4rem}.icon--x9{width:4.5rem;height:4.5rem}.icon--x10{width:5rem;height:5rem}.icon--x11{width:5.5rem;height:5.5rem}.icon--x12{width:6rem;height:6rem}.icon--x13{width:6.5rem;height:6.5rem}.icon--x14{width:7rem;height:7rem}.icon--x15{width:7.5rem;height:7.5rem}.icon--x16{width:8rem;height:8rem}.icon--x17{width:8.5rem;height:8.5rem}.icon--x18{width:9rem;height:9rem}.icon--x19{width:9.5rem;height:9.5rem}.icon--x20{width:10rem;height:10rem}.container{margin-left:1.5rem;margin-right:1.5rem;max-width:1200px}@media (min-width: 62em){.container{margin-left:1.5rem;margin-right:1.5rem}}@media (min-width: 75em){.container{margin-left:2rem;margin-right:2rem}}@media (min-width: 79em){.container{margin-left:auto;margin-right:auto;width:100%}}.skip-link{text-decoration:none;border-bottom:0;padding-top:1.5rem;padding-bottom:1.5rem;position:absolute;left:-9999em;display:block;text-align:center}.skip-link:hover,.skip-link:focus{border-bottom:0}.button{display:inline-block;background:transparent;border:0;border-radius:3.125rem;cursor:pointer;color:#25272a;font-weight:bold;font-size:1rem;padding:.9375rem 1.25rem;background-color:#c2d400;transition:background .5s cubic-bezier(0.4, 0, 0, 1),color .5s cubic-bezier(0.4, 0, 0, 1)}.button:hover{background-color:rgba(194,212,0,0.8)}.button:active{background-color:#abbb00}.button:hover,.button:visited,.button:active{color:#25272a}.button:disabled{color:rgba(0,0,0,0.25);background-color:#f0f0f0;cursor:default}.button--reset{padding:0;border:0;border-radius:0;background:transparent;text-align:left}.button--reset:hover,.button--reset:focus,.button--reset:active{background:transparent}.button--large{padding:1.625rem;padding-left:2.5rem;padding-right:2.5rem}.button--icon{width:2.25rem;height:2.25rem;display:block;background:transparent;padding:0;border-radius:0}.button--icon:hover,.button--icon:focus,.button--icon:active{background:transparent}.button--icon i,.button--icon span{margin-left:auto;margin-right:auto}.button--icon-large{width:4.375rem;height:4.375rem}.button--wide{width:100%}.button--loader .loader{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1);margin:-.75rem 0 0 -.75rem;display:block}.button--loader+.gform_ajax_spinner{display:none !important}.button--loader.is-active .loader{opacity:1;visibility:visible;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.button--loader.is-active .button--loader__text{opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1)}.button--pin__pin{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);display:inline-block;width:.9375rem;height:.9375rem;border-radius:.9375rem;background:#c2d400;box-shadow:0 0 0 15px #fff}.button--cta{border-radius:0}.button--cta:hover i,.button--cta:focus i{-ms-transform:translateX(.5rem);transform:translateX(.5rem)}.button--cta i{transition:transform .5s cubic-bezier(0.4, 0, 0, 1)}.button--arrow{padding-left:1.5625rem;padding-right:1.5625rem}.button--arrow::after{content:"";display:inline-block;position:static;width:1.125rem;height:.625rem;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2017%2010%22%3E%3Cpath%20d%3D%22M0%203.8h12.9l-2.3-2.3L12%200l4.8%204.8L12%209.7l-1.4-1.5%202.3-2.3H0z%22%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:50%;background-size:cover;margin-left:.3125rem;margin-right:-.3125rem;transition:transform .5s cubic-bezier(0.4, 0, 0, 1)}.button--arrow:hover::after,.button--arrow:focus::after{-ms-transform:translateX(.3125rem);transform:translateX(.3125rem)}.button--arrow.button--large{padding-left:2.1875rem;padding-right:2.1875rem}.button--tall{height:100%}a.button:hover,a.button:focus{border-bottom:0}.hamburger{text-decoration:none;border-bottom:0;display:inline-block;transition-timing-function:linear;transition-duration:0.15s;transition-property:opacity, filter}.hamburger:hover,.hamburger:focus{border-bottom:0}.hamburger:hover .hamburger__inner::before,.hamburger:hover .hamburger__inner::after,.hamburger:focus .hamburger__inner::before,.hamburger:focus .hamburger__inner::after{width:100%}.hamburger__inner,.hamburger__inner::before,.hamburger__inner::after{width:1.875rem;height:.1875rem;border-radius:.1875rem;background-color:#25272a;transition-property:transform;transition-timing-function:cubic-bezier(0.55, 0.055, 0.675, 0.19);transition-duration:75ms}.hamburger__inner::before,.hamburger__inner::after{content:"";display:block;position:absolute;right:0}.is-active .hamburger__inner::before,.is-active .hamburger__inner::after{width:1.875rem}.hamburger__inner{top:50%;display:block;margin-top:-.09375rem;margin-left:.1875rem;position:absolute}.is-active .hamburger__inner{transition-delay:0.12s;transition-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1);-ms-transform:rotate(45deg);transform:rotate(45deg)}.hamburger__inner::before{width:1.425rem;top:-.5625rem;transition:top 75ms ease 0.12s,opacity 75ms ease,width .5s;transition-delay:0.035s}.is-active .hamburger__inner::before{top:0;transition:top 75ms ease, opacity 75ms ease 0.12s;opacity:0}.hamburger__inner::after{width:1.05rem;bottom:-.5625rem;transition:bottom 75ms ease 0.12s,transform 75ms cubic-bezier(0.55, 0.055, 0.675, 0.19),width 0.285s}.is-active .hamburger__inner::after{bottom:0;transition:bottom 75ms ease,transform 75ms cubic-bezier(0.215, 0.61, 0.355, 1) 0.12s;-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.hamburger--light .hamburger__inner,.hamburger--light .hamburger__inner::before,.hamburger--light .hamburger__inner::after{background-color:#fff}.js .accordion__heading{position:relative;outline:none}.js .accordion__heading:hover:not([aria-expanded='true']) span{border-bottom-color:#00d8ff}.js .accordion__heading[aria-expanded='true'] svg{-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.js .accordion__heading h3{font-size:1.625rem;padding-right:1.5rem;cursor:pointer}.js .accordion__heading h3 span{border-bottom:1px solid transparent;transition:color .5s cubic-bezier(0.4, 0, 0, 1),border .5s cubic-bezier(0.4, 0, 0, 1)}.js .accordion__heading h3 i{position:absolute;top:50%;right:0;margin-top:-.4375rem}.js .accordion__heading svg{transition:transform 0.3s cubic-bezier(0.4, 0, 0, 1);-ms-transform:rotate(90deg);transform:rotate(90deg);-ms-transform-origin:50% 50%;transform-origin:50% 50%}.js .accordion__body{height:0;overflow:hidden;transition:height 0.35s ease-out}.mask{position:fixed;top:0;left:0;min-height:100%;min-height:100vh;height:100%;min-width:100%;width:100%;display:block;background:#fff;z-index:99999;overflow:hidden;-ms-transform:translateX(0%) scaleY(1) scaleX(0);transform:translateX(0%) scaleY(1) scaleX(0);-ms-transform-origin:0;transform-origin:0;will-change:transform;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden}.mask--secondary{background:#f6f6f6}.loader{animation:rotate 1s infinite forwards linear}.card__wrap{margin-left:-24px;margin-right:-24px}.card__wrap>div{padding-left:24px;padding-right:24px}.card__link{text-decoration:none;border-bottom:0;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:all .5s cubic-bezier(0.4, 0, 0, 1)}.card__link:hover,.card__link:focus{border-bottom:0}@media (min-width: 48em){.card__link:hover .card--team__overlay,.card__link:focus .card--team__overlay{box-shadow:0 0 24px 0 rgba(12,0,51,0.2)}.card__link:hover .card--team__overlay::before,.card__link:focus .card--team__overlay::before{opacity:0.9;visibility:visible;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.card__link:hover .card--team__quote,.card__link:focus .card--team__quote{opacity:1;visibility:visible;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1),transform 0.5s cubic-bezier(0.4, 0, 0, 1);-ms-transform:translateY(0);transform:translateY(0)}.card__link:hover .card--team__icons svg *,.card__link:focus .card--team__icons svg *{fill:#fff}}.card__icons{position:absolute;top:1.5rem;right:1.5rem;bottom:0}.card__icons li{margin-bottom:.75rem}.card--shadow:hover{position:relative;z-index:1}.card--shadow .card__link:hover,.card--shadow .card__link:focus{box-shadow:0 0 24px 0 rgba(12,0,51,0.2)}.card--overlay .card__inner{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.card--light-hover .card__link:hover,.card--light-hover .card__link:focus{background:#fff}.card--team{width:100%;margin-bottom:2rem}@media (min-width: 48em) and (max-width: 61.99em){.card--team:nth-child(2n){-ms-transform:translateY(40%);transform:translateY(40%)}}@media (min-width: 62em){.card--team:nth-child(3n+2){-ms-transform:translateY(40%);transform:translateY(40%)}.card--team:nth-child(3n){-ms-transform:translateY(80%);transform:translateY(80%)}}.card--team__overlay{-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;color:#fff}@media (max-width: 47.99em){.card--team__overlay .card__icons{position:relative;left:1.0625rem;right:auto;top:auto;margin-bottom:1.5rem !important}}@media (min-width: 48em){.card--team__overlay{position:absolute;top:0;right:0;left:0;z-index:2;height:0;padding-bottom:100%}.card--team__overlay::before{opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1);content:"";display:block;position:absolute;width:100%;height:100%;background:#004d5a}}.card--team__icons a:hover i,.card--team__icons a:focus i{opacity:0.5}.card--team__icons i{width:1.25rem;height:1.25rem;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.card--team__icons svg *{fill:#25272a;transition:fill 0.5s cubic-bezier(0.4, 0, 0, 1)}.card--team__quote{font-size:1rem}@media (max-width: 47.99em){.card--team__quote{padding-top:0}}@media (min-width: 48em){.card--team__quote{opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1),transform 0.5s cubic-bezier(0.4, 0, 0, 1);position:absolute;bottom:0;left:0;-ms-transform:translateY(50px);transform:translateY(50px);color:#fff}}@media (min-width: 75em){.card--team__quote{font-size:1.25rem}}.card--team__quote p{margin-bottom:0}.card--team.is-visible{opacity:1;visibility:visible;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1);display:block}@media (min-width: 30em) and (max-width: 47.99em){.card--team.is-visible-1,.card--team.is-visible-3{left:50%}.card--team.is-visible-2,.card--team.is-visible-3{-ms-transform:translateY(100%);transform:translateY(100%)}}.card--board__icon{opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1)}.card--board .card__inner{margin-left:auto;margin-right:auto;max-width:25rem}.card--board .card__link:hover .card--board__icon,.card--board .card__link:focus .card--board__icon{opacity:1;visibility:visible;transition:opacity .7s cubic-bezier(0.4, 0, 0, 1);transition-delay:0.1s}.card--linked__link i{transition:transform .5s cubic-bezier(0.4, 0, 0, 1)}.card--linked .card__link{color:#25272a;border-bottom:1px solid #d2d2d2}.card--linked .card__link:hover,.card--linked .card__link:focus{border-bottom-color:transparent}.card--linked .card__link:hover .card--linked__link i,.card--linked .card__link:focus .card--linked__link i{-ms-transform:translateX(.5rem);transform:translateX(.5rem)}.card--linked .card__link-fake{margin-top:auto}.card--news{background-color:#f4f4f4;margin-bottom:1.5rem}@media (min-width: 75em){.card--news{margin-bottom:0}.card--news .row{-ms-flex-align:center;align-items:center}.card--news__image{padding-left:2.875rem}}@media (min-width: 75em){.card--news-sticky .card__link{-ms-flex-align:start;align-items:flex-start}.card--news-sticky__image{padding-left:2.875rem}}.section--light{background-color:#fff}.section--darkish{background-color:#323438}.section--dark{background-color:#25272a;background-image:url(../../img/lines-light.svg);background-size:100%;background-position:50% 0;background-attachment:fixed}.section--darker{background-color:#000}.section--tertiary{background-color:#004d5a}.section--tuna{background-color:#373739}.section--dex{background-color:#001736;background-size:cover;background-position:50% 50%}.section--dex__content{max-width:37.5rem}.section--pad{padding:1.5rem}@media (min-width: 62em){.section--pad{padding:2.5rem}}.section--tall{min-height:100vh}.section--center{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;padding-top:1.875rem;padding-bottom:1.875rem}.section--rounded{border-radius:.625rem}.section--first{padding-top:6.25rem}@media (min-width: 62em){.section--first{padding-top:8.125rem}}.section--product__icon{position:relative;width:5rem;height:5rem;border-radius:5px;background:#fff;padding:1.25rem;margin-bottom:2.5rem}.section--product__icon::after{content:"";display:block;position:absolute;position:absolute;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%);top:100%;border-top:10px solid #fff;border-left:10px solid transparent;border-right:10px solid transparent}.section--product__icon svg{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);width:3.125rem;height:3.125rem;margin-bottom:1.5rem}.section--product__icon .icon__secondary{fill:#25272a}.section--product .container{padding-top:7.5rem;padding-bottom:3.125rem}@media (max-width: 37.49em){.section--product .container{padding-top:5.625rem}}@media (min-width: 37.5em) and (max-width: 47.99em){.section--product .container{padding-top:8.75rem}}@media (min-width: 48em){.section--product__icon{position:absolute;right:3%;bottom:1.25rem;width:12.5rem;height:12.5rem;border-radius:10px;padding:1.875rem}.section--product__icon::after{border-top-width:35px;border-left-width:35px;border-right-width:35px}.section--product__icon svg{width:6.25rem;height:6.25rem}.section--product .container{padding-bottom:5rem;-ms-transform:none;transform:none}}@media (min-width: 62em){.section--product__icon{width:18.75rem;height:18.75rem;padding:5rem;right:10%}.section--product__icon svg{width:9.375rem;height:9.375rem}.section--product .container{padding-top:10.625rem;padding-bottom:10rem}}@media (min-width: 75em){.section--product__icon{width:23.75rem;height:23.75rem;padding:5rem}.section--product__icon::after{border-top-width:35px;border-left-width:35px;border-right-width:35px}.section--product__icon svg{width:13.4375rem;height:13.4375rem}}.section--image{min-height:25rem;background-size:cover;background-repeat:no-repeat;background-position:50%}@media (min-width: 48em){.section--image{min-height:31.25rem}}@media (min-width: 62em){.section--image{min-height:37.5rem}}.section--full-page-image{height:31.25rem;background-size:cover;background-repeat:no-repeat;background-position:50%}@media (min-width: 48em){.section--full-page-image{height:46.875rem}}.section--full-page-image-overlay:not(.section--dex)::after{content:"";display:block;position:absolute;position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,0.4)}.section--full-page-image .container{position:relative;z-index:1}.section--full-page-image .container :last-child{margin-bottom:0}.section--full-page-image+.intro{margin-top:2.5rem}@media (min-width: 48em){.section--full-page-image+.intro{margin-top:5rem}}.section--audience{z-index:1;margin-bottom:2.5rem}.section--audience .container{padding-top:7.5rem;padding-bottom:3.125rem;z-index:1}@media (max-width: 37.49em){.section--audience .container{padding-top:5.625rem}}@media (min-width: 37.5em) and (max-width: 47.99em){.section--audience .container{padding-top:8.75rem}}@media (min-width: 48em){.section--audience{margin-bottom:5rem}}@media (min-width: 62em){.section--audience .container{padding-top:10.625rem;padding-bottom:10rem}}.icons li{margin-left:.5rem}.icons a:hover svg *,.icons a:focus svg *{fill:#25272a}.icons a svg *{transition:fill .5s cubic-bezier(0.4, 0, 0, 1)}.location__title{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);z-index:1}.location__content{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.location__content div{margin:auto auto 0 0}.object-fit{padding:0;position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;font-family:"object-fit: cover; object-position: 50% 50%;"}.object-fit--contain{object-fit:contain;font-family:"object-fit: contain; object-position: 50% 50%;"}.ratio{height:0;overflow:hidden}.ratio img{position:absolute;top:0;left:0}.ratio--16x9{padding-bottom:56.25%}.ratio--9x16{padding-bottom:177.77778%}.ratio--66{padding-bottom:66.66667%}.ratio--100{padding-bottom:100%}.ratio--location{padding-bottom:71.79487%}.image-hover:hover img,.image-hover:focus img{opacity:0.2;-ms-transform:scale(1.1);transform:scale(1.1)}.image-hover img{opacity:0.5;transition:opacity 0.6s cubic-bezier(0.4, 0, 0, 1),transform 0.6s cubic-bezier(0.4, 0, 0, 1)}img.alignleft,img.alignright{max-width:100%;height:auto}.alignright{margin:0 0 2rem}@media (max-width: 47.99em){.alignright{width:100%;height:auto}}@media (min-width: 48em){.alignright{margin-left:4rem;margin-bottom:4rem;float:right}}@media (min-width: 75em){.alignright{margin-right:-4rem}}.alignright.wp-caption{text-align:right}@media (max-width: 47.99em){.alignright.wp-caption{width:100% !important}}.alignright.wp-caption img{margin-bottom:.5rem}@media (max-width: 47.99em){.alignright.wp-caption img{width:100%;height:auto}}.alignleft{margin:0 0 2rem}@media (max-width: 47.99em){.alignleft{width:100%;height:auto}}@media (min-width: 48em){.alignleft{margin-right:4rem;margin-bottom:4rem;float:left}}@media (min-width: 75em){.alignleft{margin-left:-4rem}}.alignleft.wp-caption{text-align:left}@media (max-width: 47.99em){.alignleft.wp-caption{width:100% !important}}.alignleft.wp-caption img{margin-bottom:.5rem}@media (max-width: 47.99em){.alignleft.wp-caption img{width:100%;height:auto}}.aligncenter{margin-top:.5rem;margin-bottom:2rem;width:100% !important;height:auto;position:relative;z-index:1}@media (min-width: 62em){.aligncenter{margin-left:calc(-25% + 1.5rem / 2);margin-right:calc(-25% + 1.5rem / 2);width:135% !important;margin-top:2rem;margin-bottom:3.5rem}}@media (min-width: 75em){.aligncenter{margin-left:calc(-28% + 32px / 2);margin-right:calc(-28% + 32px / 2);width:156% !important}}.aligncenter.wp-caption{text-align:right}.aligncenter.wp-caption img{width:100%;height:auto;margin-bottom:.5rem}.wp-caption-text{font-size:.875rem;margin-bottom:0}.img-responsive{max-width:100%;height:auto}.img-stretch{width:100%;height:auto}.img-lazyload{opacity:0;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.img-lazyload.lazyloaded{opacity:1}.img-rounded{border-radius:6.25rem;overflow:hidden}.images{z-index:1}.images__inner{z-index:2}.images__section{position:absolute;left:-150%;width:300%;height:50%;bottom:0}.images__caption{font-size:.875rem}.logo--greensync{width:9.375rem;height:1.8125rem}.logo--greensync svg{width:9.375rem;height:1.8125rem}@media (min-width: 62em){.logo--greensync{width:14.75rem;height:2.875rem}.logo--greensync svg{width:14.75rem;height:2.875rem}}.logo--greensync__text{fill:#25282b;transition:fill 0.25s cubic-bezier(0.4, 0, 0, 1)}.has-banner .logo--greensync__text{fill:#fff}.header-is-solid .logo--greensync__text{fill:#25282b}.logo--dex{width:4.25rem;height:1.8125rem}.logo--dex svg{width:5.75rem;margin-top:-0.75rem}.logo--dex path{fill:#00d8ff}.logo--dex path.icon__primary{fill:#001736}.header-is-solid .logo--dex path.icon__primary{fill:#001736}.sticky-wrapper{width:70px !important;position:absolute;top:0;left:0}@media (max-width: 47.99em){.sticky-wrapper{width:auto !important;height:auto !important;position:static !important;margin-bottom:2.5rem}.sticky-wrapper>div{position:static !important}}@media (max-width: 47.99em){.social__links{margin-top:0;margin-left:0;padding-left:0;list-style:none;margin-bottom:0}.social__links>li{margin-bottom:0}.social__links>li::before{display:none}.social__links>li{display:inline-block}}.social li{border:1px solid #d2d2d2}@media (max-width: 47.99em){.social li{border-right:0}.social li:last-child{border-right:1px solid #d2d2d2}}@media (min-width: 48em){.social li{border-bottom:0}.social li:last-child{border-bottom:1px solid #d2d2d2}}.social a{text-decoration:underline;border-bottom:0;width:4.375rem;height:4.375rem;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.social a:hover,.social a:focus{border-bottom:0}.social a:hover svg *,.social a:focus svg *{fill:#c2d400}.social svg *{fill:#25272a;transition:all .5s cubic-bezier(0.4, 0, 0, 1)}.pullout{-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000;position:fixed;top:0;z-index:10;width:100%;height:100vh;overflow-y:auto;transition:transform 0.5s cubic-bezier(0.4, 0, 0, 1)}.pullout__return i{margin-right:.5rem;-ms-transform:rotate(-180deg);transform:rotate(-180deg);margin-top:-.1875rem}.pullout .container{padding-top:2.5rem;padding-bottom:2.5rem}.pullout--left{left:0;-ms-transform:translateX(-100%);transform:translateX(-100%)}.pullout--left.is-active{-ms-transform:translateX(0);transform:translateX(0)}.pullout--right{right:0;-ms-transform:translateX(100%);transform:translateX(100%)}.pullout--right.is-active{-ms-transform:translateX(0);transform:translateX(0)}.pullout-is-open{height:100vh;overflow:hidden}.noimage{width:100%}.ratio .noimage{position:absolute;top:0;right:0}.ratio .noimage img{position:relative;z-index:1}.separator{width:.1875rem;height:.1875rem;border-radius:.1875rem;background:rgba(0,0,0,0.3);display:inline-block;vertical-align:middle;margin:-.125rem .25rem 0}.audience-map{right:0;z-index:2;-webkit-backface-visibility:hidden;backface-visibility:hidden}@media (min-width: 48em){.audience-map{position:absolute;top:100%;-ms-transform:translate(50%, -51.5%);transform:translate(50%, -51.5%)}}@media (min-width: 75em){.audience-map{-ms-transform:translate(33%, -57.5%);transform:translate(33%, -57.5%)}}.audience-map__image{width:130vw;max-width:75rem;-ms-transform:translateX(11%);transform:translateX(11%);margin-bottom:-3.125rem;margin-top:-3.125rem}@media (min-width: 48em){.audience-map__image{width:95vw;-ms-transform:translateY(-9.6%);transform:translateY(-9.6%);margin:0}}@media (min-width: 75em){.audience-map__image{width:80vw;-ms-transform:translateY(-12.6%);transform:translateY(-12.6%)}}.audience-map__locations,.audience-map__locations li{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}@media (max-width: 47.99em){.audience-map__locations,.audience-map__locations li{display:none}}.audience-map__location{position:absolute;pointer-events:auto;outline:none}.audience-map__location.is-active .audience-map__tooltip{opacity:1;visibility:visible;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.audience-map__location span{transition:box-shadow .5s cubic-bezier(0.4, 0, 0, 1)}.audience-map__location span::before{content:"";display:block;position:absolute;position:absolute;top:50%;left:50%;width:2.5rem;height:2.5rem;border-radius:2.5rem;margin:-1.25rem 0 0 -1.25rem;background:#c2d400;opacity:0.3;-ms-transform:scale(0);transform:scale(0);transition:transform .5s cubic-bezier(0.4, 0, 0, 1);animation:pulse 1.5s infinite forwards}.audience-map__tooltip{position:absolute;bottom:2.1875rem;left:50%;z-index:2;width:21.5625rem;font-size:.875rem;font-weight:normal;opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1);box-shadow:0 0 24px 0 rgba(12,0,51,0.2);-ms-transform:translateX(-50%);transform:translateX(-50%);transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.audience-map__tooltip::after{content:"";display:block;position:absolute;position:absolute;top:100%;left:50%;border-top:1rem solid #fff;border-right:1rem solid transparent;border-left:1rem solid transparent;-ms-transform:translateX(-50%);transform:translateX(-50%)}.audience-map__tooltip a{pointer-events:auto}.audience-map__content{overflow:hidden;padding-left:1rem;padding-bottom:2px}.author__img{width:4.375rem;height:4.375rem}.author__container{-ms-flex-item-align:end;align-self:flex-end}@media (min-width: 62em){.author time{margin-bottom:-.375rem}}.map{height:18.75rem}.js .marker{opacity:0}.js .map-loaded .marker{opacity:1}.gm-style .gm-style-iw{max-width:12.5rem;font-size:.875rem;padding:.625rem;line-height:1.4}.gm-style .gm-style-iw h3{margin-bottom:.3125rem}.timer{width:3.4375rem;height:3.4375rem;outline:none;vertical-align:middle}.timer__time,.timer__bg{position:absolute;top:0;left:0;width:3.4375rem;height:3.4375rem;fill:none;stroke-width:2px}.timer__time{z-index:2}.timer__time circle{stroke-dasharray:163.36282;stroke-dashoffset:0px;stroke-linecap:round;stroke:#000}.timer__bg{z-index:1;stroke:#d7d7d7}.timer.is-playing .timer__time circle{animation:countdown 4s linear infinite forwards}.timer.is-paused .timer__time circle{animation-play-state:paused}@keyframes countdown{from{stroke-dashoffset:163.36282}to{stroke-dashoffset:0px}}.wp-pagenavi{margin-left:auto;margin-right:auto;text-align:center;border-right:1px solid #d2d2d2;display:inline-block}.wp-pagenavi .pages,.wp-pagenavi .last,.wp-pagenavi .first,.wp-pagenavi .extend{display:none}.wp-pagenavi .current,.wp-pagenavi .page,.wp-pagenavi .nextpostslink,.wp-pagenavi .previouspostslink{width:3.125rem;height:3.125rem;line-height:3.125rem;border:1px solid #d2d2d2;border-right:0;display:inline-block;color:#25272a}.wp-pagenavi .current:hover,.wp-pagenavi .current:focus,.wp-pagenavi .page:hover,.wp-pagenavi .page:focus,.wp-pagenavi .nextpostslink:hover,.wp-pagenavi .nextpostslink:focus,.wp-pagenavi .previouspostslink:hover,.wp-pagenavi .previouspostslink:focus{color:#c2d400}.wp-pagenavi .current{color:#c2d400;font-weight:bold}.textswitch{position:relative;display:block}.textswitch .sentence{position:absolute}.textswitch .sentence.is-active{position:static}.media,.media__bd{overflow:hidden;_overflow:visible;zoom:1}.media .media__img{float:left;margin-right:1rem}.media--right .media__img{float:right;margin-right:0;margin-left:1rem}.media--vertical .media__img{float:none;margin-right:0;margin-bottom:1rem}.milestone{margin-left:3.75rem;padding-bottom:2.5rem}.milestone::before,.milestone::after{left:-3.0625rem}.milestone::before{width:.875rem;height:.875rem;border-radius:.875rem;margin-left:-.1875rem;content:"";display:block;position:absolute;top:.6875rem;z-index:2;background:#fff;box-shadow:0 0 0 13px #00d8ff;display:block !important}.milestone::after{content:"";display:block;position:absolute;top:0;bottom:0;z-index:1;width:8px;background:#00d8ff;-ms-transform-origin:top;transform-origin:top;transition:transform 0.25s cubic-bezier(0.4, 0, 0, 1) 0.25s}.milestone:last-child{padding-bottom:0}.milestone:last-child::after{display:none}.milestone__date{padding-top:.3125rem;display:block}.js.cssanimations .milestone.is-show{opacity:1}.js.cssanimations .milestone.is-show::before{animation:fadeIn 0.5s 1 both cubic-bezier(0.4, 0, 0.2, 1)}.js.cssanimations .milestone.is-show::after{-ms-transform:scaleY(1);transform:scaleY(1)}.js.cssanimations .milestone.is-show .milestone__content{animation:fadeInUpSmall 0.6s 1 both cubic-bezier(0.4, 0, 0.2, 1)}@media (min-width: 30em){.milestone{margin-left:5.125rem}.milestone::before,.milestone::after{left:-3.0625rem}.milestone::after{-ms-transform:scaleY(0);transform:scaleY(0)}}@media (min-width: 48em){.milestone{margin-left:15.3125rem}.milestone::before,.milestone::after{left:-13.4375rem}.milestone__date{position:absolute;top:0;left:-10.625rem}}@media (min-width: 62em){.milestone{margin-left:18.75rem}.milestone::before,.milestone::after{left:-16.875rem}.milestone__date{left:-12.5rem}}.today-tomorrow{position:relative;height:80vh;max-height:31.25rem}@media (min-width: 48em){.today-tomorrow{max-height:46.875rem}}.today-tomorrow div{position:absolute;background-position:0% 0%;background-size:cover;top:0;left:0;right:0;bottom:0;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.today-tomorrow__lower{background:url("../../img/today-tomorrow/today.jpg")}.nav{-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;font-size:1.125rem;background:#25272a;color:#fff;overflow-y:auto;-ms-transform:translateX(100%);transform:translateX(100%);transition:transform .5s cubic-bezier(0.4, 0, 0, 1);transition-delay:.5s}@media (max-width: 47.99em){.nav{font-size:1rem}}.nav__container{margin-left:1.5rem;margin-right:1.5rem;padding-top:6.25rem}@media (min-height: 51.25em){.nav__container{padding-top:12.5rem}}@media (min-width: 48em){.nav__column:first-child{margin-left:auto}}.nav__animation{opacity:0;-ms-transform:translateY(3.125rem);transform:translateY(3.125rem);transition:opacity .5s 0s,transform .5s .5s}.nav__close,.nav__search{transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}@media (min-width: 48em){.nav__close,.nav__search{top:2.5rem}}.nav__close.is-inactive,.nav__search.is-inactive{opacity:0.3}.nav__close{position:absolute;top:1.5rem;right:0}.nav__search{position:absolute;top:1.5rem;right:2.5rem;margin-right:.5rem}.nav__search .icon-search{width:1.875rem;height:1.875rem}.nav__caption{color:rgba(255,255,255,0.3)}@media (max-width: 47.99em){.nav__menu i{display:none}}@media (min-width: 30em) and (max-width: 47.99em){.nav__menu{margin-top:0;margin-left:0;padding-left:0;list-style:none;display:-moz-flex;display:-ms-flexbox;display:flex;-moz-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;flex-wrap:wrap}.nav__menu>li{margin-bottom:0}.nav__menu>li::before{display:none}}.nav__menu li{padding-top:.5rem;padding-bottom:.5rem}@media (min-width: 30em) and (max-width: 47.99em){.nav__menu li{width:50%;padding-right:1rem}}.nav__menu a,.nav__menu a:visited{border-bottom-color:transparent;color:#fff}.nav__menu a:hover,.nav__menu a:focus{border-bottom-color:#fff}@media (min-width: 48em){.nav__icon-list li{padding-top:1.5rem;padding-bottom:1.5rem}}@media (min-width: 48em){.nav__icon-list a{position:relative;margin-left:4rem;display:block;border:0}.nav__icon-list a span{border-bottom:1px solid currentColor;text-decoration:none;transition:color .5s cubic-bezier(0.4, 0, 0, 1),border .5s cubic-bezier(0.4, 0, 0, 1);border-bottom-color:transparent}.nav__icon-list a span:hover,.nav__icon-list a span:focus{border-bottom:1px solid #c2d400}.nav__icon-list a span:hover,.nav__icon-list a span:focus{border-bottom-color:#fff}}.nav__icon-list i{position:absolute;top:0;left:0;vertical-align:middle}@media (min-width: 48em){.nav__icon-list i{display:inline-block;top:.875rem;left:-2.5rem}}.nav__icon-list i .icon__secondary{fill:#fff}.nav__icon-list svg{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);width:1.75rem;height:1.75rem}@media (min-width: 48em){.nav__icon-list{font-size:1.5rem}}.nav ul{margin-top:0;margin-left:0;padding-left:0;list-style:none}.nav ul>li{margin-bottom:0}.nav ul>li::before{display:none}.nav.is-open{-ms-transform:translateX(0);transform:translateX(0);transition-delay:0s}.nav.is-open .nav__column--1 .nav__animation:nth-child(1n){transition-delay:0.3s}.nav.is-open .nav__column--1 .nav__animation:nth-child(2n){transition-delay:0.35s}.nav.is-open .nav__column--2 .nav__animation:nth-child(1n){transition-delay:0.4s}.nav.is-open .nav__column--2 .nav__animation:nth-child(2n){transition-delay:0.4s 0.5s}.nav.is-open .nav__column--3 .nav__animation:nth-child(1n){transition-delay:0.5s}.nav.is-open .nav__column--3 .nav__animation:nth-child(2n){transition-delay:0.5s 0.5s}.nav.is-open .nav__animation{-ms-transform:translateY(0);transform:translateY(0);opacity:1}.nav.is-animating{will-change:transform}.search-is-open .nav{overflow:hidden}.nav-is-open{height:100vh;overflow:hidden}.header{-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000;position:fixed;top:0;right:0;left:0;z-index:9;height:4.375rem;transition:transform .5s cubic-bezier(0.4, 0, 0, 1),height .5s cubic-bezier(0.4, 0, 0, 1)}.header__container{height:100%;-ms-flex-align:center;align-items:center}.header__hamburger{margin-left:auto}.header__title{opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1);width:100%;text-align:center;display:none}.header-title-is-visible .header__title{opacity:1;visibility:visible;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.header__button-greensync{position:absolute;top:.3125rem;right:3.4375rem}@media (max-width: 29.99em){.header__button-greensync{top:.1875rem}}@media (min-width: 30em) and (max-width: 61.99em){.header__button-greensync{padding:.75rem 1.125rem .6875rem}}@media (min-width: 62em){.header__button-greensync{top:.875rem}}@media (max-width: 29.99em){.header__button-greensync{font-size:.8125rem;padding:.625rem .8125rem .5rem}}.pullout-is-open .header{z-index:0}@media (min-width: 48em){.header__title{max-width:350px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:auto;margin-right:auto;font-size:.875rem;display:block}}@media (min-width: 62em){.header{height:6.25rem}.header__title{font-size:1rem;max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.header-is-hidden{-ms-transform:translateY(-100%);transform:translateY(-100%)}.has-banner .header .hamburger__inner,.has-banner .header .hamburger__inner::before,.has-banner .header .hamburger__inner::after{background-color:#fff}.header-is-solid,.has-banner .header-is-solid{background:#fff;box-shadow:0 0 24px 0 rgba(12,0,51,0.2)}.header-is-solid .header__hamburger .hamburger__inner,.header-is-solid .header__hamburger .hamburger__inner::before,.header-is-solid .header__hamburger .hamburger__inner::after,.has-banner .header-is-solid .header__hamburger .hamburger__inner,.has-banner .header-is-solid .header__hamburger .hamburger__inner::before,.has-banner .header-is-solid .header__hamburger .hamburger__inner::after{background-color:#25272a}.footer{width:100%}.footer__container{display:-ms-flexbox;display:flex;font-size:.875rem;color:#74787e}@media (max-width: 47.99em){.footer__container{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center}}@media (min-width: 48em){.footer__container{height:6.25rem;-ms-flex-align:center;align-items:center}}.footer__container a,.footer__container a:visited{color:#74787e}.footer__container a:hover,.footer__container a:focus,.footer__container a:visited:hover,.footer__container a:visited:focus{color:#fff}.footer__nav{margin-top:1rem;margin-bottom:1rem}@media (min-width: 48em){.footer__nav{margin-bottom:0;margin-left:.5rem}}@media (min-width: 48em){.footer__nav{margin-top:0}}@media (max-width: 47.99em){.footer__nav li:first-child::before{display:none}}.footer__nav li::before{width:auto;height:auto;border-radius:none;background:none;content:'|';display:inline-block;vertical-align:middle;position:static;margin-left:.25rem;margin-right:.5rem}.input-text,.simple_captcha_medium input{width:100%;background:#fff;border:1px solid rgba(0,0,0,0.25);padding:24px 16px;border-radius:3px;transition:border .5s cubic-bezier(0.4, 0, 0, 1)}.input-text.placeholder,.simple_captcha_medium input.placeholder{color:rgba(0,0,0,0.25)}.input-text:-moz-placeholder,.simple_captcha_medium input:-moz-placeholder{color:rgba(0,0,0,0.25)}.input-text::-moz-placeholder,.simple_captcha_medium input::-moz-placeholder{color:rgba(0,0,0,0.25)}.input-text:-ms-input-placeholder,.simple_captcha_medium input:-ms-input-placeholder{color:rgba(0,0,0,0.25)}.input-text::-webkit-input-placeholder,.simple_captcha_medium input::-webkit-input-placeholder{color:rgba(0,0,0,0.25)}.input-text:hover,.simple_captcha_medium input:hover{border-color:rgba(0,0,0,0.5)}.input-text:focus,.simple_captcha_medium input:focus{border-color:#c2d400;box-shadow:none;outline:none}.input-text:disabled,.simple_captcha_medium input:disabled{border-color:transparent;background-color:rgba(0,0,0,0.1)}.input-text.success,.simple_captcha_medium input.success{border-color:#ffc000}.input-text.error,.gfield_error .input-text,.simple_captcha_medium input.error,.gfield_error .simple_captcha_medium input{border-color:#ff0048}.input-text--dark,.simple_captcha_medium input--dark{color:#fff;border-color:rgba(255,255,255,0.2);background:transparent}.input-text--dark.placeholder,.simple_captcha_medium input--dark.placeholder{color:rgba(255,255,255,0.5)}.input-text--dark:-moz-placeholder,.simple_captcha_medium input--dark:-moz-placeholder{color:rgba(255,255,255,0.5)}.input-text--dark::-moz-placeholder,.simple_captcha_medium input--dark::-moz-placeholder{color:rgba(255,255,255,0.5)}.input-text--dark:-ms-input-placeholder,.simple_captcha_medium input--dark:-ms-input-placeholder{color:rgba(255,255,255,0.5)}.input-text--dark::-webkit-input-placeholder,.simple_captcha_medium input--dark::-webkit-input-placeholder{color:rgba(255,255,255,0.5)}.input-text--dark:hover,.simple_captcha_medium input--dark:hover{border-color:rgba(255,255,255,0.3)}.input-text--dark:focus,.simple_captcha_medium input--dark:focus{border-color:rgba(255,255,255,0.3);box-shadow:none;outline:none}.input-text:disabled,.simple_captcha_medium input:disabled{cursor:default}.input-checkbox{position:absolute;left:-9999px}.input-checkbox+label{font-weight:normal;display:block;position:relative;cursor:pointer;margin-bottom:1rem;padding-left:1.75rem}.input-checkbox+label::after{width:1.25rem;height:1.25rem;border:2px solid rgba(0,0,0,0.25);border-radius:3px;content:'';display:block;position:absolute;top:.1875rem;left:0;transition:border .5s cubic-bezier(0.4, 0, 0, 1)}.input-checkbox+label::before{width:7px;height:12px;content:'';position:absolute;top:.3125rem;left:.4375rem;border-right:2px solid #fff;border-bottom:2px solid #fff;-ms-transform:rotate(45deg);transform:rotate(45deg);opacity:0;z-index:1;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.input-checkbox:checked+label::before{opacity:1}.input-checkbox:checked+label::after{background:#c2d400;border-color:#c2d400}.input-checkbox.success+label::after{border-color:#ffc000}.input-checkbox.error+label::after{border-color:#ff0048}.input-checkbox:disabled{cursor:default}.input-checkbox:disabled+label::after{border-color:transparent;background-color:rgba(0,0,0,0.1)}.input-radio{position:absolute;left:-9999px}.input-radio+label{font-weight:normal;display:block;position:relative;cursor:pointer;margin-bottom:1rem;padding-left:1.75rem}.input-radio+label::after{content:"";display:block;position:absolute;width:1.25rem;height:1.25rem;border:2px solid rgba(0,0,0,0.25);border-radius:20px;top:.1875rem;left:0;transition:border .5s cubic-bezier(0.4, 0, 0, 1)}.input-radio+label::before{content:"";display:block;position:absolute;width:.625rem;height:.625rem;border-radius:.625rem;top:.5rem;left:.3125rem;background:#c2d400;opacity:0;z-index:1;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.input-radio:checked+label::before{opacity:1}.input-radio:checked+label::after{border-color:#c2d400}.input-radio.success+label::after{border-color:#ffc000}.input-radio.error+label::after{border-color:#ff0048}.input-radio:disabled{cursor:default}.input-radio:disabled+label::after{border-color:transparent;background-color:rgba(0,0,0,0.1)}.textarea{width:100%;height:9.375rem;background:#fff;border:1px solid rgba(0,0,0,0.25);padding:24px 16px;border-radius:3px;transition:border .5s cubic-bezier(0.4, 0, 0, 1)}.textarea:hover{border-color:rgba(0,0,0,0.5)}.textarea:focus{border-color:#c2d400;box-shadow:none;outline:none}.textarea:disabled{border-color:transparent;background-color:rgba(0,0,0,0.1)}.textarea.success{border-color:#ffc000}.textarea.error,.gfield_error .textarea{border-color:#ff0048}.textarea--dark{color:#fff;border-color:rgba(255,255,255,0.2);background:transparent}.textarea--dark.placeholder{color:rgba(255,255,255,0.5)}.textarea--dark:-moz-placeholder{color:rgba(255,255,255,0.5)}.textarea--dark::-moz-placeholder{color:rgba(255,255,255,0.5)}.textarea--dark:-ms-input-placeholder{color:rgba(255,255,255,0.5)}.textarea--dark::-webkit-input-placeholder{color:rgba(255,255,255,0.5)}.textarea--dark:hover{border-color:rgba(255,255,255,0.3)}.textarea--dark:focus{border-color:rgba(255,255,255,0.3);box-shadow:none;outline:none}.textarea:disabled{cursor:default}.dropdown{position:relative}.dropdown::after{content:"";display:block;position:absolute;pointer-events:none}.dropdown::after{content:"";display:block;position:absolute;width:.625rem;height:.625rem;border-left:.1875rem solid #000;border-bottom:.1875rem solid #000;margin-top:-.3125rem;-ms-transform:rotate(-45deg);transform:rotate(-45deg);position:absolute;top:50%;right:1.5rem}.dropdown select{background:#fff;border:1px solid rgba(0,0,0,0.25);padding:24px 16px;border-radius:3px;transition:border .5s cubic-bezier(0.4, 0, 0, 1);padding-right:3.5rem;width:100%;margin:0;text-indent:0.01px;text-overflow:'';-moz-appearance:none;-webkit-appearance:none}.dropdown select:hover{border-color:rgba(0,0,0,0.5)}.dropdown select:focus{border-color:#c2d400;box-shadow:none;outline:none}.dropdown select:disabled{border-color:transparent;background-color:rgba(0,0,0,0.1)}.dropdown select.success{border-color:#ffc000}.dropdown select.error,.gfield_error .dropdown select{border-color:#ff0048}.dropdown select--dark{color:#fff;border-color:rgba(255,255,255,0.2);background:transparent}.dropdown select--dark.placeholder{color:rgba(255,255,255,0.5)}.dropdown select--dark:-moz-placeholder{color:rgba(255,255,255,0.5)}.dropdown select--dark::-moz-placeholder{color:rgba(255,255,255,0.5)}.dropdown select--dark:-ms-input-placeholder{color:rgba(255,255,255,0.5)}.dropdown select--dark::-webkit-input-placeholder{color:rgba(255,255,255,0.5)}.dropdown select--dark:hover{border-color:rgba(255,255,255,0.3)}.dropdown select--dark:focus{border-color:rgba(255,255,255,0.3);box-shadow:none;outline:none}.dropdown select::-ms-expand{display:none}.dropdown select:disabled{cursor:default}.dropdown select option{color:#25272a}.dropdown--inline{max-width:14.0625rem}.dropdown--inline::after{content:"";display:block;position:absolute;width:.375rem;height:.375rem;border-left:.1125rem solid #fff;border-bottom:.1125rem solid #fff;margin-top:-.1875rem;-ms-transform:rotate(-45deg);transform:rotate(-45deg);right:8px}.dropdown--inline select{width:14.0625rem;border-radius:0;border:0;border-bottom:1px solid #fff;padding:8px 24px 8px 0;color:rgba(255,255,255,0.5);background:transparent}.dropdown--inline select:hover,.dropdown--inline select:focus{outline:none;border-bottom-color:#fff}.dropdown--plain{display:inline-block}.dropdown--plain::after{width:.4375rem;height:.4375rem;border-left-width:2px;border-bottom-width:2px}.dropdown--plain select{width:auto;background:transparent;border:0;padding:0 2.5rem 0 0}label{color:#25272a;margin-bottom:1rem;display:block}.form__row{margin-bottom:1.5rem}.required{color:#ff0048;font-family:"WEB Regular Bold",sans-serif}.gform_fields{list-style:none;margin-bottom:0;padding-left:0}.gform_fields>li::before{display:none}.gfield_radio,.gfield_checkbox{margin-top:0;margin-left:0;padding-left:0;list-style:none}.gfield_radio>li,.gfield_checkbox>li{margin-bottom:0}.gfield_radio>li::before,.gfield_checkbox>li::before{display:none}.gfield_error .validation_message,.validation_error{color:#ff0048}.gfield_error .validation_message{margin-top:.5rem}.validation_error{margin-top:3.125rem;margin-bottom:1.5rem}.gform_confirmation_message{font-size:1.25rem;font-weight:bold;color:#c2d400}@media (min-width: 48em){.gform_confirmation_message{font-size:1.375rem}}@media (min-width: 75em){.gform_confirmation_message{font-size:1.5rem}}.gform_confirmation_message{margin-top:6.25rem}.gfield_visibility_hidden{position:absolute;left:-9999px}[data-js-dex-buttons-select] [class*="col-"]{margin-bottom:.625rem}@media (min-width: 62em){[data-js-dex-buttons-select] [class*="col-"]{margin-bottom:0}}.search__container{-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;padding-left:1.5rem;padding-right:1.5rem;font-size:.875rem;visibility:hidden;opacity:0;color:#fff;overflow:hidden;transition:visibility 0s 0.35s, opacity 0.35s}@media (min-width: 62em){.search__container{padding-left:40%;padding-right:5rem}}@media (min-width: 75em){.search__container{padding-left:50%}}.search__container.is-open{background:#25272a;visibility:visible;opacity:1;transition:visibility 0s, opacity 0.35s}.search__container.is-animating{will-change:opacity}.search__search{position:absolute;top:1.5rem;right:4.5rem;z-index:3}.search__form{z-index:2;padding-top:6.25rem;background:#25272a}@media (min-width: 48em){.search__form{padding-top:9.375rem}}@media (min-width: 62em){.search__form{max-width:none}}.search__results{position:absolute;top:0;right:0;width:100%;height:100vh;overflow-y:auto;padding-top:12.5rem;padding-left:1.5rem;padding-right:1.5rem}@media (min-width: 48em){.search__results{padding-top:18.75rem}}@media (min-width: 62em){.search__results{width:60%;padding-left:0;padding-right:5rem}}@media (min-width: 75em){.search__results{width:50%}}.search__results-list{margin-top:0;margin-left:0;padding-left:0;list-style:none}.search__results-list>li{margin-bottom:0}.search__results-list>li::before{display:none}.search__term{background:transparent;border:0;width:100%;font-size:1rem;border-bottom:1px solid #fff;padding-bottom:1rem;padding-right:2rem;color:#fff}.search__term.placeholder{color:#fff}.search__term:-moz-placeholder{color:#fff}.search__term::-moz-placeholder{color:#fff}.search__term:-ms-input-placeholder{color:#fff}.search__term::-webkit-input-placeholder{color:#fff}.search__term:focus{outline:none}@media (min-width: 30em){.search__term{font-size:1.5rem}}.search__button{position:absolute;right:0;bottom:.6875rem}@media (max-width: 29.99em){.search__icon{width:1.125rem;height:1.125rem}}.search__loader{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);width:0;height:0;display:block}.search__loader .icon-loader{margin-left:-1.25rem}@media (min-width: 62em){.search__loader .icon-loader{margin-left:-3.75rem}}.search__results-link,.search__results-link:visited,.search__results-link:hover,.search__results-link:focus{color:#fff}.search__hamburger{position:absolute;top:1.5rem;right:1.5rem;z-index:3;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.search__hamburger.is-inactive{opacity:0.3}.search__results-separator{opacity:0.2}.search-is-open{height:100vh;overflow:hidden}.home{background-color:#fff}.home__tagline{margin-top:3.125rem;margin-bottom:6.25rem}@media (min-width: 48em){.home__tagline{margin-top:6.25rem;margin-bottom:0}}@media (min-width: 62em){.home__tagline{margin-top:12.5rem}}.home__tagline p{margin-bottom:0}.home__animation{width:60vw;height:66%}.home__banner{height:100vh;position:relative;-ms-flex-pack:start;justify-content:flex-start;padding-top:12.5rem}@media (max-width: 47.99em) and (orientation: landscape){.home__banner{padding-top:6.25rem}}@media (min-width: 48em){.home__banner{padding-top:15.625rem}}@media (min-width: 62em){.home__banner{-ms-flex-pack:center;justify-content:center;height:auto;padding-top:21.875rem;padding-bottom:15.625rem}}.home__banner-image{width:120vw;height:auto;position:absolute;bottom:-3.125rem;right:-3.125rem}@media (min-width: 400px) and (max-height: 1000px){.home__banner-image{width:80vw}}@media (min-width: 25em) and (max-width: 47.99em){.home__banner-image{width:130vw}}@media (min-width: 48em){.home__banner-image{bottom:-6.25rem}}@media (min-width: 62em){.home__banner-image{width:70vw;bottom:-8.4375rem}}@media (min-width: 75em){.home__banner-image{right:-220px;bottom:-11.875rem}}@media (min-width: 1800px){.home__banner-image{right:-16.875rem;bottom:-15rem}}@media (min-width: 2000px){.home__banner-image{width:60vw}}@media (max-width: 47.99em) and (orientation: landscape){.home__banner-image{width:50vw}}.home__banner .container{position:relative;z-index:1}.home__banner [data-js-slick]>div:not(:first-of-type){display:none}.home__banner [data-js-slick].slick-initialized>div:not(:first-of-type){display:block}.team .card__link{cursor:default}@media (min-width: 48em){.team--2{padding-bottom:11.875rem}}@media (min-width: 75em){.team--2{padding-bottom:14.375rem}}@media (min-width: 62em){.team--3{padding-bottom:21.25rem}}@media (min-width: 75em){.team--3{padding-bottom:29.375rem}}.board{display:-moz-flex;display:-ms-flexbox;display:flex;-moz-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;-moz-justify-content:center;justify-content:center}.board .card{-moz-flex:0 1 100%;-ms-flex:0 1 100%;flex:0 1 100%}@media (min-width: 30em){.board .card{-moz-flex:0 1 50%;-ms-flex:0 1 50%;flex:0 1 50%}}@media (min-width: 62em){.board .card{-moz-flex:0 1 33.33%;-ms-flex:0 1 33.33%;flex:0 1 33.33%}}.board__modal{opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1)}.board__modal.is-active{opacity:1;visibility:visible;transition:opacity .5s cubic-bezier(0.4, 0, 0, 1)}.board__carousel .board__details:not(:first-of-type){display:none}.board__carousel.slick-initialized .board__details:not(:first-of-type){display:block}.board__details{padding-left:1.5rem;padding-right:1.5rem}@media (max-width: 47.99em){.board__content{-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.board__content .icons{margin-left:-.5625rem}.board__content .icons li{margin-left:0}.speak-to-expert:focus{outline:none}.speak-to-expert__steps{height:20.625rem;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;transition:height 0.5s cubic-bezier(0.4, 0, 0, 1)}.speak-to-expert-is-visible .speak-to-expert__steps{height:50rem}.speak-to-expert__steps .container{-ms-flex:1 1 auto;flex:1 1 auto}.speak-to-expert__step{width:100%}.speak-to-expert__step1{margin-left:auto;margin-right:auto;max-width:34.375rem}@media (min-width: 62em){.speak-to-expert__step1{max-width:58.75rem}}@media (min-width: 62em){.speak-to-expert__sentence{display:inline-block}}.speak-to-expert__dropdown{font-size:1.5rem;margin-left:.3125rem;margin-right:.625rem}@media (max-width: 47.99em){.speak-to-expert__dropdown{margin-left:auto;margin-right:auto;display:block;margin-bottom:1.5rem}}@media (max-width: 74.99em){.speak-to-expert__dropdown{font-size:1.25rem}}.speak-to-expert__back{position:absolute;top:-4.375rem;left:1rem}.speak-to-expert__privacy{color:rgba(255,255,255,0.5)}.speak-to-expert__privacy a,.speak-to-expert__privacy a:visited{color:rgba(255,255,255,0.5)}.speak-to-expert__privacy a:hover,.speak-to-expert__privacy a:focus,.speak-to-expert__privacy a:visited:hover,.speak-to-expert__privacy a:visited:focus{color:#fff;border-bottom-color:#fff}.speak-to-expert__privacy i{margin-right:.5rem}.speak-to-expert__error .error{position:absolute;left:50%;-ms-transform:translateX(-50%);transform:translateX(-50%);width:100%}.related-articles__list{position:relative;z-index:1}.related-articles__section{position:absolute;left:-150%;width:300%;height:50%;bottom:0}.related-articles__link:hover,.related-articles__link:focus{background:#25272a}.related-articles__link:hover .card__inner,.related-articles__link:focus .card__inner{opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1)}.related-articles__link:hover .related-articles__more,.related-articles__link:focus .related-articles__more{opacity:1;visibility:visible;transition:opacity 1s cubic-bezier(0.4, 0, 0, 1),transform 0.5s cubic-bezier(0.4, 0, 0, 1);-ms-transform:translateX(0);transform:translateX(0)}.related-articles__more{position:absolute;top:50%;bottom:mull;left:50%;opacity:0;visibility:hidden;transition:visibility 0s .5s,opacity .5s cubic-bezier(0.4, 0, 0, 1),transform 0.5s cubic-bezier(0.4, 0, 0, 1);-ms-transform:translateX(-1.875rem);transform:translateX(-1.875rem);margin:-.75rem 0 0 -.75rem}.related-articles__first .related-articles__more{-ms-transform:translateX(1.875rem) rotate(-180deg);transform:translateX(1.875rem) rotate(-180deg)}.related-articles__first .related-articles__link:hover .related-articles__more,.related-articles__first .related-articles__link:focus .related-articles__more{-ms-transform:translateX(0) rotate(-180deg);transform:translateX(0) rotate(-180deg)}.related-articles__middle{background:rgba(0,0,0,0.1)}@media (max-width: 47.99em){.related-articles__middle{display:none}}.related-articles__middle .related-articles__more{-ms-transform:translateY(-1.875rem) rotate(90deg);transform:translateY(-1.875rem) rotate(90deg)}.related-articles__middle .related-articles__link:hover .related-articles__more,.related-articles__middle .related-articles__link:focus .related-articles__more{-ms-transform:translateY(0) rotate(90deg);transform:translateY(0) rotate(90deg)}@media (max-width: 61.99em){.related-articles-3 .last{display:none}}@media (max-width: 61.99em){.related-articles .related-articles__middle{display:none}.related-articles .card--overlay .card__inner{position:static}.related-articles a{height:100%;padding:0;display:block}}.audience{padding-top:6.25rem;padding-bottom:6.25rem}@media (min-width: 25em){.audience{padding-top:10.625rem;padding-bottom:6.25rem}}@media (min-width: 48em){.audience{padding-top:18.75rem;padding-bottom:12.5rem}}@media (min-width: 75em){.audience{padding-bottom:18.75rem}}.audience__carousel{position:absolute;top:5.46875rem;right:0;margin-top:0;margin-left:0;padding-left:0;list-style:none;width:21.875rem;height:21.875rem;margin-top:-10.9375rem;margin-right:-10.9375rem;padding:0;list-style:none;transform:rotateX(56deg) rotateY(0deg) rotateZ(41.4deg)}.audience__carousel>li{margin-bottom:0}.audience__carousel>li::before{display:none}.audience__carousel li{position:absolute;left:100%;bottom:0;display:none;transition:all 0.5s}.audience__carousel li.is-previous,.audience__carousel li.is-previous-plus1,.audience__carousel li.is-current,.audience__carousel li.is-next,.audience__carousel li.is-next-plus1{display:block}.audience__carousel li.is-current{z-index:5}.audience__carousel li.is-next{z-index:6}.audience__carousel li div{width:10.9375rem;height:10.9375rem}.audience__carousel img{-ms-transform:rotate(-90deg);transform:rotate(-90deg);width:100%;height:auto;position:absolute;top:-4px;left:-41px}.audience__content{margin-top:6.25rem;position:relative}@media (min-width: 48em){.audience__content{margin-top:0}}.audience__content article{position:absolute;opacity:0;transition:opacity 0.35s}.audience__content article.is-current{opacity:1;z-index:1}.audience__nav{margin-top:1.5rem}@media (min-height: 700px){.audience__nav{position:absolute;bottom:-3.75rem;left:1rem;margin-top:0}}@media (min-width: 30em){.audience__nav{bottom:-5rem}}@media (min-width: 48em){.audience__nav{bottom:-6.25rem}}.audience__next{display:inline-block;vertical-align:middle}.audience__next i{margin-left:.3125rem}.audience__prev{display:inline-block;vertical-align:middle}.audience__prev i{-ms-transform:rotate(-180deg);transform:rotate(-180deg);margin-right:.3125rem}.audience__count{color:#000;font-size:1.5rem;vertical-align:middle}.audience__play-pause{margin-right:.5rem}@media (max-width: 29.99em){.audience__play-pause{display:none}}.audience__play,.audience__pause{position:absolute;top:50%;left:50%;-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);z-index:1}.audience__play{margin-left:.125rem}.is-playing .audience__play{display:none}.is-paused .audience__play{display:block}.is-playing .audience__pause{display:block}.is-paused .audience__pause{display:none}@media (min-width: 25em){.audience__carousel{width:31.25rem;height:31.25rem;margin-top:-15.625rem;margin-right:-15.625rem;top:9.375rem}.audience__carousel li div{width:15.625rem;height:15.625rem}}@media (min-width: 48em){.audience__carousel{width:50rem;height:50rem;margin-top:-19.375rem;margin-right:-34.0625rem;top:18.75rem}.audience__carousel li div{width:25rem;height:25rem}}@media (min-width: 75em){.audience{padding-top:12.5rem}.audience__carousel{width:75rem;height:75rem;margin-top:-31.875rem;margin-right:-25rem;top:50%}.audience__carousel li div{width:37.5rem;height:37.5rem}}@media (max-width: 47.99em) and (orientation: landscape){.audience{padding-top:0}.audience__carousel{width:21.875rem;height:21.875rem;margin-top:-10.9375rem;margin-right:-10.9375rem;top:4.6875rem}.audience__carousel li div{width:10.9375rem;height:10.9375rem}}@media (min-width: 75em){.projects .card--news:first-child .card__link,.news .card--news:first-child .card__link{border-top:1px solid #d2d2d2}}@media (max-width: 61.99em){.single-news__author-img{display:none}}.single-news img{max-width:100%;height:auto}.list__features{margin-bottom:0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.list__features li :last-child{margin-bottom:0}.list__features--vertical{font-size:1.125rem}.list__features--vertical li{-ms-flex-preferred-size:100%;flex-basis:100%;margin-bottom:2.5rem;padding-left:2.5rem}.list__features--vertical i{position:absolute;top:0;left:0;width:1.5rem;height:1.5rem}@media (min-width: 62em){.list__features--vertical{font-size:1.375rem}.list__features--vertical li{padding-left:4.5rem}.list__features--vertical i{width:2.5rem;height:2.5rem;top:-.3125rem}}.list__features--horizontal{-ms-flex-pack:center;justify-content:center}.list__features--horizontal li{width:100%;text-align:center;margin-bottom:2.5rem}.list__features--horizontal i{margin-left:auto;margin-right:auto;width:3.5rem;height:3.5rem;margin-bottom:2rem}.list__features--horizontal strong{font-size:1.5rem}@media (min-width: 30em){.list__features--horizontal li{width:50%;padding:0 1.5rem}}@media (min-width: 48em){.list__features--horizontal li{width:33.33%}}@media (min-width: 62em){.list__features--horizontal li{margin-bottom:0;width:20%}}.products__list{margin-bottom:0}.products__list li:first-child{padding-top:0}.products__list li:last-child{margin-bottom:0;padding-bottom:0;border:0}.products__list--half{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.products__list--half li{width:100%}@media (min-width: 48em){.products__list--half li{width:50%;padding-right:2rem}}.products__icon{margin-right:2.5rem}.products__content{-ms-flex:1;flex:1;max-width:31.25rem}@media (min-width: 48em){.products__content{-ms-flex:1 1 50%;flex:1 1 50%}}.products__content :last-child{margin-bottom:0}.products__button{margin-top:auto;margin-bottom:auto;padding-left:3rem}@media (min-width: 48em){.products__button{-ms-flex:1 1 auto;flex:1 1 auto}.products__button .button{float:right}}@media (max-width: 47.99em){.products__list li{-ms-flex-wrap:wrap;flex-wrap:wrap}.products__icon{margin-right:1.5rem}.products__button{width:100%;margin-top:1.5rem;margin-right:auto;padding-left:5.625rem}}@media (min-width: 48em){.article__content{min-height:18.75rem}}.intro :last-child{margin-bottom:0}.intro .drop{margin-top:0}.text-row{padding:2.5rem 0}@media (min-width: 48em){.text-row{padding-top:5rem;padding-bottom:5rem}}.text-row__image img{width:100%;max-width:25rem}.site-dex .text-row__image img{max-width:none}.text-row__image-background span{position:absolute;top:0;right:0;bottom:0;left:0;background-repeat:no-repeat;display:none}@media (min-width: 48em){.text-row__image-background span{display:block}}.text-row__image-background--left span::after,.text-row__image-background--right span::after{content:"";display:block;position:absolute;position:absolute;top:0;right:0;bottom:0;left:0;display:block}.text-row__image-background--left span::after{background:rgba(0,23,54,0);background:linear-gradient(-90deg, rgba(0,23,54,0) 0,#001736 100%)}.text-row__image-background--right span::after{background:rgba(0,23,54,0);background:linear-gradient(90deg, rgba(0,23,54,0) 0,#001736 100%)}.text{position:relative;z-index:1}@media (min-width: 48em){.image-text__icon{-ms-flex-pack:start;justify-content:flex-start}}.image-text__icon i{width:3.4375rem;height:3.4375rem}.section--darkish .text-row__image-text .icon__secondary{fill:#fff}.partners{margin-top:7.5rem}.partners:first-of-type{margin-top:5rem}.partners__content{-ms-flex-wrap:wrap;flex-wrap:wrap}.partners__title{width:100%}.partners__title--icon{padding-left:4.0625rem}.partners__icon{position:absolute;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);left:0}.partners__logos{-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center}.partners__logos li{max-width:50%;padding-bottom:1.25rem;padding-right:1.25rem}.partners__logos img{width:auto;height:auto;max-width:6.25rem;max-height:3.75rem;min-width:3.125rem;display:block}@media (min-width: 62em){.partners__content{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.partners__title{-ms-flex:0 0 25rem;flex:0 0 25rem;margin-bottom:auto;padding-right:3.125rem}.partners__logos li{padding-right:3.125rem;padding-bottom:2.5rem}}.case-study{padding:0 0 2.5rem}.case-study__image{height:0;padding-bottom:75%;display:block;background-repeat:no-repeat;background-position:50%;background-size:cover}@media (min-width: 48em){.case-study{padding-top:5rem;padding-bottom:5rem}.case-study__image{position:absolute;top:0;left:0;width:50%;height:100%;padding:0}.case-study__content{padding-left:3.125rem}}@media (min-width: 75em){.case-study__content{padding-left:6.25rem}}.tabs__menu{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.tabs__menu-link{height:3.4375rem;-ms-flex:1;flex:1;text-decoration:none;border-bottom:0;margin:0 0 1px;padding:1rem;padding-left:4.0625rem;-ms-flex-align:center;align-items:center;transition:background .5s cubic-bezier(0.4, 0, 0, 1)}.tabs__menu-link:hover,.tabs__menu-link:focus{border-bottom:0}@media (max-width: 47.99em){.tabs__menu-link{font-size:1rem}}.tabs__menu-link::after{content:"";display:block;position:absolute;top:0;right:-.85938rem;border-left:.85938rem solid transparent;border-top:1.71875rem solid transparent;border-bottom:1.71875rem solid transparent;transition:border .5s cubic-bezier(0.4, 0, 0, 1)}.tabs__menu .is-active .tabs__menu-link{font-weight:bold}.tabs__menu .is-active .tabs__menu-link,.tabs__menu .tabs__menu-link:hover,.tabs__menu .tabs__menu-link:focus{background:#fff}.tabs__menu .is-active .tabs__menu-link::after,.tabs__menu .tabs__menu-link:hover::after,.tabs__menu .tabs__menu-link:focus::after{border-left-color:#fff}.tabs__menu-icon{position:absolute;top:50%;-ms-transform:translateY(-50%);transform:translateY(-50%);left:1rem;width:1.875rem;height:1.875rem}.tabs__content{max-width:35rem}@media (min-width: 48em){.tabs .container{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.tabs__menu{max-width:27.5rem;width:40%}.tabs__menu-link{height:6.5625rem;padding-left:4.0625rem}.tabs__menu-link::after{right:-1.64062rem;border-left:1.64062rem solid transparent;border-top:3.28125rem solid transparent;border-bottom:3.28125rem solid transparent}.tabs__content{width:55%}}@media (min-width: 48em){.tabs__menu{width:35%}.tabs__menu-link{padding:2rem;padding-left:5rem}.tabs__menu-icon{left:1.875rem}}.tab__content{position:absolute;top:0;left:0;opacity:0;visibility:hidden}.tab__content-icon{width:2.625rem;height:2.625rem;float:left;margin-right:1.5rem;display:none}.tab__content ul{margin-left:0}.tab__content.is-active{position:static;opacity:1;visibility:visible}@media (min-width: 48em){.tab__content-icon{display:block}}.banner{background-image:none}.banner+.intro{margin-top:2.5rem}@media (min-width: 48em){.banner+.intro{margin-top:5rem}}.banner__img{position:absolute;top:0;right:0;bottom:0;left:0;background-repeat:no-repeat}.banner--left::after,.banner--right::after{content:"";display:block;position:absolute;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:block}.banner--left .container,.banner--right .container{z-index:2}.banner--left::after{background:rgba(0,23,54,0);background:linear-gradient(-90deg, rgba(0,23,54,0) 0,#001736 100%)}.banner--right::after{background:rgba(0,23,54,0);background:linear-gradient(90deg, rgba(0,23,54,0) 0,#001736 100%)}@media (min-width: 48em){.career__button{float:right}}.product__banner{max-width:37.5rem}.product__banner :last-child{margin-bottom:0}.search-results{margin-top:0;margin-left:0;padding-left:0;list-style:none}.search-results>li{margin-bottom:0}.search-results>li::before{display:none}.search-results__title a{color:#25272a;border-bottom-color:transparent}.search-results__title a:hover,.search-results__title a:focus{border-bottom-color:currentColor}.site-greensync{background-color:#f4f4f4;background-image:url(../../img/lines.svg);background-size:100%;background-position:50% 0;background-attachment:fixed}.header--fixed{position:fixed;opacity:0;-ms-transform:translateY(-100%);transform:translateY(-100%);transition:transform 220ms ease-in-out, opacity 120ms ease-in-out}body.nav-is-open .header--fixed{opacity:1}.site-dex{background-color:#fff;color:#092e5f}.site-dex ::-moz-selection{background:#001736;color:#fff;text-shadow:none}.site-dex ::selection{background:#001736;color:#fff;text-shadow:none}.site-dex a{display:inline;line-height:1.3;border:0;text-decoration:underline}.site-dex .h1--xlarge{margin-bottom:0;line-height:1}.site-dex .h2,.site-dex .partners--featured .partners__title,.site-dex .h3{line-height:1.2}.site-dex .text p:not(.h1--xlarge):not(.h1):not(.h2):not(.h3){font-size:0.925rem}.site-dex .text-row__column{padding-right:32px}.site-dex .text-row__column:last-of-type{padding-right:16px}@media (max-width: 47.99em){.site-dex .type-text:first-child{-ms-flex-order:1;order:1}.site-dex .type-text+.type-image{-ms-flex-order:0;order:0}}.site-dex .list__features.list__features--horizontal{margin-left:0}.site-dex button,.site-dex input,.site-dex select,.site-dex textarea,.site-dex label,.site-dex .base{color:#092e5f}.site-dex .base.no-m-b{padding-top:111px}.site-dex .icon--base *{fill:#092e5f}.site-dex .icon--primary *{fill:#00d8ff}.site-dex a{color:#092e5f}.site-dex a:visited{color:#092e5f}.site-dex a:hover,.site-dex a:focus{border-color:#00d8ff}.site-dex blockquote{color:#00d8ff}.site-dex blockquote cite{color:#092e5f}.site-dex .primary,.site-dex a.primary:visited,.site-dex a.primary:hover,.site-dex a.primary:focus{color:#00d8ff}.site-dex .input-text:focus,.site-dex .textarea:focus{border-color:#00d8ff}.site-dex .dropdown::after{border-left-color:#092e5f;border-bottom-color:#092e5f}.site-dex .dropdown--inline select,.site-dex .dropdown--inline select option{color:#fff}.site-dex .dropdown--inline::after{border-left-color:#fff;border-bottom-color:#fff}.site-dex .gform_confirmation_message{color:#00d8ff}.site-dex .input-checkbox:checked+label::after{background:#00d8ff;border-color:#00d8ff}.site-dex ul li::before{background-color:#00d8ff}.site-dex .icon__primary{fill:#00d8ff}.site-dex .button{border-radius:3px;background:transparent;border:2px solid #092e5f;color:#092e5f;letter-spacing:0.02em;text-decoration:none}.site-dex .button:hover,.site-dex .button:focus{color:#00d8ff;border:2px solid #092e5f}.site-dex .button--reverse,.site-dex.home .products .product-card>*:last-child .button,.site-dex.parent-pageid-14883 .products .product-card>*:last-child .button{border-color:#fff;color:#fff}.site-dex .button--reverse:hover,.site-dex.home .products .product-card>*:last-child .button:hover,.site-dex.parent-pageid-14883 .products .product-card>*:last-child .button:hover,.site-dex .button--reverse:focus,.site-dex.home .products .product-card>*:last-child .button:focus,.site-dex.parent-pageid-14883 .products .product-card>*:last-child .button:focus{border-color:#fff;color:#00d8ff}.site-dex .button--reverse:visited,.site-dex.home .products .product-card>*:last-child .button:visited,.site-dex.parent-pageid-14883 .products .product-card>*:last-child .button:visited{border-color:#fff;color:#fff}.site-dex .button--reverse:visited:hover,.site-dex.home .products .product-card>*:last-child .button:visited:hover,.site-dex.parent-pageid-14883 .products .product-card>*:last-child .button:visited:hover,.site-dex .button--reverse:visited:focus,.site-dex.home .products .product-card>*:last-child .button:visited:focus,.site-dex.parent-pageid-14883 .products .product-card>*:last-child .button:visited:focus{border-color:#fff;color:#00d8ff}.site-dex .button--arrow::after{display:none}.site-dex .button--icon,.site-dex .button--reset{border:0}.site-dex .button--icon:hover,.site-dex .button--icon:focus,.site-dex .button--reset:hover,.site-dex .button--reset:focus{border:0}.site-dex .button--dex{background:#00d8ff;color:#001736;border-color:#00d8ff}.site-dex .button--dex:hover,.site-dex .button--dex:focus{color:#fff;border-color:#00d8ff}.site-dex .button--large{padding-top:1.5rem;padding-bottom:1.5rem}.site-dex .nav .button--dex{position:absolute;top:.625rem;right:6.25rem}.site-dex .drop::after{background-color:#00d8ff}.site-dex .nav{background:url(../../img/lines-dex-dark.png) repeat-y 100% 0 #001736}.site-dex .nav.is-open{-ms-transform:translateX(0);transform:translateX(0);transition-delay:0s}.site-dex .nav__container{font-size:1.25rem}@media (min-width: 30em) and (max-width: 47.99em){.site-dex .nav__menu li{width:100%;padding-right:0}}.site-dex .nav__menu a{color:#fff}.site-dex .nav__menu a:hover,.site-dex .nav__menu a:focus{border-color:#fff}.site-dex .nav ul{width:100%}.site-dex .highlight{font-size:1.625rem;font-family:"WEB Regular Bold",sans-serif}.site-dex .highlight a{color:#00d8ff}.site-dex .highlight a:hover,.site-dex .highlight a:focus{border-color:#00d8ff}.site-dex .search__form,.site-dex .search__container.is-open{background:#001736}.site-dex .search__results-link,.site-dex .search__results-link:visited,.site-dex .search__results-link:hover,.site-dex .search__results-link:focus,.site-dex .search__term{color:#fff}.site-dex .search__term.placeholder{color:rgba(255,255,255,0.4)}.site-dex .search__term:-moz-placeholder{color:rgba(255,255,255,0.4)}.site-dex .search__term::-moz-placeholder{color:rgba(255,255,255,0.4)}.site-dex .search__term:-ms-input-placeholder{color:rgba(255,255,255,0.4)}.site-dex .search__term::-webkit-input-placeholder{color:rgba(255,255,255,0.4)}.site-dex .home-dex{display:none}.site-dex.home .home-dex{display:-ms-flexbox;display:flex}.site-dex.home .products .product-cards,.site-dex.parent-pageid-14883 .products .product-cards{display:-ms-flexbox;display:flex}@media (max-width: 47.99em){.site-dex.home .products .product-cards,.site-dex.parent-pageid-14883 .products .product-cards{-ms-flex-direction:column;flex-direction:column}}.site-dex.home .products .product-card,.site-dex.parent-pageid-14883 .products .product-card{box-sizing:border-box;-ms-flex:1;flex:1;position:relative;margin-left:0.5rem;margin-right:0.5rem}@media (max-width: 47.99em){.site-dex.home .products .product-card,.site-dex.parent-pageid-14883 .products .product-card{width:100%;margin:0 0 0.5rem 0}}.site-dex.home .products .product-card::before,.site-dex.parent-pageid-14883 .products .product-card::before{content:"";display:block;position:absolute;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:rgba(0,23,54,0.3);background:linear-gradient(-90deg, rgba(0,23,54,0.3) 0,#001736 100%)}.site-dex.home .products .product-card>*:first-child,.site-dex.parent-pageid-14883 .products .product-card>*:first-child{position:absolute;top:0;left:0;height:100%;width:100%;max-width:100%}.site-dex.home .products .product-card>*:last-child,.site-dex.parent-pageid-14883 .products .product-card>*:last-child{width:100%;z-index:1;max-width:100%;-ms-flex:0 0 100%;flex:0 0 100%;color:#fff;padding:36px}.site-dex.home .products .product-card>*:last-child h4,.site-dex.home .products .product-card>*:last-child .products__icon,.site-dex.parent-pageid-14883 .products .product-card>*:last-child h4,.site-dex.parent-pageid-14883 .products .product-card>*:last-child .products__icon{display:none}.site-dex:not(.post-type-archive-faq):not(.post-type-archive-news) .header{background:#fff !important;border-bottom:1px solid rgba(0,23,54,0.3) !important;position:absolute}.site-dex.show--fixed-header .header--fixed{opacity:1;-ms-transform:translateY(0);transform:translateY(0)}.site-dex .header{border-bottom:1px solid rgba(0,23,54,0.3);position:absolute}.site-dex .header .hamburger__inner,.site-dex .header .hamburger__inner:before,.site-dex .header .hamburger__inner:after{background-color:#001736 !important}.site-dex .header__hamburger{display:none}@media (max-width: 47.99em){.site-dex .header__hamburger{display:block}}.site-dex .header.header--fixed{background:#fff !important;border-bottom:1px solid rgba(0,23,54,0.3) !important;position:fixed !important;z-index:10}.site-dex .header.header--fixed .icon__primary{fill:#001736 !important}.site-dex .header.header--fixed a{color:#001736 !important}.site-dex .header.header--fixed a:hover{color:#00d8ff !important}.site-dex .header .button--header-contact{position:absolute;right:0;top:8rem;color:#001736;background:#00d8ff;border-color:#00d8ff}.site-dex .header .button--header-contact:hover{background:#001736;border-color:#00d8ff;color:#00d8ff}@media (max-width: 47.99em){.site-dex .header .button--header-contact{display:none}}.site-dex .header.header--fixed .button--header-contact{display:none}.site-dex .header .dex_top__menu{list-style:none;margin-top:13px;position:absolute;right:0}@media (max-width: 47.99em){.site-dex .header .dex_top__menu{opacity:0;visibility:hidden;pointer-events:none;position:fixed;top:0;left:0;display:-ms-flexbox;display:flex;background:green;width:100%;height:100vh;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;z-index:1001;margin:0}}.site-dex .header .dex_top__menu li{display:inline-block;margin-right:2rem}.site-dex .header .dex_top__menu li:before{display:none}.site-dex .header .dex_top__menu li:last-of-type{margin-right:0}.site-dex .header .dex_top__menu li a,.site-dex .header .dex_top__menu li a:visited{border:0;font-weight:bold}@media (max-width: 61.99em){.site-dex .header .button--dex{padding:.625rem .9375rem;font-size:1rem;top:.875rem}}@media (max-width: 29.99em){.site-dex .header .button--dex{top:1.25rem}}.site-dex .header .header__button-dex{position:absolute;top:0;right:3.4375rem}@media (max-width: 29.99em){.site-dex .header .header__button-dex{top:.5rem}}@media (min-width: 62em){.site-dex .header .header__button-dex{top:.8125rem}}@media (max-width: 29.99em){.site-dex .header .button--dex,.site-dex .header .header__button-dex{font-size:.875rem;padding:.5rem .8125rem .3125rem}}.site-dex .card__link--case-study{width:100%}.site-dex .case-study__details{position:absolute;top:0;bottom:0;z-index:2;width:100%;padding:4rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}@media (max-width: 47.99em){.site-dex .case-study__details{position:relative}.site-dex .case-study__details+.ratio--66{height:100%;width:100%;padding-bottom:0;position:absolute;top:0;left:0}}.site-dex .button--filled{color:#001736 !important;background-color:#fff;border-color:#fff;margin-top:2rem;margin-right:1rem}.site-dex .button--filled:hover{border-color:#fff;background:transparent;color:#00d8ff !important}.site-dex .button-block{margin-top:0;padding-top:2rem}.site-dex .products__list li{padding-top:6rem;width:33.33%}.site-dex .products__list .products__icon{position:absolute;top:0}.site-dex .footer__container,.site-dex .footer__container a,.site-dex .footer__container a:visited{color:#6d829c}.site-dex .footer__container a:hover,.site-dex .footer__container a:focus{border-color:#fff}.site-dex .footer__nav li::before{background:none}.site-dex .section--light{background-color:#e8ebee;background-repeat:repeat-y;background-attachment:fixed;background-position:top right}.site-dex .section--dark{background-color:#102548;background-image:url(../../img/lines-dex-blue.png);background-repeat:repeat-y;background-attachment:fixed;background-position:top right;background-size:auto}.site-dex .section--darkish{background-color:#001736}.site-dex .section--darkish .button{border-color:#fff;color:#fff}.site-dex .section--darkish .button:hover,.site-dex .section--darkish .button:focus{border-color:#fff;color:#00d8ff}.site-dex .section--darker{background-color:#001736}.site-dex .section--tall{min-height:90vh}.site-dex .section--tuna{background-color:#001736}.site-dex .section--image{padding-bottom:2.5rem;min-height:44.5rem}@media (min-width: 48em){.site-dex .section--image{padding-bottom:5rem}}@media (max-width: 47.99em){.site-dex .section--image{min-height:8rem}}.site-dex .banner{-ms-flex-pack:end;justify-content:flex-end;background-image:none}.site-dex .banner__img{background-size:cover}.site-dex .banner .drop :last-child{margin-bottom:0}.site-dex .banner--why-join-dex .banner__img,.site-dex .banner--whos-already-joined .banner__img{background-attachment:fixed;background-size:auto;background-position:100% -314px}@media (max-width: 47.99em){.site-dex .banner--why-join-dex .banner__img,.site-dex .banner--whos-already-joined .banner__img{opacity:0.5}}.site-dex .card--linked .card__link{color:#092e5f}.site-dex .card--news{background:transparent}@media (max-width: 47.99em){.site-dex .card__wrap{-ms-flex-direction:column;flex-direction:column}.site-dex .card__wrap>div{margin-bottom:2.5rem}}.site-dex .social a svg *{fill:#001736}.site-dex .social a:hover svg *,.site-dex .social a:focus svg *{fill:#00d8ff}@media (max-width: 47.99em){.site-dex .latest-news__wrapper{-ms-flex-direction:column;flex-direction:column}.site-dex .latest-news__wrapper .card{width:100%;margin:0 0 0.5rem 0}}.site-dex .team-card{padding-left:12px;padding-right:12px;-ms-flex:0 0 20%;flex:0 0 20%}@media (max-width: 47.99em){.site-dex .team-card{-ms-flex:0 0 50%;flex:0 0 50%;margin:0 0 0.5rem 0;text-align:center}}.site-dex .team-card img{width:70%;overflow:hidden}@media (max-width: 47.99em){.site-dex .team-card img{display:block;position:relative;margin:0 auto 1rem}}.site-dex .team-card__wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}@media (max-width: 47.99em){.site-dex .team-card__wrapper{-ms-flex-direction:row;flex-direction:row}}.site-dex .product-card:nth-child(2n+1)>*:first-child{-ms-flex-order:2;order:2}.site-dex .product-card:nth-child(2n+1)>*:last-child{-ms-flex-order:1;order:1}@media (max-width: 47.99em){.site-dex .product-card{-ms-flex-direction:column;flex-direction:column}.site-dex .product-card:nth-child(2n+1)>*:first-child{-ms-flex-order:1;order:1}.site-dex .product-card:nth-child(2n+1)>*:last-child{-ms-flex-order:2;order:2}}.site-dex .home-dex+.page-main{padding-top:0}.no-js .site-dex .home-dex{background-image:url("../../img/bg-dex.png")}.site-dex .home-dex::before{content:"";display:block;position:absolute;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:rgba(0,23,54,0);background:linear-gradient(-90deg, rgba(0,23,54,0) 0,#001736 100%)}.site-dex .home-dex__scroll{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.site-dex .home-dex .container{z-index:2}@media (max-width: 29.99em){.site-dex .home-dex h1{font-size:2.5rem}}.site-dex .home-dex .button{margin-right:.3125rem;margin-bottom:.3125rem}.site-dex .h1{letter-spacing:0.02em}.site-dex .related-articles__link:hover,.site-dex .related-articles__link:focus{background:#092e5f}.site-dex .wp-pagenavi .current,.site-dex .wp-pagenavi .current:hover,.site-dex .wp-pagenavi .current:focus,.site-dex .wp-pagenavi .page:hover,.site-dex .wp-pagenavi .page:focus,.site-dex .wp-pagenavi .nextpostslink:hover,.site-dex .wp-pagenavi .nextpostslink:focus,.site-dex .wp-pagenavi .previouspostslink:hover,.site-dex .wp-pagenavi .previouspostslink:focus{color:#00d8ff}.site-dex .wp-pagenavi .current:hover,.site-dex .wp-pagenavi .current:focus,.site-dex .wp-pagenavi .page:hover,.site-dex .wp-pagenavi .page:focus,.site-dex .wp-pagenavi .nextpostslink:hover,.site-dex .wp-pagenavi .nextpostslink:focus,.site-dex .wp-pagenavi .previouspostslink:hover,.site-dex .wp-pagenavi .previouspostslink:focus{border-color:#d2d2d2}.site-dex .speak-to-expert{display:none}.site-dex .page-main{padding-bottom:7rem}.site-dex .border-top{border-top:0}.site-dex .partners{margin-top:0;padding-bottom:3rem}.site-dex .partners--featured{margin-top:3rem;border-top:0}.site-dex .partners--featured .partners__title{text-align:center;margin-bottom:2rem;padding-right:0}.site-dex .partners--featured .partners__content{display:block}.site-dex .partners--featured .partners__logos{-ms-flex-pack:center;justify-content:center;margin-bottom:3rem}.site-dex .partners--featured .partners__logos li{padding:1.5rem}@media (max-width: 47.99em){.site-dex .partners--featured .partners__logos li:nth-child(1n+9){display:none}}@media (min-width: 48em){.site-dex .partners--featured .partners__logos img{max-width:8.25rem;max-height:5.75rem}}.site-dex .partners__logos li{padding:1.5rem}@media (max-width: 47.99em){.site-dex .partners__logos li{min-width:50%}}@media (max-width: 47.99em){.site-dex .partners__title{font-size:1.625rem}}.site-dex a.block{display:block}@media print{.screen{display:none}.print{display:inherit}.drop{margin-bottom:24px;padding-bottom:0}.drop--top{margin-top:0;padding-top:0}a{border:0}ul{list-style:inherit}.button,.section--first,.section--center,.case-study__content,.section--pad{padding:0}.js.cssanimations [data-animation]{opacity:1}.has-banner .logo--greensync__text,.has-banner .logo--dex path.icon__primary{fill:#000}.site-dex .button{border:0}.container,.row{margin-left:0;margin-right:0}[class*="col-"]{width:100%;padding-left:0;padding-right:0}.audience__content article{opacity:1;position:static}.header{position:static}.header-is-hidden{-ms-transform:none;transform:none}.page-main{padding-top:0}.section--tall{min-height:0;height:auto}.js.cssanimations [data-animation]{opacity:1}.card--team{width:calc(50% - 20px);margin-right:20px;-ms-transform:none !important;transform:none !important}.text-row,.section--audience .container,.section--product .container{padding:15px 0}.section--image{min-height:0}.text-row__image img{max-width:18.75rem}.text-row__image-text{max-width:none}.home__banner{height:auto}.home__banner article{max-width:400px}.home__banner .slick-slide{width:auto !important}.home__tagline{margin:0}.audience article{margin-bottom:24px}.location{margin-bottom:24px}.js .accordion__body{height:auto}*{background:transparent !important;color:black !important;text-shadow:none !important;filter:none !important;-ms-filter:none !important}a,a:visited{text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^='javascript:']:after,a[href^='#']:after{content:''}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}body{padding:0.5cm 1cm 1cm 1cm}figcaption,figure{display:block}figure{margin:0 0 24px}hr{box-sizing:content-box;height:0;overflow:visible}main{display:block}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:0;text-decoration:none}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:100%;line-height:1.15;margin:0}button{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}input{overflow:visible}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}fieldset{border:1px solid #c0c0c0;margin:0 0 24px;padding:0.35em 0.625em 0.75em}legend{box-sizing:border-box;display:table;max-width:100%;padding:0;color:inherit;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}details{display:block}summary{display:list-item}menu{display:block}canvas{display:inline-block}template{display:none}[hidden]{display:none}*{box-sizing:border-box}*,*:before,*:after{background:transparent !important;box-shadow:none !important;text-shadow:none !important}html{font-size:16px;margin:0;padding:0}body{color:#000 !important;background:#fff !important;font-size:1rem;font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;line-height:1.5;margin:0 auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}p,blockquote,table,ul,ol,dl{margin-top:0;margin-bottom:1.5rem}ul,ol{padding-left:1.5rem}p:last-child,ul ul:last-child,ol ul:last-child,ul ol:last-child,ol ol:last-child{margin-bottom:0}h1,h2,h3,h4,h5,h6{line-height:1.2;color:#000;font-family:'Helvetica Neue', Helvetica, Arial, sans-serif}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.3rem}h5{font-size:1.15rem}h6{font-size:1rem}a,a:visited{color:#000;text-decoration:underline;word-wrap:break-word}table{border-collapse:collapse}thead{display:table-header-group}table,th,td{border-bottom:1px solid #000}td,th{padding:8px 16px}code,pre,kbd{font-family:Menlo, Monaco, Consolas, 'Courier New', monospace;font-size:85%;border:1px solid #bbb}code,kbd{padding:3px 3px}pre{padding:10px 12px;margin-bottom:1.5rem}pre code,pre kbd{border:0}blockquote{border:0;border-left:5px solid #bbb;margin-left:1px;padding:12px 1.5rem}blockquote:first-child{margin-top:0}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer{display:block;font-size:80%}img{display:block;border:0;max-width:100% !important;height:auto !important;vertical-align:middle}hr{border:0;border-bottom:2px solid #bbb;height:0;padding:0;margin:2.25rem 0}dt{font-weight:bold}dd{margin:0;margin-bottom:0.75rem}abbr[title],acronym[title]{border:0;text-decoration:0}table,blockquote,pre,code,li,hr,a,tr{page-break-inside:avoid}h2,h3,h4,p,a{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid;page-break-inside:avoid}h1+p,h2+p,h3+p{page-break-before:avoid}img{page-break-before:auto;page-break-after:auto;page-break-inside:avoid}pre{white-space:pre-wrap !important;word-wrap:break-word}body{padding:0.5cm 1cm 1cm 1cm}abbr[title]:after,acronym[title]:after{content:" (" attr(title) ")"}.page-break{page-break-before:always}.page-break-after{page-break-after:always}.no-print{display:none}a.no-reformat:after{content:''}abbr[title].no-reformat:after,acronym[title].no-reformat:after{content:''}}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL19mb250cy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplLmNzcyIsInZlbmRvcnMvX2ZsZXhib3gtZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtZmxleC1taXhpbi9fZmxleC5zY3NzIiwidmVuZG9ycy9fcmVtb2RhbC5zY3NzIiwidmVuZG9ycy9fcmVtb2RhbC1kZWZhdWx0LXRoZW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1tcS9fbXEuc2NzcyIsInV0aWxzL19mdW5jdGlvbnMuc2NzcyIsInZlbmRvcnMvX3NsaWNrLnNjc3MiLCJ2ZW5kb3JzL19zbGljay10aGVtZS5zY3NzIiwidXRpbHMvX3ZhcmlhYmxlcy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwidXRpbHMvX21peGlucy5zY3NzIiwiYmFzZS9fY29yZS5zY3NzIiwiYmFzZS9fbGlzdHMuc2NzcyIsImJhc2UvX2hyLnNjc3MiLCJ1dGlscy9fYW5pbWF0aW9ucy5zY3NzIiwidXRpbHMvX2hlbHBlcnMuc2NzcyIsInV0aWxzL19pY29ucy5zY3NzIiwiY29tcG9uZW50cy9fY29udGFpbmVyLnNjc3MiLCJjb21wb25lbnRzL19za2lwLWxpbmsuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2hhbWJ1cmdlci5zY3NzIiwiY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL19wYWdlLXRyYW5zaXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2xvYWRlci5zY3NzIiwiY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9faWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX2xvY2F0aW9uLnNjc3MiLCJjb21wb25lbnRzL19vYmplY3QtZml0LnNjc3MiLCJjb21wb25lbnRzL19yYXRpby5zY3NzIiwiY29tcG9uZW50cy9faW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2ltYWdlcy5zY3NzIiwiY29tcG9uZW50cy9fbG9nby5zY3NzIiwiY29tcG9uZW50cy9fc3RpY2t5LnNjc3MiLCJjb21wb25lbnRzL19zb2NpYWwuc2NzcyIsImNvbXBvbmVudHMvX3B1bGxvdXQuc2NzcyIsImNvbXBvbmVudHMvX25vaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX3NlcGFyYXRvcnMuc2NzcyIsImNvbXBvbmVudHMvX2F1ZGllbmNlLW1hcC5zY3NzIiwiY29tcG9uZW50cy9fYXV0aG9yLnNjc3MiLCJjb21wb25lbnRzL19tYXAuc2NzcyIsImNvbXBvbmVudHMvX3RpbWVyLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJjb21wb25lbnRzL190ZXh0c3dpdGNoLnNjc3MiLCJjb21wb25lbnRzL19tZWRpYS5zY3NzIiwiY29tcG9uZW50cy9fbWlsZXN0b25lLnNjc3MiLCJjb21wb25lbnRzL190b2RheS10b21vcnJvdy5zY3NzIiwibGF5b3V0L19uYXZpZ2F0aW9uLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImxheW91dC9fZm9ybXMuc2NzcyIsImxheW91dC9fc2VhcmNoLnNjc3MiLCJsYXlvdXQvX2hvbWUuc2NzcyIsImxheW91dC9fdGVhbS5zY3NzIiwibGF5b3V0L19ib2FyZC5zY3NzIiwibGF5b3V0L19zcGVhay10by1leHBlcnQuc2NzcyIsImxheW91dC9fcmVsYXRlZC1hcnRpY2xlcy5zY3NzIiwibGF5b3V0L19hdWRpZW5jZS5zY3NzIiwibGF5b3V0L19uZXdzLnNjc3MiLCJsYXlvdXQvX3NpbmdsZS1uZXdzLnNjc3MiLCJsYXlvdXQvX2xpc3Quc2NzcyIsImxheW91dC9fcHJvZHVjdHMuc2NzcyIsImxheW91dC9fYXJ0aWNsZS5zY3NzIiwibGF5b3V0L19pbnRyby5zY3NzIiwibGF5b3V0L190ZXh0LXJvdy5zY3NzIiwibGF5b3V0L19pbWFnZS10ZXh0LnNjc3MiLCJsYXlvdXQvX3BhcnRuZXJzLnNjc3MiLCJsYXlvdXQvX2Nhc2Utc3R1ZHkuc2NzcyIsImxheW91dC9fdGFicy5zY3NzIiwibGF5b3V0L19iYW5uZXIuc2NzcyIsImxheW91dC9fY2FyZWVyLnNjc3MiLCJwYWdlcy9fcHJvZHVjdC5zY3NzIiwicGFnZXMvX3NlYXJjaC5zY3NzIiwic2l0ZS9fZ3JlZW5zeW5jLnNjc3MiLCJzaXRlL19kZXguc2NzcyIsInV0aWxzL19wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFFQUNBLFdBQ0ksK0JBQ0EsMkNBQ0EsMlRBSXVFLENBRTNFLFdBQ0ksaUNBQ0EsNkNBQ0EscVVBSXlFLENDakI3RSw0RUFBNEUsS0FZMUUsaUJBQ0EsMEJBQ0EsNkJBQThCLENBQy9CLEtBVUMsUUFBUyxDQUNWLHdDQVlDLGFBQWMsQ0FDZixHQVFDLGNBQ0EsZUFBZ0IsQ0FDakIsdUJBYUMsYUFBYyxDQUNmLE9BT0MsZUFBZ0IsQ0FDakIsR0FRQyx1QkFDQSxTQUNBLGdCQUFpQixDQUNsQixJQVFDLGlDQUNBLGFBQWMsQ0FDZixFQVdDLDZCQUNBLG9DQUFxQyxDQUN0QyxZQVFDLG1CQUNBLDBCQUNBLGdDQUFpQyxDQUNsQyxTQVFDLG1CQUFvQixDQUZ0QixTQVdFLGtCQUFtQixDQUNwQixjQVVDLGlDQUNBLGFBQWMsQ0FDZixJQU9DLGlCQUFrQixDQUNuQixLQU9DLHNCQUNBLFVBQVcsQ0FDWixNQU9DLGFBQWMsQ0FDZixRQVNDLGNBQ0EsY0FDQSxrQkFDQSx1QkFBd0IsQ0FDekIsSUFHQyxjQUFlLENBQ2hCLElBR0MsVUFBVyxDQUNaLFlBV0Msb0JBQXFCLENBQ3RCLHNCQU9DLGFBQ0EsUUFBUyxDQUNWLElBT0MsaUJBQWtCLENBQ25CLGVBT0MsZUFBZ0IsQ0FDakIsc0NBZUMsdUJBQ0EsZUFDQSxpQkFDQSxRQUFTLENBQ1YsYUFTQyxnQkFBaUIsQ0FDbEIsY0FTQyxtQkFBb0IsQ0FDckIsMkRBWUMseUJBQTBCLENBQzNCLDhIQVVD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QyxVQUVHLG1CVjVHeUMsQ1U2RzVDLFVBRUcsaUJWL0d5QyxDVWdINUMsVUFFRyxvQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLGFWbkd5QyxDVW9HNUMsUUFFRyxZVnRHeUMsQ1V1RzVDLFVBRUcsZ0JWekd5QyxDVTBHNUMsVUFFRyxtQlY1R3lDLENVNkc1QyxVQUVHLGlCVi9HeUMsQ1VnSDVDLFVBRUcsb0JWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksUUFDSSxhVm5HeUMsQ1VvRzVDLFFBRUcsWVZ0R3lDLENVdUc1QyxVQUVHLGdCVnpHeUMsQ1UwRzVDLFVBRUcsbUJWNUd5QyxDVTZHNUMsVUFFRyxpQlYvR3lDLENVZ0g1QyxVQUVHLG9CVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFNBQ0ksYVZuR3lDLENVb0c1QyxTQUVHLFlWdEd5QyxDVXVHNUMsV0FFRyxnQlZ6R3lDLENVMEc1QyxXQUVHLG1CVjVHeUMsQ1U2RzVDLFdBRUcsaUJWL0d5QyxDVWdINUMsV0FFRyxvQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxhVm5HeUMsQ1VvRzVDLGlCQUVHLFlWdEd5QyxDVXVHNUMsbUJBRUcsZ0JWekd5QyxDVTBHNUMsbUJBRUcsbUJWNUd5QyxDVTZHNUMsbUJBRUcsaUJWL0d5QyxDVWdINUMsbUJBRUcsb0JWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksaUJBQ0ksYVZuR3lDLENVb0c1QyxpQkFFRyxZVnRHeUMsQ1V1RzVDLG1CQUVHLGdCVnpHeUMsQ1UwRzVDLG1CQUVHLG1CVjVHeUMsQ1U2RzVDLG1CQUVHLGlCVi9HeUMsQ1VnSDVDLG1CQUVHLG9CVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHVCQUNJLGFWbkd5QyxDVW9HNUMsdUJBRUcsWVZ0R3lDLENVdUc1Qyx5QkFFRyxnQlZ6R3lDLENVMEc1Qyx5QkFFRyxtQlY1R3lDLENVNkc1Qyx5QkFFRyxpQlYvR3lDLENVZ0g1Qyx5QkFFRyxvQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLFlWOUVpRCxDVStFcEQsS0FFRyxXVmpGaUQsQ1VrRnBELE9BRUcsZVZwRmlELENVcUZwRCxPQUVHLGtCVnZGaUQsQ1V3RnBELE9BRUcsZ0JWMUZpRCxDVTJGcEQsT0FFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx1QkFDSSxZVm5HeUMsQ1VvRzVDLHVCQUVHLFdWdEd5QyxDVXVHNUMseUJBRUcsZVZ6R3lDLENVMEc1Qyx5QkFFRyxrQlY1R3lDLENVNkc1Qyx5QkFFRyxnQlYvR3lDLENVZ0g1Qyx5QkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLGNWOUVpRCxDVStFcEQsS0FFRyxhVmpGaUQsQ1VrRnBELE9BRUcsaUJWcEZpRCxDVXFGcEQsT0FFRyxvQlZ2RmlELENVd0ZwRCxPQUVHLGtCVjFGaUQsQ1UyRnBELE9BRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFFBQ0ksY1ZuR3lDLENVb0c1QyxRQUVHLGFWdEd5QyxDVXVHNUMsVUFFRyxpQlZ6R3lDLENVMEc1QyxVQUVHLG9CVjVHeUMsQ1U2RzVDLFVBRUcsa0JWL0d5QyxDVWdINUMsVUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLGNWbkd5QyxDVW9HNUMsUUFFRyxhVnRHeUMsQ1V1RzVDLFVBRUcsaUJWekd5QyxDVTBHNUMsVUFFRyxvQlY1R3lDLENVNkc1QyxVQUVHLGtCVi9HeUMsQ1VnSDVDLFVBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxjVm5HeUMsQ1VvRzVDLGlCQUVHLGFWdEd5QyxDVXVHNUMsbUJBRUcsaUJWekd5QyxDVTBHNUMsbUJBRUcsb0JWNUd5QyxDVTZHNUMsbUJBRUcsa0JWL0d5QyxDVWdINUMsbUJBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksaUJBQ0ksY1ZuR3lDLENVb0c1QyxpQkFFRyxhVnRHeUMsQ1V1RzVDLG1CQUVHLGlCVnpHeUMsQ1UwRzVDLG1CQUVHLG9CVjVHeUMsQ1U2RzVDLG1CQUVHLGtCVi9HeUMsQ1VnSDVDLG1CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHVCQUNJLGNWbkd5QyxDVW9HNUMsdUJBRUcsYVZ0R3lDLENVdUc1Qyx5QkFFRyxpQlZ6R3lDLENVMEc1Qyx5QkFFRyxvQlY1R3lDLENVNkc1Qyx5QkFFRyxrQlYvR3lDLENVZ0g1Qyx5QkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLFlWOUVpRCxDVStFcEQsS0FFRyxXVmpGaUQsQ1VrRnBELE9BRUcsZVZwRmlELENVcUZwRCxPQUVHLGtCVnZGaUQsQ1V3RnBELE9BRUcsZ0JWMUZpRCxDVTJGcEQsT0FFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx1QkFDSSxZVm5HeUMsQ1VvRzVDLHVCQUVHLFdWdEd5QyxDVXVHNUMseUJBRUcsZVZ6R3lDLENVMEc1Qyx5QkFFRyxrQlY1R3lDLENVNkc1Qyx5QkFFRyxnQlYvR3lDLENVZ0g1Qyx5QkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLGNWOUVpRCxDVStFcEQsS0FFRyxhVmpGaUQsQ1VrRnBELE9BRUcsaUJWcEZpRCxDVXFGcEQsT0FFRyxvQlZ2RmlELENVd0ZwRCxPQUVHLGtCVjFGaUQsQ1UyRnBELE9BRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFFBQ0ksY1ZuR3lDLENVb0c1QyxRQUVHLGFWdEd5QyxDVXVHNUMsVUFFRyxpQlZ6R3lDLENVMEc1QyxVQUVHLG9CVjVHeUMsQ1U2RzVDLFVBRUcsa0JWL0d5QyxDVWdINUMsVUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLGNWbkd5QyxDVW9HNUMsUUFFRyxhVnRHeUMsQ1V1RzVDLFVBRUcsaUJWekd5QyxDVTBHNUMsVUFFRyxvQlY1R3lDLENVNkc1QyxVQUVHLGtCVi9HeUMsQ1VnSDVDLFVBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxjVm5HeUMsQ1VvRzVDLGlCQUVHLGFWdEd5QyxDVXVHNUMsbUJBRUcsaUJWekd5QyxDVTBHNUMsbUJBRUcsb0JWNUd5QyxDVTZHNUMsbUJBRUcsa0JWL0d5QyxDVWdINUMsbUJBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksaUJBQ0ksY1ZuR3lDLENVb0c1QyxpQkFFRyxhVnRHeUMsQ1V1RzVDLG1CQUVHLGlCVnpHeUMsQ1UwRzVDLG1CQUVHLG9CVjVHeUMsQ1U2RzVDLG1CQUVHLGtCVi9HeUMsQ1VnSDVDLG1CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHVCQUNJLGNWbkd5QyxDVW9HNUMsdUJBRUcsYVZ0R3lDLENVdUc1Qyx5QkFFRyxpQlZ6R3lDLENVMEc1Qyx5QkFFRyxvQlY1R3lDLENVNkc1Qyx5QkFFRyxrQlYvR3lDLENVZ0g1Qyx5QkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLFlWOUVpRCxDVStFcEQsS0FFRyxXVmpGaUQsQ1VrRnBELE9BRUcsZVZwRmlELENVcUZwRCxPQUVHLGtCVnZGaUQsQ1V3RnBELE9BRUcsZ0JWMUZpRCxDVTJGcEQsT0FFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx1QkFDSSxZVm5HeUMsQ1VvRzVDLHVCQUVHLFdWdEd5QyxDVXVHNUMseUJBRUcsZVZ6R3lDLENVMEc1Qyx5QkFFRyxrQlY1R3lDLENVNkc1Qyx5QkFFRyxnQlYvR3lDLENVZ0g1Qyx5QkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLGNWOUVpRCxDVStFcEQsS0FFRyxhVmpGaUQsQ1VrRnBELE9BRUcsaUJWcEZpRCxDVXFGcEQsT0FFRyxvQlZ2RmlELENVd0ZwRCxPQUVHLGtCVjFGaUQsQ1UyRnBELE9BRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFFBQ0ksY1ZuR3lDLENVb0c1QyxRQUVHLGFWdEd5QyxDVXVHNUMsVUFFRyxpQlZ6R3lDLENVMEc1QyxVQUVHLG9CVjVHeUMsQ1U2RzVDLFVBRUcsa0JWL0d5QyxDVWdINUMsVUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLGNWbkd5QyxDVW9HNUMsUUFFRyxhVnRHeUMsQ1V1RzVDLFVBRUcsaUJWekd5QyxDVTBHNUMsVUFFRyxvQlY1R3lDLENVNkc1QyxVQUVHLGtCVi9HeUMsQ1VnSDVDLFVBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxjVm5HeUMsQ1VvRzVDLGlCQUVHLGFWdEd5QyxDVXVHNUMsbUJBRUcsaUJWekd5QyxDVTBHNUMsbUJBRUcsb0JWNUd5QyxDVTZHNUMsbUJBRUcsa0JWL0d5QyxDVWdINUMsbUJBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksaUJBQ0ksY1ZuR3lDLENVb0c1QyxpQkFFRyxhVnRHeUMsQ1V1RzVDLG1CQUVHLGlCVnpHeUMsQ1UwRzVDLG1CQUVHLG9CVjVHeUMsQ1U2RzVDLG1CQUVHLGtCVi9HeUMsQ1VnSDVDLG1CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHVCQUNJLGNWbkd5QyxDVW9HNUMsdUJBRUcsYVZ0R3lDLENVdUc1Qyx5QkFFRyxpQlZ6R3lDLENVMEc1Qyx5QkFFRyxvQlY1R3lDLENVNkc1Qyx5QkFFRyxrQlYvR3lDLENVZ0g1Qyx5QkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLFlWOUVpRCxDVStFcEQsS0FFRyxXVmpGaUQsQ1VrRnBELE9BRUcsZVZwRmlELENVcUZwRCxPQUVHLGtCVnZGaUQsQ1V3RnBELE9BRUcsZ0JWMUZpRCxDVTJGcEQsT0FFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxRQUNJLFlWbkd5QyxDVW9HNUMsUUFFRyxXVnRHeUMsQ1V1RzVDLFVBRUcsZVZ6R3lDLENVMEc1QyxVQUVHLGtCVjVHeUMsQ1U2RzVDLFVBRUcsZ0JWL0d5QyxDVWdINUMsVUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxZVm5HeUMsQ1VvRzVDLGlCQUVHLFdWdEd5QyxDVXVHNUMsbUJBRUcsZVZ6R3lDLENVMEc1QyxtQkFFRyxrQlY1R3lDLENVNkc1QyxtQkFFRyxnQlYvR3lDLENVZ0g1QyxtQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx1QkFDSSxZVm5HeUMsQ1VvRzVDLHVCQUVHLFdWdEd5QyxDVXVHNUMseUJBRUcsZVZ6R3lDLENVMEc1Qyx5QkFFRyxrQlY1R3lDLENVNkc1Qyx5QkFFRyxnQlYvR3lDLENVZ0g1Qyx5QkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxLQUNJLGNWOUVpRCxDVStFcEQsS0FFRyxhVmpGaUQsQ1VrRnBELE9BRUcsaUJWcEZpRCxDVXFGcEQsT0FFRyxvQlZ2RmlELENVd0ZwRCxPQUVHLGtCVjFGaUQsQ1UyRnBELE9BRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFFBQ0ksY1ZuR3lDLENVb0c1QyxRQUVHLGFWdEd5QyxDVXVHNUMsVUFFRyxpQlZ6R3lDLENVMEc1QyxVQUVHLG9CVjVHeUMsQ1U2RzVDLFVBRUcsa0JWL0d5QyxDVWdINUMsVUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxRQUNJLGNWbkd5QyxDVW9HNUMsUUFFRyxhVnRHeUMsQ1V1RzVDLFVBRUcsaUJWekd5QyxDVTBHNUMsVUFFRyxvQlY1R3lDLENVNkc1QyxVQUVHLGtCVi9HeUMsQ1VnSDVDLFVBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksUUFDSSxjVm5HeUMsQ1VvRzVDLFFBRUcsYVZ0R3lDLENVdUc1QyxVQUVHLGlCVnpHeUMsQ1UwRzVDLFVBRUcsb0JWNUd5QyxDVTZHNUMsVUFFRyxrQlYvR3lDLENVZ0g1QyxVQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxpQkFDSSxjVm5HeUMsQ1VvRzVDLGlCQUVHLGFWdEd5QyxDVXVHNUMsbUJBRUcsaUJWekd5QyxDVTBHNUMsbUJBRUcsb0JWNUd5QyxDVTZHNUMsbUJBRUcsa0JWL0d5QyxDVWdINUMsbUJBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksaUJBQ0ksY1ZuR3lDLENVb0c1QyxpQkFFRyxhVnRHeUMsQ1V1RzVDLG1CQUVHLGlCVnpHeUMsQ1UwRzVDLG1CQUVHLG9CVjVHeUMsQ1U2RzVDLG1CQUVHLGtCVi9HeUMsQ1VnSDVDLG1CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHVCQUNJLGNWbkd5QyxDVW9HNUMsdUJBRUcsYVZ0R3lDLENVdUc1Qyx5QkFFRyxpQlZ6R3lDLENVMEc1Qyx5QkFFRyxvQlY1R3lDLENVNkc1Qyx5QkFFRyxrQlYvR3lDLENVZ0g1Qyx5QkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLFlWOUVpRCxDVStFcEQsTUFFRyxXVmpGaUQsQ1VrRnBELFFBRUcsZVZwRmlELENVcUZwRCxRQUVHLGtCVnZGaUQsQ1V3RnBELFFBRUcsZ0JWMUZpRCxDVTJGcEQsUUFFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxVQUNJLFlWbkd5QyxDVW9HNUMsVUFFRyxXVnRHeUMsQ1V1RzVDLFlBRUcsZVZ6R3lDLENVMEc1QyxZQUVHLGtCVjVHeUMsQ1U2RzVDLFlBRUcsZ0JWL0d5QyxDVWdINUMsWUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx3QkFDSSxZVm5HeUMsQ1VvRzVDLHdCQUVHLFdWdEd5QyxDVXVHNUMsMEJBRUcsZVZ6R3lDLENVMEc1QywwQkFFRyxrQlY1R3lDLENVNkc1QywwQkFFRyxnQlYvR3lDLENVZ0g1QywwQkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLGNWOUVpRCxDVStFcEQsTUFFRyxhVmpGaUQsQ1VrRnBELFFBRUcsaUJWcEZpRCxDVXFGcEQsUUFFRyxvQlZ2RmlELENVd0ZwRCxRQUVHLGtCVjFGaUQsQ1UyRnBELFFBRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLGNWbkd5QyxDVW9HNUMsU0FFRyxhVnRHeUMsQ1V1RzVDLFdBRUcsaUJWekd5QyxDVTBHNUMsV0FFRyxvQlY1R3lDLENVNkc1QyxXQUVHLGtCVi9HeUMsQ1VnSDVDLFdBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFVBQ0ksY1ZuR3lDLENVb0c1QyxVQUVHLGFWdEd5QyxDVXVHNUMsWUFFRyxpQlZ6R3lDLENVMEc1QyxZQUVHLG9CVjVHeUMsQ1U2RzVDLFlBRUcsa0JWL0d5QyxDVWdINUMsWUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxjVm5HeUMsQ1VvRzVDLGtCQUVHLGFWdEd5QyxDVXVHNUMsb0JBRUcsaUJWekd5QyxDVTBHNUMsb0JBRUcsb0JWNUd5QyxDVTZHNUMsb0JBRUcsa0JWL0d5QyxDVWdINUMsb0JBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksa0JBQ0ksY1ZuR3lDLENVb0c1QyxrQkFFRyxhVnRHeUMsQ1V1RzVDLG9CQUVHLGlCVnpHeUMsQ1UwRzVDLG9CQUVHLG9CVjVHeUMsQ1U2RzVDLG9CQUVHLGtCVi9HeUMsQ1VnSDVDLG9CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHdCQUNJLGNWbkd5QyxDVW9HNUMsd0JBRUcsYVZ0R3lDLENVdUc1QywwQkFFRyxpQlZ6R3lDLENVMEc1QywwQkFFRyxvQlY1R3lDLENVNkc1QywwQkFFRyxrQlYvR3lDLENVZ0g1QywwQkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLFlWOUVpRCxDVStFcEQsTUFFRyxXVmpGaUQsQ1VrRnBELFFBRUcsZVZwRmlELENVcUZwRCxRQUVHLGtCVnZGaUQsQ1V3RnBELFFBRUcsZ0JWMUZpRCxDVTJGcEQsUUFFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxVQUNJLFlWbkd5QyxDVW9HNUMsVUFFRyxXVnRHeUMsQ1V1RzVDLFlBRUcsZVZ6R3lDLENVMEc1QyxZQUVHLGtCVjVHeUMsQ1U2RzVDLFlBRUcsZ0JWL0d5QyxDVWdINUMsWUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx3QkFDSSxZVm5HeUMsQ1VvRzVDLHdCQUVHLFdWdEd5QyxDVXVHNUMsMEJBRUcsZVZ6R3lDLENVMEc1QywwQkFFRyxrQlY1R3lDLENVNkc1QywwQkFFRyxnQlYvR3lDLENVZ0g1QywwQkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLGNWOUVpRCxDVStFcEQsTUFFRyxhVmpGaUQsQ1VrRnBELFFBRUcsaUJWcEZpRCxDVXFGcEQsUUFFRyxvQlZ2RmlELENVd0ZwRCxRQUVHLGtCVjFGaUQsQ1UyRnBELFFBRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLGNWbkd5QyxDVW9HNUMsU0FFRyxhVnRHeUMsQ1V1RzVDLFdBRUcsaUJWekd5QyxDVTBHNUMsV0FFRyxvQlY1R3lDLENVNkc1QyxXQUVHLGtCVi9HeUMsQ1VnSDVDLFdBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFVBQ0ksY1ZuR3lDLENVb0c1QyxVQUVHLGFWdEd5QyxDVXVHNUMsWUFFRyxpQlZ6R3lDLENVMEc1QyxZQUVHLG9CVjVHeUMsQ1U2RzVDLFlBRUcsa0JWL0d5QyxDVWdINUMsWUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxjVm5HeUMsQ1VvRzVDLGtCQUVHLGFWdEd5QyxDVXVHNUMsb0JBRUcsaUJWekd5QyxDVTBHNUMsb0JBRUcsb0JWNUd5QyxDVTZHNUMsb0JBRUcsa0JWL0d5QyxDVWdINUMsb0JBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksa0JBQ0ksY1ZuR3lDLENVb0c1QyxrQkFFRyxhVnRHeUMsQ1V1RzVDLG9CQUVHLGlCVnpHeUMsQ1UwRzVDLG9CQUVHLG9CVjVHeUMsQ1U2RzVDLG9CQUVHLGtCVi9HeUMsQ1VnSDVDLG9CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHdCQUNJLGNWbkd5QyxDVW9HNUMsd0JBRUcsYVZ0R3lDLENVdUc1QywwQkFFRyxpQlZ6R3lDLENVMEc1QywwQkFFRyxvQlY1R3lDLENVNkc1QywwQkFFRyxrQlYvR3lDLENVZ0g1QywwQkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLFlWOUVpRCxDVStFcEQsTUFFRyxXVmpGaUQsQ1VrRnBELFFBRUcsZVZwRmlELENVcUZwRCxRQUVHLGtCVnZGaUQsQ1V3RnBELFFBRUcsZ0JWMUZpRCxDVTJGcEQsUUFFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxVQUNJLFlWbkd5QyxDVW9HNUMsVUFFRyxXVnRHeUMsQ1V1RzVDLFlBRUcsZVZ6R3lDLENVMEc1QyxZQUVHLGtCVjVHeUMsQ1U2RzVDLFlBRUcsZ0JWL0d5QyxDVWdINUMsWUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx3QkFDSSxZVm5HeUMsQ1VvRzVDLHdCQUVHLFdWdEd5QyxDVXVHNUMsMEJBRUcsZVZ6R3lDLENVMEc1QywwQkFFRyxrQlY1R3lDLENVNkc1QywwQkFFRyxnQlYvR3lDLENVZ0g1QywwQkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLGNWOUVpRCxDVStFcEQsTUFFRyxhVmpGaUQsQ1VrRnBELFFBRUcsaUJWcEZpRCxDVXFGcEQsUUFFRyxvQlZ2RmlELENVd0ZwRCxRQUVHLGtCVjFGaUQsQ1UyRnBELFFBRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLGNWbkd5QyxDVW9HNUMsU0FFRyxhVnRHeUMsQ1V1RzVDLFdBRUcsaUJWekd5QyxDVTBHNUMsV0FFRyxvQlY1R3lDLENVNkc1QyxXQUVHLGtCVi9HeUMsQ1VnSDVDLFdBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFVBQ0ksY1ZuR3lDLENVb0c1QyxVQUVHLGFWdEd5QyxDVXVHNUMsWUFFRyxpQlZ6R3lDLENVMEc1QyxZQUVHLG9CVjVHeUMsQ1U2RzVDLFlBRUcsa0JWL0d5QyxDVWdINUMsWUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxjVm5HeUMsQ1VvRzVDLGtCQUVHLGFWdEd5QyxDVXVHNUMsb0JBRUcsaUJWekd5QyxDVTBHNUMsb0JBRUcsb0JWNUd5QyxDVTZHNUMsb0JBRUcsa0JWL0d5QyxDVWdINUMsb0JBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksa0JBQ0ksY1ZuR3lDLENVb0c1QyxrQkFFRyxhVnRHeUMsQ1V1RzVDLG9CQUVHLGlCVnpHeUMsQ1UwRzVDLG9CQUVHLG9CVjVHeUMsQ1U2RzVDLG9CQUVHLGtCVi9HeUMsQ1VnSDVDLG9CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHdCQUNJLGNWbkd5QyxDVW9HNUMsd0JBRUcsYVZ0R3lDLENVdUc1QywwQkFFRyxpQlZ6R3lDLENVMEc1QywwQkFFRyxvQlY1R3lDLENVNkc1QywwQkFFRyxrQlYvR3lDLENVZ0g1QywwQkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLFlWOUVpRCxDVStFcEQsTUFFRyxXVmpGaUQsQ1VrRnBELFFBRUcsZVZwRmlELENVcUZwRCxRQUVHLGtCVnZGaUQsQ1V3RnBELFFBRUcsZ0JWMUZpRCxDVTJGcEQsUUFFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxVQUNJLFlWbkd5QyxDVW9HNUMsVUFFRyxXVnRHeUMsQ1V1RzVDLFlBRUcsZVZ6R3lDLENVMEc1QyxZQUVHLGtCVjVHeUMsQ1U2RzVDLFlBRUcsZ0JWL0d5QyxDVWdINUMsWUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx3QkFDSSxZVm5HeUMsQ1VvRzVDLHdCQUVHLFdWdEd5QyxDVXVHNUMsMEJBRUcsZVZ6R3lDLENVMEc1QywwQkFFRyxrQlY1R3lDLENVNkc1QywwQkFFRyxnQlYvR3lDLENVZ0g1QywwQkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLGNWOUVpRCxDVStFcEQsTUFFRyxhVmpGaUQsQ1VrRnBELFFBRUcsaUJWcEZpRCxDVXFGcEQsUUFFRyxvQlZ2RmlELENVd0ZwRCxRQUVHLGtCVjFGaUQsQ1UyRnBELFFBRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLGNWbkd5QyxDVW9HNUMsU0FFRyxhVnRHeUMsQ1V1RzVDLFdBRUcsaUJWekd5QyxDVTBHNUMsV0FFRyxvQlY1R3lDLENVNkc1QyxXQUVHLGtCVi9HeUMsQ1VnSDVDLFdBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFVBQ0ksY1ZuR3lDLENVb0c1QyxVQUVHLGFWdEd5QyxDVXVHNUMsWUFFRyxpQlZ6R3lDLENVMEc1QyxZQUVHLG9CVjVHeUMsQ1U2RzVDLFlBRUcsa0JWL0d5QyxDVWdINUMsWUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxjVm5HeUMsQ1VvRzVDLGtCQUVHLGFWdEd5QyxDVXVHNUMsb0JBRUcsaUJWekd5QyxDVTBHNUMsb0JBRUcsb0JWNUd5QyxDVTZHNUMsb0JBRUcsa0JWL0d5QyxDVWdINUMsb0JBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksa0JBQ0ksY1ZuR3lDLENVb0c1QyxrQkFFRyxhVnRHeUMsQ1V1RzVDLG9CQUVHLGlCVnpHeUMsQ1UwRzVDLG9CQUVHLG9CVjVHeUMsQ1U2RzVDLG9CQUVHLGtCVi9HeUMsQ1VnSDVDLG9CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHdCQUNJLGNWbkd5QyxDVW9HNUMsd0JBRUcsYVZ0R3lDLENVdUc1QywwQkFFRyxpQlZ6R3lDLENVMEc1QywwQkFFRyxvQlY1R3lDLENVNkc1QywwQkFFRyxrQlYvR3lDLENVZ0g1QywwQkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLFlWOUVpRCxDVStFcEQsTUFFRyxXVmpGaUQsQ1VrRnBELFFBRUcsZVZwRmlELENVcUZwRCxRQUVHLGtCVnZGaUQsQ1V3RnBELFFBRUcsZ0JWMUZpRCxDVTJGcEQsUUFFRyxtQlY3RmlELENVOEZwRCwwQ0FJTyxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxTQUNJLFlWbkd5QyxDVW9HNUMsU0FFRyxXVnRHeUMsQ1V1RzVDLFdBRUcsZVZ6R3lDLENVMEc1QyxXQUVHLGtCVjVHeUMsQ1U2RzVDLFdBRUcsZ0JWL0d5QyxDVWdINUMsV0FFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwyQ0FDSSxVQUNJLFlWbkd5QyxDVW9HNUMsVUFFRyxXVnRHeUMsQ1V1RzVDLFlBRUcsZVZ6R3lDLENVMEc1QyxZQUVHLGtCVjVHeUMsQ1U2RzVDLFlBRUcsZ0JWL0d5QyxDVWdINUMsWUFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxZVm5HeUMsQ1VvRzVDLGtCQUVHLFdWdEd5QyxDVXVHNUMsb0JBRUcsZVZ6R3lDLENVMEc1QyxvQkFFRyxrQlY1R3lDLENVNkc1QyxvQkFFRyxnQlYvR3lDLENVZ0g1QyxvQkFFRyxtQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSx3QkFDSSxZVm5HeUMsQ1VvRzVDLHdCQUVHLFdWdEd5QyxDVXVHNUMsMEJBRUcsZVZ6R3lDLENVMEc1QywwQkFFRyxrQlY1R3lDLENVNkc1QywwQkFFRyxnQlYvR3lDLENVZ0g1QywwQkFFRyxtQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLGNWOUVpRCxDVStFcEQsTUFFRyxhVmpGaUQsQ1VrRnBELFFBRUcsaUJWcEZpRCxDVXFGcEQsUUFFRyxvQlZ2RmlELENVd0ZwRCxRQUVHLGtCVjFGaUQsQ1UyRnBELFFBRUcscUJWN0ZpRCxDVThGcEQsMENBSU8sU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFNBQ0ksY1ZuR3lDLENVb0c1QyxTQUVHLGFWdEd5QyxDVXVHNUMsV0FFRyxpQlZ6R3lDLENVMEc1QyxXQUVHLG9CVjVHeUMsQ1U2RzVDLFdBRUcsa0JWL0d5QyxDVWdINUMsV0FFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLGNWbkd5QyxDVW9HNUMsU0FFRyxhVnRHeUMsQ1V1RzVDLFdBRUcsaUJWekd5QyxDVTBHNUMsV0FFRyxvQlY1R3lDLENVNkc1QyxXQUVHLGtCVi9HeUMsQ1VnSDVDLFdBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksU0FDSSxjVm5HeUMsQ1VvRzVDLFNBRUcsYVZ0R3lDLENVdUc1QyxXQUVHLGlCVnpHeUMsQ1UwRzVDLFdBRUcsb0JWNUd5QyxDVTZHNUMsV0FFRyxrQlYvR3lDLENVZ0g1QyxXQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDJDQUNJLFVBQ0ksY1ZuR3lDLENVb0c1QyxVQUVHLGFWdEd5QyxDVXVHNUMsWUFFRyxpQlZ6R3lDLENVMEc1QyxZQUVHLG9CVjVHeUMsQ1U2RzVDLFlBRUcsa0JWL0d5QyxDVWdINUMsWUFFRyxxQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxrQkFDSSxjVm5HeUMsQ1VvRzVDLGtCQUVHLGFWdEd5QyxDVXVHNUMsb0JBRUcsaUJWekd5QyxDVTBHNUMsb0JBRUcsb0JWNUd5QyxDVTZHNUMsb0JBRUcsa0JWL0d5QyxDVWdINUMsb0JBRUcscUJWbEh5QyxDVW1INUMsQ0FsQkwsMENBQ0ksa0JBQ0ksY1ZuR3lDLENVb0c1QyxrQkFFRyxhVnRHeUMsQ1V1RzVDLG9CQUVHLGlCVnpHeUMsQ1UwRzVDLG9CQUVHLG9CVjVHeUMsQ1U2RzVDLG9CQUVHLGtCVi9HeUMsQ1VnSDVDLG9CQUVHLHFCVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLHdCQUNJLGNWbkd5QyxDVW9HNUMsd0JBRUcsYVZ0R3lDLENVdUc1QywwQkFFRyxpQlZ6R3lDLENVMEc1QywwQkFFRyxvQlY1R3lDLENVNkc1QywwQkFFRyxrQlYvR3lDLENVZ0g1QywwQkFFRyxxQlZsSHlDLENVbUg1QyxDQXRDVCxNQUNJLGFWOUVpRCxDVStFcEQsTUFFRyxZVmpGaUQsQ1VrRnBELFFBRUcsZ0JWcEZpRCxDVXFGcEQsUUFFRyxtQlZ2RmlELENVd0ZwRCxRQUVHLGlCVjFGaUQsQ1UyRnBELFFBRUcsb0JWN0ZpRCxDVThGcEQsMENBSU8sU0FDSSxhVm5HeUMsQ1VvRzVDLFNBRUcsWVZ0R3lDLENVdUc1QyxXQUVHLGdCVnpHeUMsQ1UwRzVDLFdBRUcsbUJWNUd5QyxDVTZHNUMsV0FFRyxpQlYvR3lDLENVZ0g1QyxXQUVHLG9CVmxIeUMsQ1VtSDVDLENBbEJMLDBDQUNJLFNBQ0ksYVZuR3lDLENVb0c1QyxTQUVHLFlWdEd5QyxDVXVHNUMsV0FFRyxnQlZ6R3lDLENVMEc1QyxXQUVHLG1CVjVHeUMsQ1U2RzVDLFdBRUcsaUJWL0d5QyxDVWdINUMsV0FFRyxvQlZsSHlDLENVbUg1QyxDQWxCTCwwQ0FDSSxTQUNJLGFWbkd5QyxDVW9HNUMsU0FFRyxZVnRHeUMsQ1V1RzVDLFdBRUcsZ0JWekd5QyxDVTBHNUMsV0FFRyxtQlY1R3lDLENVNkc1QyxXQUVHLGlCVi9HeUMsQ1VnSDVDLFdBRUcsb0JWbEh5QyxDVW1INUMsQ0FsQkwsMkNBQ0ksU0FDSSxhVm5HeUMsQ1VvRzVDLFNBRUcsWVZ0R3lDLENV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LDZCQUNBLFNBQ0EsVUFDQSxnQkFBaUIsQ0FDcEIsR0FHRyxnQkFBaUIsQ0FDcEIsR0FHRyxTQUNBLHFCQUFzQixDQUN6QiwyQkFJRyxTQUNBLGlCQUFrQixDQUNyQixxQ0FhRyx1QkFBd0IsQ0FDM0IsYUFRRyxVQUNBLFFBQVMsQ0F0S2Isa0JBK0tJLHVCQUNBLHVCQUF3QixDQUMzQixlQUtHLHVCQUF3QixDNUV6a0JoQyxJNEU2a0JRLHVCQUNBLHNCQUNBLHVCQUF3QixDNUVqdEJoQyxJNEVxdEJRLGdDQUNBLG9CQUFxQixDNUV2eEI3QixLNEUyeEJRLHlCQUEwQixDQUM3Qix1Q0FJRyw0QkFBNkIsQ0FDaEMsWUFHRyx3QkFBeUIsQ0FDNUIsa0JBR0csdUJBQXdCLENBQzNCLFVBR0csWUFBYSxDQUNoQixvQkFHRyxVQUFXLENBQ2QsK0RBSUcsVUFBVyxDQUNkLENBQUEiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9UG9wcGluczo0MDAsNjAwKTtcbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnV0VCIFJlZ3VsYXIgQm9sZCc7XG4gICAgc3JjOiB1cmwoJy4uLy4uL2ZvbnRzL1JlZ3VsYXItQm9sZFdFQi5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vLi4vZm9udHMvUmVndWxhci1Cb2xkV0VCLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vLi4vZm9udHMvUmVndWxhci1Cb2xkV0VCLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL1JlZ3VsYXItQm9sZFdFQi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnLi4vLi4vZm9udHMvUmVndWxhci1Cb2xkV0VCLnR0ZicpICBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vLi4vZm9udHMvUmVndWxhci1Cb2xkV0VCLnN2ZyNXRUJSZWd1bGFyQm9sZCcpIGZvcm1hdCgnc3ZnJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ1dFQiBSZWd1bGFyIE1lZGl1bSc7XG4gICAgc3JjOiB1cmwoJy4uLy4uL2ZvbnRzL1JlZ3VsYXItTWVkaXVtV0VCLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi8uLi9mb250cy9SZWd1bGFyLU1lZGl1bVdFQi5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL1JlZ3VsYXItTWVkaXVtV0VCLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL1JlZ3VsYXItTWVkaXVtV0VCLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi8uLi9mb250cy9SZWd1bGFyLU1lZGl1bVdFQi50dGYnKSAgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uLy4uL2ZvbnRzL1JlZ3VsYXItTWVkaXVtV0VCLnN2ZyNXRUJSZWd1bGFyQm9sZCcpIGZvcm1hdCgnc3ZnJyk7XG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2Ny4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHsgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscywgLyogMSAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vXG4vLyAtLSBTdGFydCBlZGl0aW5nIC0tIC8vXG4vL1xuXG4vKipcbiAqIEBhdG9tIEdyaWRcbiAqIEBzZWN0aW9uIEdyaWRcbiAqIEBtYXJrdXBcbiAqICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+T25lPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiA8L2Rpdj5cbiAqIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTJcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5Ud288L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTJcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5Ud288L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTJcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5Ud288L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTJcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5Ud288L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTJcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5Ud288L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTJcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5Ud288L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqIDwvZGl2PlxuICogPGRpdiBjbGFzcz1cInJvd1wiPlxuICogICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtM1wiPlxuICogICAgICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZDogIzRkNWE3MDsgY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweDsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tYm90dG9tOiAxNnB4O1wiPlRocmVlPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0zXCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+VGhyZWU8L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTNcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5UaHJlZTwvZGl2PlxuICogICAgIDwvZGl2PlxuICogICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtM1wiPlxuICogICAgICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZDogIzRkNWE3MDsgY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweDsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tYm90dG9tOiAxNnB4O1wiPlRocmVlPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiA8L2Rpdj5cbiAqIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTRcIj5cbiAqICAgICAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQ6ICM0ZDVhNzA7IGNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAycHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcIj5Gb3VyPC9kaXY+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy00XCI+XG4gKiAgICAgICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNGQ1YTcwOyBjb2xvcjogI2ZmZjsgYm9yZGVyLXJhZGl1czogMnB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE2cHg7XCI+Rm91cjwvZGl2PlxuICogICAgIDwvZGl2PlxuICogICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtNFwiPlxuICogICAgICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZDogIzRkNWE3MDsgY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweDsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tYm90dG9tOiAxNnB4O1wiPkZvdXI8L2Rpdj5cbiAqICAgICA8L2Rpdj5cbiAqIDwvZGl2PlxuICogPGRpdiBjbGFzcz1cInJvd1wiPlxuICogICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtNlwiPlxuICogICAgICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZDogIzRkNWE3MDsgY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweDsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tYm90dG9tOiAxNnB4O1wiPlNpeDwvZGl2PlxuICogICAgIDwvZGl2PlxuICogICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtNlwiPlxuICogICAgICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZDogIzRkNWE3MDsgY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweDsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tYm90dG9tOiAxNnB4O1wiPlNpeDwvZGl2PlxuICogICAgIDwvZGl2PlxuICogPC9kaXY+XG4gKiA8ZGl2IGNsYXNzPVwicm93XCI+XG4gKiAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMlwiPlxuICogICAgICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZDogIzRkNWE3MDsgY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweDsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tYm90dG9tOiAxNnB4O1wiPlR3ZWx2ZTwvZGl2PlxuICogICAgIDwvZGl2PlxuICogPC9kaXY+XG4gKi9cblxuLy8gQGltcG9ydCAnLi4vdXRpbHMvdmFyaWFibGVzJztcbkBpbXBvcnQgJ3Nhc3MtZmxleC1taXhpbi9fZmxleCc7XG5cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgeW91IHdhbnQgdG8gdXNlIG9uIHlvdXIgbGF5b3V0LlxuJGdyaWQtY29sdW1uczogMTIgIWRlZmF1bHQ7XG4vLyBTZXQgdGhlIGd1dHRlciBiZXR3ZWVuIGNvbHVtbnMuXG4kZ3V0dGVyLXdpZHRoOiAzMnB4ICFkZWZhdWx0O1xuLy8gU2V0IGEgbWFyZ2luIGZvciB0aGUgY29udGFpbmVyIHNpZGVzLlxuJG91dGVyLW1hcmdpbjogMnJlbSAhZGVmYXVsdDtcbi8vIENyZWF0ZSBvciByZW1vdmUgYnJlYWtwb2ludHMgZm9yIHlvdXIgcHJvamVjdFxuLy8gU3ludGF4OlxuLy8gbmFtZSBTSVpFcmVtLFxuJGJyZWFrcG9pbnRzOlxuICAgIHhzIDMwZW0gMjhyZW0sXG4gICAgc20gNDhlbSA0NnJlbSxcbiAgICBtZCA2MmVtIDYxcmVtLFxuICAgIGxnIDc1ZW0gNzFyZW0sXG4gICAgeGxnIDEwMGVtIDk4cmVtICFkZWZhdWx0O1xuJGZsZXhib3hncmlkLW1heC13aWR0aDogMTYwMHB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gLS0gU3RvcCBlZGl0aW5nIC0tIC8vXG4vL1xuXG4kZ3V0dGVyLWNvbXBlbnNhdGlvbjogJGd1dHRlci13aWR0aCAqIDAuNSAqIC0xO1xuJGhhbGYtZ3V0dGVyLXdpZHRoOiAkZ3V0dGVyLXdpZHRoICogMC41O1xuXG5AbWl4aW4gZmxleGJveGdyaWQtc2Fzcy1jb2wtY29tbW9uIHtcbiAgICAvLyBzcGxpdCBAaW5jbHVkZSBmbGV4KDAsIDAsIGF1dG8pIGludG8gaW5kaXZpZHVhbCBwcm9wc1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JvdygwKTtcbiAgICBAaW5jbHVkZSBmbGV4LXNocmluaygwKTtcblxuICAgIC8vIHdlIGxlYXZlIEBpbmNsdWRlIGZsZXgtYmFzaXMoYXV0bykgb3V0IG9mIGNvbW1vbiBiZWNhdXNlXG4gICAgLy8gaW4gc29tZSBzcG90cyB3ZSBuZWVkIGl0IGFuZCBzb21lIHdlIGRvbnRcbiAgICAvLyBtb3JlIHdoeSBoZXJlOiBodHRwczovL2dpdGh1Yi5jb20va3Jpc3RvZmVyam9zZXBoL2ZsZXhib3hncmlkL2lzc3Vlcy8xMjZcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRoYWxmLWd1dHRlci13aWR0aDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRoYWxmLWd1dHRlci13aWR0aDtcbn1cblxuW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzBlbSkge1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94Z3JpZC1zYXNzLWNvbC1jb21tb247XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnJvdyxcbi5nZm9ybV9maWVsZHMsXG4udGV4dC1yb3ctLTEgdWwuZ2Zvcm1fZmllbGRzIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94KCk7XG4gICAgQGluY2x1ZGUgZmxleCgwLCAxLCBhdXRvKTtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xuICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRndXR0ZXItY29tcGVuc2F0aW9uO1xuICAgIG1hcmdpbi1sZWZ0OiAkZ3V0dGVyLWNvbXBlbnNhdGlvbjtcbn1cblxuLnJvdy5yZXZlcnNlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3ctcmV2ZXJzZSk7XG59XG5cbi5yb3cuY29sIHtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xufVxuXG4uY29sLnJldmVyc2Uge1xuICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKGNvbHVtbi1yZXZlcnNlKTtcbn1cblxuJG5hbWU6IHhzO1xuLmNvbC0jeyRuYW1lfSB7XG4gICAgQGluY2x1ZGUgZmxleGJveGdyaWQtc2Fzcy1jb2wtY29tbW9uO1xuICAgIEBpbmNsdWRlIGZsZXgtYmFzaXMoYXV0byk7XG59XG4vLyBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuLy8gICAgIC5jb2wtI3skbmFtZX0tI3skaX0ge1xuLy8gICAgICAgICBAaW5jbHVkZSBmbGV4Ym94Z3JpZC1zYXNzLWNvbC1jb21tb247XG4vLyAgICAgICAgIEBpbmNsdWRlIGZsZXgtYmFzaXMoMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaSk7XG4vLyAgICAgICAgIG1heC13aWR0aDogMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaTtcbi8vICAgICB9XG4vLyB9XG4vLyBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuLy8gICAgIC5jb2wtI3skbmFtZX0tb2Zmc2V0LSN7JGl9IHtcbi8vICAgICAgICAgQGluY2x1ZGUgZmxleGJveGdyaWQtc2Fzcy1jb2wtY29tbW9uO1xuLy8gICAgICAgICBtYXJnaW4tbGVmdDogMTAwJSAvICRncmlkLWNvbHVtbnMgKiAkaTtcbi8vICAgICB9XG4vLyB9XG4uY29sLSN7JG5hbWV9IHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyb3coMSk7XG4gICAgQGluY2x1ZGUgZmxleC1iYXNpcygwKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG4uc3RhcnQtI3skbmFtZX0ge1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChmbGV4LXN0YXJ0KTtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbn1cblxuLmNlbnRlci0jeyRuYW1lfSB7XG4gICAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KGNlbnRlcik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZW5kLSN7JG5hbWV9IHtcbiAgICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoZmxleC1lbmQpO1xuICAgIHRleHQtYWxpZ246IGVuZDtcbn1cblxuLnRvcC0jeyRuYW1lfSB7XG4gICAgQGluY2x1ZGUgYWxpZ24taXRlbXMoZmxleC1zdGFydCk7XG59XG5cbi5taWRkbGUtI3skbmFtZX0ge1xuICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XG59XG5cbi5ib3R0b20tI3skbmFtZX0ge1xuICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGZsZXgtZW5kKTtcbn1cblxuLmFyb3VuZC0jeyRuYW1lfSB7XG4gICAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWFyb3VuZCk7XG59XG5cbi5iZXR3ZWVuLSN7JG5hbWV9IHtcbiAgICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoc3BhY2UtYmV0d2Vlbik7XG59XG5cbi5maXJzdC0jeyRuYW1lfSB7XG4gICAgb3JkZXI6IC0xO1xufVxuXG4ubGFzdC0jeyRuYW1lfSB7XG4gICAgb3JkZXI6IDE7XG59XG5cbkBlYWNoICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XG4gICAgJG5hbWU6IG50aCgkYnJlYWtwb2ludCwgMSk7XG4gICAgJHNpemU6IG50aCgkYnJlYWtwb2ludCwgMik7XG4gICAgJGNvbnRhaW5lcjogbnRoKCRicmVha3BvaW50LCAzKTtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzaXplKSB7XG5cbiAgICAgICAgLmNvbC0jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4Ym94Z3JpZC1zYXNzLWNvbC1jb21tb247XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWJhc2lzKGF1dG8pO1xuICAgICAgICB9XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAuY29sLSN7JG5hbWV9LSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4Ym94Z3JpZC1zYXNzLWNvbC1jb21tb247XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1iYXNpcygxMDAlIC8gJGdyaWQtY29sdW1ucyAqICRpKTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC5jb2wtI3skbmFtZX0tb2Zmc2V0LSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4Ym94Z3JpZC1zYXNzLWNvbC1jb21tb247XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbC0jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyb3coMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWJhc2lzKDApO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5zdGFydC0jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQoZmxleC1zdGFydCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jZW50ZXItI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KGNlbnRlcik7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuZW5kLSN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChmbGV4LWVuZCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBlbmQ7XG4gICAgICAgIH1cblxuICAgICAgICAudG9wLSN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGZsZXgtc3RhcnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1pZGRsZS0jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcyhjZW50ZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJvdHRvbS0jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcyhmbGV4LWVuZCk7XG4gICAgICAgIH1cblxuICAgICAgICAuYXJvdW5kLSN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChzcGFjZS1hcm91bmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJldHdlZW4tI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KHNwYWNlLWJldHdlZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpcnN0LSN7JG5hbWV9IHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sYXN0LSN7JG5hbWV9IHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gRmxleGJveCBNaXhpbnNcclxuLy8gaHR0cDovL3BoaWxpcHdhbHRvbi5naXRodWIuaW8vc29sdmVkLWJ5LWZsZXhib3gvXHJcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vc29sdmVkLWJ5LWZsZXhib3hcclxuLy8gXHJcbi8vIENvcHlyaWdodCAoYykgMjAxMyBCcmlhbiBGcmFuY29cclxuLy9cclxuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGFcclxuLy8gY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZVxyXG4vLyBcIlNvZnR3YXJlXCIpLCB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmdcclxuLy8gd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLFxyXG4vLyBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG9cclxuLy8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvXHJcbi8vIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcclxuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWRcclxuLy8gaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXHJcbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1NcclxuLy8gT1IgSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRlxyXG4vLyBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuXHJcbi8vIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZXHJcbi8vIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsXHJcbi8vIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFXHJcbi8vIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLlxyXG4vL1xyXG4vLyBUaGlzIGlzIGEgc2V0IG9mIG1peGlucyBmb3IgdGhvc2Ugd2hvIHdhbnQgdG8gbWVzcyBhcm91bmQgd2l0aCBmbGV4Ym94XHJcbi8vIHVzaW5nIHRoZSBuYXRpdmUgc3VwcG9ydCBvZiBjdXJyZW50IGJyb3dzZXJzLiBGb3IgZnVsbCBzdXBwb3J0IHRhYmxlXHJcbi8vIGNoZWNrOiBodHRwOi8vY2FuaXVzZS5jb20vZmxleGJveFxyXG4vL1xyXG4vLyBCYXNpY2FsbHkgdGhpcyB3aWxsIHVzZTpcclxuLy9cclxuLy8gKiBGYWxsYmFjaywgb2xkIHN5bnRheCAoSUUxMCwgbW9iaWxlIHdlYmtpdCBicm93c2VycyAtIG5vIHdyYXBwaW5nKVxyXG4vLyAqIEZpbmFsIHN0YW5kYXJkcyBzeW50YXggKEZGLCBTYWZhcmksIENocm9tZSwgSUUxMSwgT3BlcmEpXHJcbi8vXHJcbi8vIFRoaXMgd2FzIGluc3BpcmVkIGJ5OlxyXG4vLyBcclxuLy8gKiBodHRwOi8vZGV2Lm9wZXJhLmNvbS9hcnRpY2xlcy92aWV3L2FkdmFuY2VkLWNyb3NzLWJyb3dzZXItZmxleGJveC9cclxuLy8gXHJcbi8vIFdpdGggaGVscCBmcm9tOlxyXG4vLyBcclxuLy8gKiBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC9cclxuLy8gKiBodHRwOi8vdGhlLWVjaG9wbGV4Lm5ldC9mbGV4eWJveGVzL1xyXG4vLyAqIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9pZS9oaDc3MjA2OSh2PXZzLjg1KS5hc3B4XHJcbi8vICogaHR0cDovL2Nzcy10cmlja3MuY29tL3VzaW5nLWZsZXhib3gvXHJcbi8vICogaHR0cDovL2Rldi5vcGVyYS5jb20vYXJ0aWNsZXMvdmlldy9hZHZhbmNlZC1jcm9zcy1icm93c2VyLWZsZXhib3gvXHJcbi8vICogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tdXMvZG9jcy93ZWIvZ3VpZGUvY3NzL2ZsZXhpYmxlX2JveGVzXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEZsZXhib3ggQ29udGFpbmVyc1xyXG4vL1xyXG4vLyBUaGUgJ2ZsZXgnIHZhbHVlIGNhdXNlcyBhbiBlbGVtZW50IHRvIGdlbmVyYXRlIGEgYmxvY2stbGV2ZWwgZmxleFxyXG4vLyBjb250YWluZXIgYm94LlxyXG4vL1xyXG4vLyBUaGUgJ2lubGluZS1mbGV4JyB2YWx1ZSBjYXVzZXMgYW4gZWxlbWVudCB0byBnZW5lcmF0ZSBhIGlubGluZS1sZXZlbFxyXG4vLyBmbGV4IGNvbnRhaW5lciBib3guIFxyXG4vL1xyXG4vLyBkaXNwbGF5OiBmbGV4IHwgaW5saW5lLWZsZXhcclxuLy9cclxuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2ZsZXgtY29udGFpbmVyc1xyXG4vL1xyXG4vLyAoUGxhY2Vob2xkZXIgc2VsZWN0b3JzIGZvciBlYWNoIHR5cGUsIGZvciB0aG9zZSB3aG8gcmF0aGVyIEBleHRlbmQpXHJcblxyXG5AbWl4aW4gZmxleGJveCB7XHJcblx0ZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcblx0ZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG5cdGRpc3BsYXk6IC1tb3otZmxleDtcclxuXHRkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4lZmxleGJveCB7IEBpbmNsdWRlIGZsZXhib3g7IH1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIGlubGluZS1mbGV4IHtcclxuXHRkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XHJcblx0ZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcclxuXHRkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xyXG5cdGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxufVxyXG5cclxuJWlubGluZS1mbGV4IHsgQGluY2x1ZGUgaW5saW5lLWZsZXg7IH1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRmxleGJveCBEaXJlY3Rpb25cclxuLy9cclxuLy8gVGhlICdmbGV4LWRpcmVjdGlvbicgcHJvcGVydHkgc3BlY2lmaWVzIGhvdyBmbGV4IGl0ZW1zIGFyZSBwbGFjZWQgaW5cclxuLy8gdGhlIGZsZXggY29udGFpbmVyLCBieSBzZXR0aW5nIHRoZSBkaXJlY3Rpb24gb2YgdGhlIGZsZXggY29udGFpbmVyJ3NcclxuLy8gbWFpbiBheGlzLiBUaGlzIGRldGVybWluZXMgdGhlIGRpcmVjdGlvbiB0aGF0IGZsZXggaXRlbXMgYXJlIGxhaWQgb3V0IGluLiBcclxuLy9cclxuLy8gVmFsdWVzOiByb3cgfCByb3ctcmV2ZXJzZSB8IGNvbHVtbiB8IGNvbHVtbi1yZXZlcnNlXHJcbi8vIERlZmF1bHQ6IHJvd1xyXG4vL1xyXG4vLyBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC8jZmxleC1kaXJlY3Rpb24tcHJvcGVydHlcclxuXHJcbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkdmFsdWU6IHJvdykge1xyXG5cdEBpZiAkdmFsdWUgPT0gcm93LXJldmVyc2Uge1xyXG5cdFx0LXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xyXG5cdFx0LXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xyXG5cdH0gQGVsc2UgaWYgJHZhbHVlID09IGNvbHVtbiB7XHJcblx0XHQtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcclxuXHRcdC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcblx0fSBAZWxzZSBpZiAkdmFsdWUgPT0gY29sdW1uLXJldmVyc2Uge1xyXG5cdFx0LXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xyXG5cdFx0LXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuXHR9IEBlbHNlIHtcclxuXHRcdC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xyXG5cdFx0LXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xyXG5cdH1cclxuXHQtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XHJcblx0LW1vei1mbGV4LWRpcmVjdGlvbjogJHZhbHVlO1xyXG5cdC1tcy1mbGV4LWRpcmVjdGlvbjogJHZhbHVlO1xyXG5cdGZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XHJcbn1cclxuXHQvLyBTaG9ydGVyIHZlcnNpb246XHJcblx0QG1peGluIGZsZXgtZGlyKCRhcmdzLi4uKSB7IEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRhcmdzLi4uKTsgfVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBGbGV4Ym94IFdyYXBcclxuLy9cclxuLy8gVGhlICdmbGV4LXdyYXAnIHByb3BlcnR5IGNvbnRyb2xzIHdoZXRoZXIgdGhlIGZsZXggY29udGFpbmVyIGlzIHNpbmdsZS1saW5lXHJcbi8vIG9yIG11bHRpLWxpbmUsIGFuZCB0aGUgZGlyZWN0aW9uIG9mIHRoZSBjcm9zcy1heGlzLCB3aGljaCBkZXRlcm1pbmVzXHJcbi8vIHRoZSBkaXJlY3Rpb24gbmV3IGxpbmVzIGFyZSBzdGFja2VkIGluLiBcclxuLy9cclxuLy8gVmFsdWVzOiBub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlXHJcbi8vIERlZmF1bHQ6IG5vd3JhcFxyXG4vL1xyXG4vLyBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC8jZmxleC13cmFwLXByb3BlcnR5XHJcblxyXG5AbWl4aW4gZmxleC13cmFwKCR2YWx1ZTogbm93cmFwKSB7XHJcblx0Ly8gTm8gV2Via2l0IEJveCBmYWxsYmFjay5cclxuXHQtd2Via2l0LWZsZXgtd3JhcDogJHZhbHVlO1xyXG5cdC1tb3otZmxleC13cmFwOiAkdmFsdWU7XHJcblx0QGlmICR2YWx1ZSA9PSBub3dyYXAge1xyXG5cdFx0LW1zLWZsZXgtd3JhcDogbm9uZTtcclxuXHR9IEBlbHNlIHsgXHJcblx0XHQtbXMtZmxleC13cmFwOiAkdmFsdWU7IFxyXG5cdH1cclxuXHRmbGV4LXdyYXA6ICR2YWx1ZTtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBGbGV4Ym94IEZsb3cgKHNob3J0aGFuZClcclxuLy9cclxuLy8gVGhlICdmbGV4LWZsb3cnIHByb3BlcnR5IGlzIGEgc2hvcnRoYW5kIGZvciBzZXR0aW5nIHRoZSAnZmxleC1kaXJlY3Rpb24nXHJcbi8vIGFuZCAnZmxleC13cmFwJyBwcm9wZXJ0aWVzLCB3aGljaCB0b2dldGhlciBkZWZpbmUgdGhlIGZsZXggY29udGFpbmVyJ3NcclxuLy8gbWFpbiBhbmQgY3Jvc3MgYXhlcy5cclxuLy9cclxuLy8gVmFsdWVzOiA8ZmxleC1kaXJlY3Rpb24+IHwgPGZsZXgtd3JhcD4gXHJcbi8vIERlZmF1bHQ6IHJvdyBub3dyYXBcclxuLy9cclxuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2ZsZXgtZmxvdy1wcm9wZXJ0eVxyXG5cclxuQG1peGluIGZsZXgtZmxvdygkdmFsdWVzOiAocm93IG5vd3JhcCkpIHtcclxuXHQvLyBObyBXZWJraXQgQm94IGZhbGxiYWNrLlxyXG5cdC13ZWJraXQtZmxleC1mbG93OiAkdmFsdWVzO1xyXG5cdC1tb3otZmxleC1mbG93OiAkdmFsdWVzO1xyXG5cdC1tcy1mbGV4LWZsb3c6ICR2YWx1ZXM7XHJcblx0ZmxleC1mbG93OiAkdmFsdWVzO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEZsZXhib3ggT3JkZXJcclxuLy9cclxuLy8gVGhlICdvcmRlcicgcHJvcGVydHkgY29udHJvbHMgdGhlIG9yZGVyIGluIHdoaWNoIGZsZXggaXRlbXMgYXBwZWFyIHdpdGhpblxyXG4vLyB0aGVpciBmbGV4IGNvbnRhaW5lciwgYnkgYXNzaWduaW5nIHRoZW0gdG8gb3JkaW5hbCBncm91cHMuXHJcbi8vXHJcbi8vIERlZmF1bHQ6IDBcclxuLy9cclxuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI29yZGVyLXByb3BlcnR5XHJcblxyXG5AbWl4aW4gb3JkZXIoJGludDogMCkge1xyXG5cdC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6ICRpbnQgKyAxO1xyXG5cdC13ZWJraXQtb3JkZXI6ICRpbnQ7XHJcblx0LW1vei1vcmRlcjogJGludDtcclxuXHQtbXMtZmxleC1vcmRlcjogJGludDtcclxuXHRvcmRlcjogJGludDtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBGbGV4Ym94IEdyb3dcclxuLy9cclxuLy8gVGhlICdmbGV4LWdyb3cnIHByb3BlcnR5IHNldHMgdGhlIGZsZXggZ3JvdyBmYWN0b3IuIE5lZ2F0aXZlIG51bWJlcnNcclxuLy8gYXJlIGludmFsaWQuXHJcbi8vXHJcbi8vIERlZmF1bHQ6IDBcclxuLy9cclxuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2ZsZXgtZ3Jvdy1wcm9wZXJ0eVxyXG5cclxuQG1peGluIGZsZXgtZ3JvdygkaW50OiAwKSB7XHJcblx0LXdlYmtpdC1ib3gtZmxleDogJGludDtcclxuXHQtd2Via2l0LWZsZXgtZ3JvdzogJGludDtcclxuXHQtbW96LWZsZXgtZ3JvdzogJGludDtcclxuXHQtbXMtZmxleC1wb3NpdGl2ZTogJGludDtcclxuXHRmbGV4LWdyb3c6ICRpbnQ7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRmxleGJveCBTaHJpbmtcclxuLy9cclxuLy8gVGhlICdmbGV4LXNocmluaycgcHJvcGVydHkgc2V0cyB0aGUgZmxleCBzaHJpbmsgZmFjdG9yLiBOZWdhdGl2ZSBudW1iZXJzXHJcbi8vIGFyZSBpbnZhbGlkLlxyXG4vL1xyXG4vLyBEZWZhdWx0OiAxXHJcbi8vXHJcbi8vIGh0dHA6Ly93My5vcmcvdHIvY3NzMy1mbGV4Ym94LyNmbGV4LXNocmluay1wcm9wZXJ0eVxyXG5cclxuQG1peGluIGZsZXgtc2hyaW5rKCRpbnQ6IDEpIHtcclxuXHQtd2Via2l0LWZsZXgtc2hyaW5rOiAkaW50O1xyXG5cdC1tb3otZmxleC1zaHJpbms6ICRpbnQ7XHJcblx0LW1zLWZsZXgtbmVnYXRpdmU6ICRpbnQ7XHJcblx0ZmxleC1zaHJpbms6ICRpbnQ7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRmxleGJveCBCYXNpc1xyXG4vL1xyXG4vLyBUaGUgJ2ZsZXgtYmFzaXMnIHByb3BlcnR5IHNldHMgdGhlIGZsZXggYmFzaXMuIE5lZ2F0aXZlIGxlbmd0aHMgYXJlIGludmFsaWQuIFxyXG4vL1xyXG4vLyBWYWx1ZXM6IExpa2UgXCJ3aWR0aFwiIFxyXG4vLyBEZWZhdWx0OiBhdXRvXHJcbi8vXHJcbi8vIGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtZmxleGJveC8jZmxleC1iYXNpcy1wcm9wZXJ0eVxyXG5cclxuQG1peGluIGZsZXgtYmFzaXMoJHZhbHVlOiBhdXRvKSB7XHJcblx0LXdlYmtpdC1mbGV4LWJhc2lzOiAkdmFsdWU7XHJcblx0LW1vei1mbGV4LWJhc2lzOiAkdmFsdWU7XHJcblx0LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ICR2YWx1ZTtcclxuXHRmbGV4LWJhc2lzOiAkdmFsdWU7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRmxleGJveCBcIkZsZXhcIiAoc2hvcnRoYW5kKVxyXG4vL1xyXG4vLyBUaGUgJ2ZsZXgnIHByb3BlcnR5IHNwZWNpZmllcyB0aGUgY29tcG9uZW50cyBvZiBhIGZsZXhpYmxlIGxlbmd0aDogdGhlXHJcbi8vIGZsZXggZ3JvdyBmYWN0b3IgYW5kIGZsZXggc2hyaW5rIGZhY3RvciwgYW5kIHRoZSBmbGV4IGJhc2lzLiBXaGVuIGFuXHJcbi8vIGVsZW1lbnQgaXMgYSBmbGV4IGl0ZW0sICdmbGV4JyBpcyBjb25zdWx0ZWQgaW5zdGVhZCBvZiB0aGUgbWFpbiBzaXplXHJcbi8vIHByb3BlcnR5IHRvIGRldGVybWluZSB0aGUgbWFpbiBzaXplIG9mIHRoZSBlbGVtZW50LiBJZiBhbiBlbGVtZW50IGlzXHJcbi8vIG5vdCBhIGZsZXggaXRlbSwgJ2ZsZXgnIGhhcyBubyBlZmZlY3QuXHJcbi8vXHJcbi8vIFZhbHVlczogbm9uZSB8IDxmbGV4LWdyb3c+IDxmbGV4LXNocmluaz4gfHwgPGZsZXgtYmFzaXM+XHJcbi8vIERlZmF1bHQ6IFNlZSBpbmRpdmlkdWFsIHByb3BlcnRpZXMgKDEgMSAwKS5cclxuLy9cclxuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2ZsZXgtcHJvcGVydHlcclxuXHJcbkBtaXhpbiBmbGV4KCRmZzogMSwgJGZzOiBudWxsLCAkZmI6IG51bGwpIHtcclxuICAgIFxyXG5cdC8vIFNldCBhIHZhcmlhYmxlIHRvIGJlIHVzZWQgYnkgYm94LWZsZXggcHJvcGVydGllc1xyXG5cdCRmZy1ib3hmbGV4OiAkZmc7XHJcblxyXG5cdC8vIEJveC1GbGV4IG9ubHkgc3VwcG9ydHMgYSBmbGV4LWdyb3cgdmFsdWUgc28gbGV0J3MgZ3JhYiB0aGVcclxuXHQvLyBmaXJzdCBpdGVtIGluIHRoZSBsaXN0IGFuZCBqdXN0IHJldHVybiB0aGF0LlxyXG5cdEBpZiB0eXBlLW9mKCRmZykgPT0gJ2xpc3QnIHtcclxuXHRcdCRmZy1ib3hmbGV4OiBudGgoJGZnLCAxKTtcclxuXHR9XHJcblxyXG5cdC13ZWJraXQtYm94LWZsZXg6ICRmZy1ib3hmbGV4O1xyXG5cdC13ZWJraXQtZmxleDogJGZnICRmcyAkZmI7XHJcblx0LW1vei1ib3gtZmxleDogJGZnLWJveGZsZXg7XHJcblx0LW1vei1mbGV4OiAkZmcgJGZzICRmYjtcclxuXHQtbXMtZmxleDogJGZnICRmcyAkZmI7XHJcblx0ZmxleDogJGZnICRmcyAkZmI7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRmxleGJveCBKdXN0aWZ5IENvbnRlbnRcclxuLy9cclxuLy8gVGhlICdqdXN0aWZ5LWNvbnRlbnQnIHByb3BlcnR5IGFsaWducyBmbGV4IGl0ZW1zIGFsb25nIHRoZSBtYWluIGF4aXNcclxuLy8gb2YgdGhlIGN1cnJlbnQgbGluZSBvZiB0aGUgZmxleCBjb250YWluZXIuIFRoaXMgaXMgZG9uZSBhZnRlciBhbnkgZmxleGlibGVcclxuLy8gbGVuZ3RocyBhbmQgYW55IGF1dG8gbWFyZ2lucyBoYXZlIGJlZW4gcmVzb2x2ZWQuIFR5cGljYWxseSBpdCBoZWxwcyBkaXN0cmlidXRlXHJcbi8vIGV4dHJhIGZyZWUgc3BhY2UgbGVmdG92ZXIgd2hlbiBlaXRoZXIgYWxsIHRoZSBmbGV4IGl0ZW1zIG9uIGEgbGluZSBhcmVcclxuLy8gaW5mbGV4aWJsZSwgb3IgYXJlIGZsZXhpYmxlIGJ1dCBoYXZlIHJlYWNoZWQgdGhlaXIgbWF4aW11bSBzaXplLiBJdCBhbHNvXHJcbi8vIGV4ZXJ0cyBzb21lIGNvbnRyb2wgb3ZlciB0aGUgYWxpZ25tZW50IG9mIGl0ZW1zIHdoZW4gdGhleSBvdmVyZmxvdyB0aGUgbGluZS5cclxuLy9cclxuLy8gTm90ZTogJ3NwYWNlLSonIHZhbHVlcyBub3Qgc3VwcG9ydGVkIGluIG9sZGVyIHN5bnRheGVzLlxyXG4vL1xyXG4vLyBWYWx1ZXM6IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmRcclxuLy8gRGVmYXVsdDogZmxleC1zdGFydFxyXG4vL1xyXG4vLyBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC8janVzdGlmeS1jb250ZW50LXByb3BlcnR5XHJcblxyXG5AbWl4aW4ganVzdGlmeS1jb250ZW50KCR2YWx1ZTogZmxleC1zdGFydCkge1xyXG5cdEBpZiAkdmFsdWUgPT0gZmxleC1zdGFydCB7XHJcblx0XHQtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcclxuXHRcdC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xyXG5cdH0gQGVsc2UgaWYgJHZhbHVlID09IGZsZXgtZW5kIHtcclxuXHRcdC13ZWJraXQtYm94LXBhY2s6IGVuZDtcclxuXHRcdC1tcy1mbGV4LXBhY2s6IGVuZDtcclxuXHR9IEBlbHNlIGlmICR2YWx1ZSA9PSBzcGFjZS1iZXR3ZWVuIHtcclxuXHRcdC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7XHJcblx0XHQtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xyXG5cdH0gQGVsc2UgaWYgJHZhbHVlID09IHNwYWNlLWFyb3VuZCB7XHJcblx0XHQtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlO1x0XHRcclxuXHR9IEBlbHNlIHtcclxuXHRcdC13ZWJraXQtYm94LXBhY2s6ICR2YWx1ZTtcclxuXHRcdC1tcy1mbGV4LXBhY2s6ICR2YWx1ZTtcclxuXHR9XHJcblx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcclxuXHQtbW96LWp1c3RpZnktY29udGVudDogJHZhbHVlO1xyXG5cdGp1c3RpZnktY29udGVudDogJHZhbHVlO1xyXG59XHJcblx0Ly8gU2hvcnRlciB2ZXJzaW9uOlxyXG5cdEBtaXhpbiBmbGV4LWp1c3QoJGFyZ3MuLi4pIHsgQGluY2x1ZGUganVzdGlmeS1jb250ZW50KCRhcmdzLi4uKTsgfVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBGbGV4Ym94IEFsaWduIEl0ZW1zXHJcbi8vXHJcbi8vIEZsZXggaXRlbXMgY2FuIGJlIGFsaWduZWQgaW4gdGhlIGNyb3NzIGF4aXMgb2YgdGhlIGN1cnJlbnQgbGluZSBvZiB0aGVcclxuLy8gZmxleCBjb250YWluZXIsIHNpbWlsYXIgdG8gJ2p1c3RpZnktY29udGVudCcgYnV0IGluIHRoZSBwZXJwZW5kaWN1bGFyXHJcbi8vIGRpcmVjdGlvbi4gJ2FsaWduLWl0ZW1zJyBzZXRzIHRoZSBkZWZhdWx0IGFsaWdubWVudCBmb3IgYWxsIG9mIHRoZSBmbGV4XHJcbi8vIGNvbnRhaW5lcidzIGl0ZW1zLCBpbmNsdWRpbmcgYW5vbnltb3VzIGZsZXggaXRlbXMuICdhbGlnbi1zZWxmJyBhbGxvd3NcclxuLy8gdGhpcyBkZWZhdWx0IGFsaWdubWVudCB0byBiZSBvdmVycmlkZGVuIGZvciBpbmRpdmlkdWFsIGZsZXggaXRlbXMuIChGb3JcclxuLy8gYW5vbnltb3VzIGZsZXggaXRlbXMsICdhbGlnbi1zZWxmJyBhbHdheXMgbWF0Y2hlcyB0aGUgdmFsdWUgb2YgJ2FsaWduLWl0ZW1zJ1xyXG4vLyBvbiB0aGVpciBhc3NvY2lhdGVkIGZsZXggY29udGFpbmVyLikgXHJcbi8vXHJcbi8vIFZhbHVlczogZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoXHJcbi8vIERlZmF1bHQ6IHN0cmV0Y2hcclxuLy9cclxuLy8gaHR0cDovL3czLm9yZy90ci9jc3MzLWZsZXhib3gvI2FsaWduLWl0ZW1zLXByb3BlcnR5XHJcblxyXG5AbWl4aW4gYWxpZ24taXRlbXMoJHZhbHVlOiBzdHJldGNoKSB7XHJcblx0QGlmICR2YWx1ZSA9PSBmbGV4LXN0YXJ0IHtcclxuXHRcdC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcclxuXHRcdC1tcy1mbGV4LWFsaWduOiBzdGFydDtcclxuXHR9IEBlbHNlIGlmICR2YWx1ZSA9PSBmbGV4LWVuZCB7XHJcblx0XHQtd2Via2l0LWJveC1hbGlnbjogZW5kO1xyXG5cdFx0LW1zLWZsZXgtYWxpZ246IGVuZDtcclxuXHR9IEBlbHNlIHtcclxuXHRcdC13ZWJraXQtYm94LWFsaWduOiAkdmFsdWU7XHJcblx0XHQtbXMtZmxleC1hbGlnbjogJHZhbHVlO1xyXG5cdH1cclxuXHQtd2Via2l0LWFsaWduLWl0ZW1zOiAkdmFsdWU7XHJcblx0LW1vei1hbGlnbi1pdGVtczogJHZhbHVlO1xyXG5cdGFsaWduLWl0ZW1zOiAkdmFsdWU7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gRmxleGJveCBBbGlnbiBTZWxmXHJcbi8vXHJcbi8vIFZhbHVlczogYXV0byB8IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaFxyXG4vLyBEZWZhdWx0OiBhdXRvXHJcblxyXG5AbWl4aW4gYWxpZ24tc2VsZigkdmFsdWU6IGF1dG8pIHtcclxuXHQvLyBObyBXZWJraXQgQm94IEZhbGxiYWNrLlxyXG5cdC13ZWJraXQtYWxpZ24tc2VsZjogJHZhbHVlO1xyXG5cdC1tb3otYWxpZ24tc2VsZjogJHZhbHVlO1xyXG5cdEBpZiAkdmFsdWUgPT0gZmxleC1zdGFydCB7XHJcblx0XHQtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydDtcclxuXHR9IEBlbHNlIGlmICR2YWx1ZSA9PSBmbGV4LWVuZCB7XHJcblx0XHQtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQ7XHJcblx0fSBAZWxzZSB7XHJcblx0XHQtbXMtZmxleC1pdGVtLWFsaWduOiAkdmFsdWU7XHJcblx0fVxyXG5cdGFsaWduLXNlbGY6ICR2YWx1ZTtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBGbGV4Ym94IEFsaWduIENvbnRlbnRcclxuLy9cclxuLy8gVGhlICdhbGlnbi1jb250ZW50JyBwcm9wZXJ0eSBhbGlnbnMgYSBmbGV4IGNvbnRhaW5lcidzIGxpbmVzIHdpdGhpbiB0aGVcclxuLy8gZmxleCBjb250YWluZXIgd2hlbiB0aGVyZSBpcyBleHRyYSBzcGFjZSBpbiB0aGUgY3Jvc3MtYXhpcywgc2ltaWxhciB0b1xyXG4vLyBob3cgJ2p1c3RpZnktY29udGVudCcgYWxpZ25zIGluZGl2aWR1YWwgaXRlbXMgd2l0aGluIHRoZSBtYWluLWF4aXMuIE5vdGUsXHJcbi8vIHRoaXMgcHJvcGVydHkgaGFzIG5vIGVmZmVjdCB3aGVuIHRoZSBmbGV4Ym94IGhhcyBvbmx5IGEgc2luZ2xlIGxpbmUuXHJcbi8vXHJcbi8vIFZhbHVlczogZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2hcclxuLy8gRGVmYXVsdDogc3RyZXRjaFxyXG4vL1xyXG4vLyBodHRwOi8vdzMub3JnL3RyL2NzczMtZmxleGJveC8jYWxpZ24tY29udGVudC1wcm9wZXJ0eVxyXG5cclxuQG1peGluIGFsaWduLWNvbnRlbnQoJHZhbHVlOiBzdHJldGNoKSB7XHJcblx0Ly8gTm8gV2Via2l0IEJveCBGYWxsYmFjay5cclxuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQ6ICR2YWx1ZTtcclxuXHQtbW96LWFsaWduLWNvbnRlbnQ6ICR2YWx1ZTtcclxuXHRAaWYgJHZhbHVlID09IGZsZXgtc3RhcnQge1xyXG5cdFx0LW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydDtcclxuXHR9IEBlbHNlIGlmICR2YWx1ZSA9PSBmbGV4LWVuZCB7XHJcblx0XHQtbXMtZmxleC1saW5lLXBhY2s6IGVuZDtcclxuXHR9IEBlbHNlIHtcclxuXHRcdC1tcy1mbGV4LWxpbmUtcGFjazogJHZhbHVlO1xyXG5cdH1cclxuXHRhbGlnbi1jb250ZW50OiAkdmFsdWU7XHJcbn1cclxuIiwiLypcbiAqICBSZW1vZGFsIC0gdjEuMS4xXG4gKiAgUmVzcG9uc2l2ZSwgbGlnaHR3ZWlnaHQsIGZhc3QsIHN5bmNocm9uaXplZCB3aXRoIENTUyBhbmltYXRpb25zLCBmdWxseSBjdXN0b21pemFibGUgbW9kYWwgd2luZG93IHBsdWdpbiB3aXRoIGRlY2xhcmF0aXZlIGNvbmZpZ3VyYXRpb24gYW5kIGhhc2ggdHJhY2tpbmcuXG4gKiAgaHR0cDovL3ZvZGthYmVhcnMuZ2l0aHViLmlvL3JlbW9kYWwvXG4gKlxuICogIE1hZGUgYnkgSWx5YSBNYWthcm92XG4gKiAgVW5kZXIgTUlUIExpY2Vuc2VcbiAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUmVtb2RhbCdzIG5lY2Vzc2FyeSBzdHlsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIEhpZGUgc2Nyb2xsIGJhciAqL1xuXG5odG1sLnJlbW9kYWwtaXMtbG9ja2VkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8qIEFudGkgRk9VQyAqL1xuXG4ucmVtb2RhbCxcbltkYXRhLXJlbW9kYWwtaWRdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTmVjZXNzYXJ5IHN0eWxlcyBvZiB0aGUgb3ZlcmxheSAqL1xuXG4ucmVtb2RhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xuICB0b3A6IC01MDAwcHg7XG4gIHJpZ2h0OiAtNTAwMHB4O1xuICBib3R0b206IC01MDAwcHg7XG4gIGxlZnQ6IC01MDAwcHg7XG5cbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTmVjZXNzYXJ5IHN0eWxlcyBvZiB0aGUgd3JhcHBlciAqL1xuXG4ucmVtb2RhbC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5yZW1vZGFsLXdyYXBwZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogLTAuMDVlbTtcblxuICBjb250ZW50OiBcIlwiO1xufVxuXG4vKiBGaXggaVBhZCwgaVBob25lIGdsaXRjaGVzICovXG5cbi5yZW1vZGFsLW92ZXJsYXksXG4ucmVtb2RhbC13cmFwcGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyogTmVjZXNzYXJ5IHN0eWxlcyBvZiB0aGUgbW9kYWwgZGlhbG9nICovXG5cbi5yZW1vZGFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIG91dGxpbmU6IG5vbmU7XG5cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuLnJlbW9kYWwtaXMtaW5pdGlhbGl6ZWQge1xuICAvKiBEaXNhYmxlIEFudGktRk9VQyAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4iLCJAaW1wb3J0ICcuLi91dGlscy92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vdXRpbHMvc2V0dGluZ3MnO1xuQGltcG9ydCAnLi4vdXRpbHMvZnVuY3Rpb25zJztcbkBpbXBvcnQgJy4uL3V0aWxzL21peGlucyc7XG5cbi8qXG4gKiAgUmVtb2RhbCAtIHYxLjEuMVxuICogIFJlc3BvbnNpdmUsIGxpZ2h0d2VpZ2h0LCBmYXN0LCBzeW5jaHJvbml6ZWQgd2l0aCBDU1MgYW5pbWF0aW9ucywgZnVsbHkgY3VzdG9taXphYmxlIG1vZGFsIHdpbmRvdyBwbHVnaW4gd2l0aCBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uIGFuZCBoYXNoIHRyYWNraW5nLlxuICogIGh0dHA6Ly92b2RrYWJlYXJzLmdpdGh1Yi5pby9yZW1vZGFsL1xuICpcbiAqICBNYWRlIGJ5IElseWEgTWFrYXJvdlxuICogIFVuZGVyIE1JVCBMaWNlbnNlXG4gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFJlbW9kYWwncyBkZWZhdWx0IG1vYmlsZSBmaXJzdCB0aGVtZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogRGVmYXVsdCB0aGVtZSBzdHlsZXMgZm9yIHRoZSBiYWNrZ3JvdW5kICovXG5cbi5yZW1vZGFsLWJnLnJlbW9kYWwtaXMtb3BlbmluZyxcbi5yZW1vZGFsLWJnLnJlbW9kYWwtaXMtb3BlbmVkIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoM3B4KTtcbiAgZmlsdGVyOiBibHVyKDNweCk7XG59XG5cbi8qIERlZmF1bHQgdGhlbWUgc3R5bGVzIG9mIHRoZSBvdmVybGF5ICovXG5cbi5yZW1vZGFsLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDQzLCA0NiwgNTYsIDAuOSk7XG59XG5cbi5yZW1vZGFsLW92ZXJsYXkucmVtb2RhbC1pcy1vcGVuaW5nLFxuLnJlbW9kYWwtb3ZlcmxheS5yZW1vZGFsLWlzLWNsb3Npbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbn1cblxuLnJlbW9kYWwtb3ZlcmxheS5yZW1vZGFsLWlzLW9wZW5pbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByZW1vZGFsLW92ZXJsYXktb3BlbmluZy1rZXlmcmFtZXM7XG4gIGFuaW1hdGlvbi1uYW1lOiByZW1vZGFsLW92ZXJsYXktb3BlbmluZy1rZXlmcmFtZXM7XG59XG5cbi5yZW1vZGFsLW92ZXJsYXkucmVtb2RhbC1pcy1jbG9zaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LWNsb3Npbmcta2V5ZnJhbWVzO1xuICBhbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LWNsb3Npbmcta2V5ZnJhbWVzO1xufVxuXG4vKiBEZWZhdWx0IHRoZW1lIHN0eWxlcyBvZiB0aGUgd3JhcHBlciAqL1xuXG4ucmVtb2RhbC13cmFwcGVyIHtcbiAgcGFkZGluZzogMTBweCAxMHB4IDA7XG59XG5cbi8qIERlZmF1bHQgdGhlbWUgc3R5bGVzIG9mIHRoZSBtb2RhbCBkaWFsb2cgKi9cblxuLnJlbW9kYWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcblxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLnJlbW9kYWwucmVtb2RhbC1pcy1vcGVuaW5nLFxuLnJlbW9kYWwucmVtb2RhbC1pcy1jbG9zaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5cbi5yZW1vZGFsLnJlbW9kYWwtaXMtb3BlbmluZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJlbW9kYWwtb3BlbmluZy1rZXlmcmFtZXM7XG4gIGFuaW1hdGlvbi1uYW1lOiByZW1vZGFsLW9wZW5pbmcta2V5ZnJhbWVzO1xufVxuXG4ucmVtb2RhbC5yZW1vZGFsLWlzLWNsb3Npbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByZW1vZGFsLWNsb3Npbmcta2V5ZnJhbWVzO1xuICBhbmltYXRpb24tbmFtZTogcmVtb2RhbC1jbG9zaW5nLWtleWZyYW1lcztcbn1cblxuLyogVmVydGljYWwgYWxpZ24gb2YgdGhlIG1vZGFsIGRpYWxvZyAqL1xuXG4ucmVtb2RhbCxcbi5yZW1vZGFsLXdyYXBwZXI6YWZ0ZXIge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKiBDbG9zZSBidXR0b24gKi9cblxuLnJlbW9kYWwtY2xvc2UsXG5idXR0b24ucmVtb2RhbC1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiByZW0oJGdyaWQpO1xuICByaWdodDogcmVtKCRncmlkKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHotaW5kZXg6IDI7XG5cbiAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgd2lkdGg6IHJlbSg0NXB4KTtcbiAgICAgIGhlaWdodDogcmVtKDQ1cHgpO1xuICB9XG4gIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgdG9wOiByZW0oNzBweCk7XG4gICAgICByaWdodDogOS41JTtcbiAgfVxufVxuXG4ucmVtb2RhbC1jbG9zZTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICB3aWR0aDogMzVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBEaWFsb2cgYnV0dG9ucyAqL1xuXG4ucmVtb2RhbC1jb25maXJtLFxuLnJlbW9kYWwtY2FuY2VsIHtcbiAgZm9udDogaW5oZXJpdDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIG1pbi13aWR0aDogMTEwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTJweCAwO1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsgZm9yIHRoZSBidXR0b24gdGFnLiAqL1xuXG4ucmVtb2RhbC1jb25maXJtOjotbW96LWZvY3VzLWlubmVyLFxuLnJlbW9kYWwtY2FuY2VsOjotbW96LWZvY3VzLWlubmVyLFxuLnJlbW9kYWwtY2xvc2U6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuXG4gIGJvcmRlcjogMDtcbn1cblxuLyogS2V5ZnJhbWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmVtb2RhbC1vcGVuaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuXG4gICAgb3BhY2l0eTogMTtcblxuICAgIC13ZWJraXQtZmlsdGVyOiBibHVyKDApO1xuICAgIGZpbHRlcjogYmx1cigwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlbW9kYWwtb3BlbmluZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcblxuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cigwKTtcbiAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJlbW9kYWwtY2xvc2luZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcblxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuXG4gICAgb3BhY2l0eTogMDtcblxuICAgIC13ZWJraXQtZmlsdGVyOiBibHVyKDApO1xuICAgIGZpbHRlcjogYmx1cigwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlbW9kYWwtY2xvc2luZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcblxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuXG4gICAgb3BhY2l0eTogMDtcblxuICAgIC13ZWJraXQtZmlsdGVyOiBibHVyKDApO1xuICAgIGZpbHRlcjogYmx1cigwKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlbW9kYWwtb3ZlcmxheS1vcGVuaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJlbW9kYWwtb3ZlcmxheS1jbG9zaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByZW1vZGFsLW92ZXJsYXktY2xvc2luZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qIE1lZGlhIHF1ZXJpZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQxcHgpIHtcbiAgLnJlbW9kYWwge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICB9XG59XG5cbi8qIElFOFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmx0LWllOSAucmVtb2RhbC1vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogIzJiMmUzODtcbn1cblxuLmx0LWllOSAucmVtb2RhbCB7XG4gIHdpZHRoOiAxMjAwcHg7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXG4vLy9cbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxuLy8vXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIG9sZC1pZS5zY3NzXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9tY2Fza2lsbC9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vZmYgRGlzYWJsZWQgcmVzcG9uc2l2ZSBtb2RlIGRvY3VtZW50YXRpb25cbiRtcS1yZXNwb25zaXZlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBsaXN0XG4vLy9cbi8vLyBOYW1lIHlvdXIgYnJlYWtwb2ludHMgaW4gYSB3YXkgdGhhdCBjcmVhdGVzIGEgdWJpcXVpdG91cyBsYW5ndWFnZVxuLy8vIGFjcm9zcyB0ZWFtIG1lbWJlcnMuIEl0IHdpbGwgaW1wcm92ZSBjb21tdW5pY2F0aW9uIGJldHdlZW5cbi8vLyBzdGFrZWhvbGRlcnMsIGRlc2lnbmVycywgZGV2ZWxvcGVycywgYW5kIHRlc3RlcnMuXG4vLy9cbi8vLyBAdHlwZSBNYXBcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vbWNhc2tpbGwvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtYnJlYWtwb2ludHM6IChcbiAgICBtb2JpbGU6ICAzMjBweCxcbiAgICB0YWJsZXQ6ICA3NDBweCxcbiAgICBkZXNrdG9wOiA5ODBweCxcbiAgICB3aWRlOiAgICAxMzAwcHhcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0aWMgYnJlYWtwb2ludCAoZm9yIGZpeGVkLXNpemVkIGxheW91dHMpXG4vLy9cbi8vLyBEZWZpbmUgdGhlIGJyZWFrcG9pbnQgZnJvbSAkbXEtYnJlYWtwb2ludHMgdGhhdCBzaG91bGRcbi8vLyBiZSB1c2VkIGFzIHRoZSB0YXJnZXQgbGVuZ3RoIGZvciB0aGUgZml4ZWQtc2l6ZWQgbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21jYXNraWxsL3Nhc3MtbXEjYWRkaW5nLWN1c3RvbS1icmVha3BvaW50cyBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kbXEtc3RhdGljLWJyZWFrcG9pbnQ6IGRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vLyBTaG93IGJyZWFrcG9pbnRzIGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy9cbi8vLyBJZiB5b3Ugd2FudCB0byBkaXNwbGF5IHRoZSBjdXJyZW50bHkgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcFxuLy8vIHJpZ2h0IGNvcm5lciBvZiB5b3VyIHNpdGUgZHVyaW5nIGRldmVsb3BtZW50LCBhZGQgdGhlIGJyZWFrcG9pbnRzXG4vLy8gdG8gdGhpcyBsaXN0LCBvcmRlcmVkIGJ5IGxlbmd0aCwgZS5nLiAobW9iaWxlLCB0YWJsZXQsIGRlc2t0b3ApLlxuLy8vXG4vLy8gQHR5cGUgbWFwXG4kbXEtc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG5cbi8vLyBDdXN0b21pemUgdGhlIG1lZGlhIHR5cGUgKGUuZy4gYEBtZWRpYSBzY3JlZW5gIG9yIGBAbWVkaWEgcHJpbnRgKVxuLy8vIEJ5IGRlZmF1bHQgc2Fzcy1tcSB1c2VzIGFuIFwiYWxsXCIgbWVkaWEgdHlwZSAoYEBtZWRpYSBhbGwgYW5kIOKApmApXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vbWNhc2tpbGwvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xuICAgICAgICBAcmV0dXJuICRweDtcbiAgICB9XG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyBsZW5ndGhcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnQuIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJHRhYmxldC13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtbGVuZ3RoKHRhYmxldCk7XG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC1sZW5ndGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LWxlbmd0aCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xuICAgICAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEB3YXJuIFwiQnJlYWtwb2ludCAjeyRuYW1lfSB3YXNuJ3QgZm91bmQgaW4gJGJyZWFrcG9pbnRzLlwiO1xuICAgIH1cbn1cblxuLy8vIFBhcnNlIGEgYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICR2YWx1ZSAtIExlbmd0aCBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRicmVha3BvaW50c1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4Y2x1c2l2ZSAoZmFsc2UpIC0gU2hvdWxkIHRoZSB2YWx1ZSBiZSBhbiBleGNsdXNpdmUgYm91bmRhcnlcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpIC0gTWFwIG9mIGJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiBtcS1wYXJzZS1icmVha3BvaW50KDM4MHB4KSkge31cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IG1xLXBhcnNlLWJyZWFrcG9pbnQoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1weDJlbVxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLWdldC1icmVha3BvaW50LWxlbmd0aFxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVmFsdWUgaW4gcGl4ZWxzXG5AZnVuY3Rpb24gbXEtcGFyc2UtYnJlYWtwb2ludCgkdmFsdWUsICRleGNsdXNpdmU6IGZhbHNlLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LWxlbmd0aCgkdmFsdWUsICRicmVha3BvaW50cykpIC0gaWYoJGV4Y2x1c2l2ZSwgLjAxZW0sIDApO1xuICAgIH1cbn1cblxuLy8vIEpvaW5zIGFsbCBlbGVtZW50cyBvZiBgJGxpc3RgIHdpdGggYCRnbHVlYC5cbi8vL1xuLy8vIEBpZ25vcmUgRG9jdW1lbnRhdGlvbjogaHR0cDovL3Nhc3N5bGlzdHMuY29tL2RvY3VtZW50YXRpb24uaHRtbCNzbC10by1zdHJpbmdcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBsaXN0IHRvIGNhc3Rcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGdsdWUgKCcgYW5kICcpIC0gdmFsdWUgdG8gdXNlIGFzIGEgam9pbiBzdHJpbmdcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgbXEtc3RyaW5naWZ5KGEgYiBjKVxuLy8vICAvLyBhIGFuZCBiIGFuZCBjXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIG1xLXN0cmluZ2lmeShhIGIgYywgJywgJylcbi8vLyAgLy8gYSwgYiwgY1xuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfVxuQGZ1bmN0aW9uIG1xLXN0cmluZ2lmeSggJGxpc3QsICRnbHVlOiAnIGFuZCAnICkge1xuICAgICRyZXN1bHQ6ICcnO1xuXG4gICAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgaWYobGVuZ3RoKCRpdGVtKSA+IDEsIG1xLXN0cmluZ2lmeSgkaXRlbSwgJGdsdWUpLCAkaXRlbSk7XG5cbiAgICAgICAgQGlmICRpdGVtICE9IG50aCgkbGlzdCwgLTEpIHtcbiAgICAgICAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAkZ2x1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gcXVvdGUoJHJlc3VsdCk7XG59XG5cbi8vLyBNZWRpYSBRdWVyeSBGdW5jdGlvblxuLy8vXG4vLy8gQ29tcHV0ZXMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiBhIGxpc3Qgb2YgY29uZGl0aW9ucy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkb3IgKGZhbHNlKSAtIEFsdGVybmF0aXZlIG1lZGlhIHF1ZXJ5IHBhcmFtZXRlcnNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lZGlhLWZlYXR1cmUgKHdpZHRoKSAtIE1lZGlhIGZlYXR1cmU6IHdpZHRoIG9yIGhlaWdodCBvZiB0aGUgb3V0cHV0IGRldmljZSdzIHJlbmRlcmluZyBzdXJmYWNlXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtc3RyaW5naWZ5XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcGFyc2UtYnJlYWtwb2ludFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkbXEtbGFwLWFuZC11cDogbXEoJGZyb206IG1vYmlsZSk7XG4vLy9cbi8vLyAgJG1xLXBhbG06IG1xKCR1bnRpbDogdGFibGV0KTtcbi8vL1xuLy8vICAkbXEtbGFwOiBtcShtb2JpbGUsIHRhYmxldCk7XG4vLy9cbi8vLyAgJG1xLXBvcnRhYmxlOiBtcSgkZnJvbTogdGFibGV0LCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyk7XG4vLy9cbi8vLyAgJG1xLWRlc2stc21hbGw6IG1xKDk1MHB4KSB7XG4vLy9cbi8vLyAgJG1xLXBvcnRhYmxlLXNjcmVlbjogbXEodGFibGV0LCAkbWVkaWEtdHlwZTogc2NyZWVuKSB7XG4vLy9cbi8vLyAgLy8gQWR2YW5jZWQgdXNlOlxuLy8vICAkbXktYnJlYWtwb2ludHM6ICggTDogOTAwcHgsIFhMOiAxMjAwcHggKTtcbi8vLyAgJG1xLWN1c3RvbTogbXEoTCwgJGJyZWFrcG9pbnRzOiAkbXktYnJlYWtwb2ludHMsICRzdGF0aWMtYnJlYWtwb2ludDogTCk7XG5AZnVuY3Rpb24gbXEoXG4gICAgJGZyb206IGZhbHNlLFxuICAgICR1bnRpbDogZmFsc2UsXG4gICAgJGFuZDogZmFsc2UsXG4gICAgJG9yOiBmYWxzZSxcbiAgICAkbWVkaWEtZmVhdHVyZTogd2lkdGgsXG4gICAgJG1lZGlhLXR5cGU6ICRtcS1tZWRpYS10eXBlLFxuICAgICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzLFxuICAgICRzdGF0aWMtYnJlYWtwb2ludDogJG1xLXN0YXRpYy1icmVha3BvaW50XG4pIHtcbiAgICAkbWluLXZhbHVlOiAwO1xuICAgICRtYXgtdmFsdWU6IDA7XG4gICAgJG1lZGlhLXF1ZXJ5OiAoKTtcblxuICAgIC8vIEZyb206IHRoaXMgYnJlYWtwb2ludCAoaW5jbHVzaXZlKVxuICAgIEBpZiAkZnJvbSB7XG4gICAgICAgJG1pbi12YWx1ZTogbXEtcGFyc2UtYnJlYWtwb2ludCgkZnJvbSwgZmFsc2UsICRicmVha3BvaW50cyk7XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICAkbWF4LXZhbHVlOiBtcS1wYXJzZS1icmVha3BvaW50KCR1bnRpbCwgdHJ1ZSwgJGJyZWFrcG9pbnRzKTtcbiAgICB9XG5cbiAgICBAaWYgJG1lZGlhLWZlYXR1cmUge1xuICAgICAgICBAaWYgJG1pbi12YWx1ZSAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiBhcHBlbmQoJG1lZGlhLXF1ZXJ5LCAnKG1pbi0jeyRtZWRpYS1mZWF0dXJlfTogI3skbWluLXZhbHVlfSknKTsgfVxuICAgICAgICBAaWYgJG1heC12YWx1ZSAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiBhcHBlbmQoJG1lZGlhLXF1ZXJ5LCAnKG1heC0jeyRtZWRpYS1mZWF0dXJlfTogI3skbWF4LXZhbHVlfSknKTsgfVxuICAgIH1cblxuICAgIEBpZiAkYW5kIHtcbiAgICAgICAgJG1lZGlhLXF1ZXJ5OiBhcHBlbmQoJG1lZGlhLXF1ZXJ5LCAnI3skYW5kfScpO1xuICAgIH1cblxuICAgICRtZWRpYS1xdWVyeTogbXEtc3RyaW5naWZ5KCRtZWRpYS1xdWVyeSwgJyBhbmQgJyk7XG5cbiAgICAvLyBQcmV2ZW50IHVubmVjZXNzYXJ5IG1lZGlhIHF1ZXJ5IHByZWZpeCAnYWxsIGFuZCAnXG4gICAgQGlmICgkbWVkaWEtdHlwZSAhPSAnYWxsJyBhbmQgJG1lZGlhLXF1ZXJ5ICE9ICcnKSB7XG4gICAgICAgICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXR5cGV9IGFuZCAjeyRtZWRpYS1xdWVyeX0nO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkbWVkaWEtcXVlcnkgPT0gJycge1xuICAgICAgICAkbWVkaWEtcXVlcnk6ICRtZWRpYS10eXBlO1xuICAgIH1cblxuICAgIEBpZiAkb3Ige1xuICAgICAgICAkbWVkaWEtcXVlcnk6IGFwcGVuZCgkbWVkaWEtcXVlcnksICcjeyRvcn0nKTtcbiAgICAgICAgJG1lZGlhLXF1ZXJ5OiBtcS1zdHJpbmdpZnkoJG1lZGlhLXF1ZXJ5LCAnLCAnKTtcbiAgICB9XG5cbiAgICAkbWVkaWEtcXVlcnk6IHVucXVvdGUoI3skbWVkaWEtcXVlcnl9KTtcblxuICAgIEByZXR1cm4gJG1lZGlhLXF1ZXJ5O1xufVxuXG4vLy8gTWVkaWEgUXVlcnkgTWl4aW5cbi8vL1xuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJvY2ssIGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zLCBhcm91bmQgYSBzZXRcbi8vLyBvZiBuZXN0ZWQgQ1NTIHN0YXRlbWVudHMuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRmcm9tIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkdW50aWwgKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRhbmQgKGZhbHNlKSAtIEFkZGl0aW9uYWwgbWVkaWEgcXVlcnkgcGFyYW1ldGVyc1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJG9yIChmYWxzZSkgLSBBbHRlcm5hdGl2ZSBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS1mZWF0dXJlICh3aWR0aCkgLSBNZWRpYSBmZWF0dXJlOiB3aWR0aCBvciBoZWlnaHQgb2YgdGhlIG91dHB1dCBkZXZpY2UncyByZW5kZXJpbmcgc3VyZmFjZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVkaWEtdHlwZSAoJG1xLW1lZGlhLXR5cGUpIC0gTWVkaWEgdHlwZTogc2NyZWVuLCBwcmludOKAplxuLy8vXG4vLy8gQGlnbm9yZSBVbmRvY3VtZW50ZWQgQVBJLCBmb3IgYWR2YW5jZWQgdXNlIG9ubHk6XG4vLy8gQGlnbm9yZSBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpXG4vLy8gQGlnbm9yZSBAcGFyYW0ge0Jvb2xlYW59ICRyZXNwb25zaXZlICgkbXEtcmVzcG9uc2l2ZSlcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXFcbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1wYXJzZS1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtZ2V0LWJyZWFrcG9pbnQtbGVuZ3RoXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vbWNhc2tpbGwvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRvcjogZmFsc2UsXG4gICAgJG1lZGlhLWZlYXR1cmU6IHdpZHRoLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgKCRyZXNwb25zaXZlID09IGZhbHNlKSB7XG4gICAgICAgICRtaW4tdmFsdWU6IDA7XG4gICAgICAgICRtYXgtdmFsdWU6IDA7XG5cbiAgICAgICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgICAgIEBpZiAkZnJvbSB7XG4gICAgICAgICAgICAkbWluLXZhbHVlOiBtcS1wYXJzZS1icmVha3BvaW50KCRmcm9tLCBmYWxzZSwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFVudGlsOiB0aGF0IGJyZWFrcG9pbnQgKGV4Y2x1c2l2ZSlcbiAgICAgICAgQGlmICR1bnRpbCB7XG4gICAgICAgICAgICAkbWF4LXZhbHVlOiBtcS1wYXJzZS1icmVha3BvaW50KCR1bnRpbCwgdHJ1ZSwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgICRzdGF0aWMtYnJlYWtwb2ludC12YWx1ZTogbXEtZ2V0LWJyZWFrcG9pbnQtbGVuZ3RoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC12YWx1ZTogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXZhbHVlKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB2YWx1ZVxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4tdmFsdWUgPD0gJHRhcmdldC12YWx1ZVxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC12YWx1ZSA+PSAkdGFyZ2V0LXZhbHVlXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZW5hYmxlZCwgb3V0cHV0IHJ1bGVzIGluc2lkZSBAbWVkaWEgcXVlcmllc1xuICAgIEBlbHNlIHtcbiAgICAgICAgJG1lZGlhLXF1ZXJ5OiBtcSgkZnJvbSwgJHVudGlsLCAkYW5kLCAkb3IsICRtZWRpYS1mZWF0dXJlLCAkbWVkaWEtdHlwZSwgJGJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQpO1xuXG4gICAgICAgIEBtZWRpYSAjeyRtZWRpYS1xdWVyeX0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8vIEFkZCBhIGJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGxlbmd0aCAtIExlbmd0aCBvZiB0aGUgYnJlYWtwb2ludFxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIEBpbmNsdWRlIG1xLWFkZC1icmVha3BvaW50KHR2c2NyZWVuLCAxOTIwcHgpO1xuLy8vICBAaW5jbHVkZSBtcSh0dnNjcmVlbikge31cbkBtaXhpbiBtcS1hZGQtYnJlYWtwb2ludCgkbmFtZSwgJGxlbmd0aCkge1xuICAgICRuZXctYnJlYWtwb2ludDogKCRuYW1lOiAkbGVuZ3RoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbn1cblxuLy8vIFNob3cgdGhlIGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyIG9mIHRoZSB2aWV3cG9ydFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9tY2Fza2lsbC9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpIC0gQnJlYWtwb2ludCBuYW1lcyBhbmQgc2l6ZXNcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zaG93LWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgZ2xvYmFsIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG4vLy9cbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBjdXN0b20gc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cygoTCwgWEwpLCAoUzogMzAwcHgsIEw6IDgwMHB4LCBYTDogMTIwMHB4KSk7XG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gICAgYm9keTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGOEUzO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBjb2xvcjogI0MwOTg1MztcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcbiAgICAgICAgcGFkZGluZzogM3B4IDZweDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgYnJlYWtwb2ludHMgdGhhdCBzaG91bGQgYmUgc2hvd25cbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XG4gICAgICAgICAgICAkbGVuZ3RoOiBtcS1nZXQtYnJlYWtwb2ludC1sZW5ndGgoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCIjeyRzaG93LWJyZWFrcG9pbnR9IOKJpSAjeyRsZW5ndGh9ICgje21xLXB4MmVtKCRsZW5ndGgpfSlcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGlmIGxlbmd0aCgkbXEtc2hvdy1icmVha3BvaW50cykgPiAwIHtcbiAgICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xufVxuIiwiJGJyb3dzZXItZGVmYXVsdC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vIFJFTXNcblxuJHJlbXMtb246IHRydWUgIWRlZmF1bHQ7XG4kcmVtcy1iYXNlLWZvbnQtc2l6ZTogJGJyb3dzZXItZGVmYXVsdC1mb250LXNpemUgLyAxMDAlICogJGh0bWwtZm9udC1zaXplICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gcmVtKCRzaXplLCAkcmV2ZXJzZTogZmFsc2UpIHtcbiAgICAkaHRtbC1mb250LXNpemUtdW5pdHM6IGlmKHN0ci1pbmRleCgjeyRodG1sLWZvbnQtc2l6ZX0sIHB4KSwgcHgsICUpO1xuXG4gICAgJHVuaXRsZXNzOiBzdHJpcC11bml0KCRzaXplKTtcbiAgICAkdW5pdGxlc3MtYmFzZTogc3RyaXAtdW5pdChpZigkaHRtbC1mb250LXNpemUtdW5pdHMgPT0gcHgsICRodG1sLWZvbnQtc2l6ZSwgJHJlbXMtYmFzZS1mb250LXNpemUpKTtcblxuICAgIEBpZiAkcmV2ZXJzZSA9PSBmYWxzZSB7XG4gICAgICAgIEBpZiAkcmVtcy1vbiB7XG4gICAgICAgICAgICBAaWYgc3RyLWluZGV4KCN7JHNpemV9LCAncHgnKSB7XG4gICAgICAgICAgICAgICAgQHJldHVybiAkdW5pdGxlc3MgLyAkdW5pdGxlc3MtYmFzZSAqIDFyZW07XG4gICAgICAgICAgICB9IEBlbHNlaWYgc3RyLWluZGV4KCN7JHNpemV9LCAncmVtJykge1xuICAgICAgICAgICAgICAgIEByZXR1cm4gJHNpemU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgQGlmIHN0ci1pbmRleCgjeyRzaXplfSwgJ3B4Jykge1xuICAgICAgICAgICAgICAgIEByZXR1cm4gJHNpemU7XG4gICAgICAgICAgICB9IEBlbHNlaWYgc3RyLWluZGV4KCN7JHNpemV9LCAncmVtJykge1xuICAgICAgICAgICAgICAgIEByZXR1cm4gJHVuaXRsZXNzICogJHVuaXRsZXNzLWJhc2UgKiAxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHJldHVybiAkdW5pdGxlc3MgKiAkdW5pdGxlc3MtYmFzZSAqIDFweDtcbiAgICB9XG59XG5cbi8vIEVNcyBjYWxjdWxhdG9yXG4kbWVkaWEtcXVlcnktdW5pdHM6IGVtICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gZW0oJHNpemUpIHtcbiAgICAkc2l6ZTogaWYoc3RyLWluZGV4KCN7JHNpemV9LCAncmVtJyksIHJlbSgkc2l6ZSwgdHJ1ZSksICRzaXplKTtcblxuICAgICR1bml0bGVzczogc3RyaXAtdW5pdCgkc2l6ZSk7XG4gICAgJHVuaXRsZXNzLWJhc2U6IHN0cmlwLXVuaXQoJGJyb3dzZXItZGVmYXVsdC1mb250LXNpemUpO1xuXG4gICAgQGlmICRtZWRpYS1xdWVyeS11bml0cyA9PSBlbSB7XG4gICAgICAgIEByZXR1cm4gJHVuaXRsZXNzIC8gJHVuaXRsZXNzLWJhc2UgKiAxZW07XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gJHNpemU7XG4gICAgfVxufVxuXG4vLyBNYXAgZGVlcCBnZXRcbi8vIEdldCB2YWx1ZXMgZnJvbSBhbnl3aGVyZSBpbiBhIHZhcmlhYmxlIGxpc3Rcbi8vIGh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9zYXNzL2RlZXAtZ2V0c2V0LW1hcHNcbkBmdW5jdGlvbiBtYXAtZGVlcC1nZXQoJG1hcCwgJGtleXMuLi4pIHtcbiAgICBAZWFjaCAka2V5IGluICRrZXlzIHtcbiAgICAgICAgJG1hcDogbWFwLWdldCgkbWFwLCAka2V5KTtcbiAgICB9XG4gICAgQHJldHVybiAkbWFwO1xufVxuXG4vLyBTdHJpcCB1bml0XG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XG4gICAgQGlmIHR5cGUtb2YoJG51bWJlcikgPT0gJ251bWJlcicgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG4gICAgICAgIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJG51bWJlcjtcbn1cblxuLy8vIENvbnZlcnQgYW5nbGVcbi8vLyBAYXV0aG9yIENocmlzIEVwcHN0ZWluXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBVbml0IHRvIGNvbnZlcnQgdG9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IENvbnZlcnRlZCBhbmdsZVxuQGZ1bmN0aW9uIGNvbnZlcnQtYW5nbGUoJHZhbHVlLCAkdW5pdCkge1xuICAgICRjb252ZXJ0YWJsZS11bml0czogZGVnIGdyYWQgdHVybiByYWQ7XG4gICAgJGNvbnZlcnNpb24tZmFjdG9yczogMSAoMTBncmFkLzlkZWcpICgxdHVybi8zNjBkZWcpICgzLjE0MTU5MjZyYWQvMTgwZGVnKTtcbiAgICBAaWYgaW5kZXgoJGNvbnZlcnRhYmxlLXVuaXRzLCB1bml0KCR2YWx1ZSkpIGFuZCBpbmRleCgkY29udmVydGFibGUtdW5pdHMsICR1bml0KSB7XG4gICAgICAgIEByZXR1cm4gJHZhbHVlXG4gICAgICAgICAgICAvIG50aCgkY29udmVyc2lvbi1mYWN0b3JzLCBpbmRleCgkY29udmVydGFibGUtdW5pdHMsIHVuaXQoJHZhbHVlKSkpXG4gICAgICAgICAgICAqIG50aCgkY29udmVyc2lvbi1mYWN0b3JzLCBpbmRleCgkY29udmVydGFibGUtdW5pdHMsICR1bml0KSk7XG4gICAgfVxuXG4gICAgQHdhcm4gXCJDYW5ub3QgY29udmVydCBgI3t1bml0KCR2YWx1ZSl9YCB0byBgI3skdW5pdH1gLlwiO1xufVxuXG4vLy8gVGVzdCBpZiBgJHZhbHVlYCBpcyBhbiBhbmdsZVxuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlIC0gVmFsdWUgdG8gdGVzdFxuLy8vIEByZXR1cm4ge0Jvb2x9XG5AZnVuY3Rpb24gaXMtZGlyZWN0aW9uKCR2YWx1ZSkge1xuICAgICRpcy1kaXJlY3Rpb246IGluZGV4KCh0byB0b3AsIHRvIHRvcCByaWdodCwgdG8gcmlnaHQgdG9wLCB0byByaWdodCwgdG8gYm90dG9tIHJpZ2h0LCB0byByaWdodCBib3R0b20sIHRvIGJvdHRvbSwgdG8gYm90dG9tIGxlZnQsIHRvIGxlZnQgYm90dG9tLCB0byBsZWZ0LCB0byBsZWZ0IHRvcCwgdG8gdG9wIGxlZnQpLCAkdmFsdWUpO1xuICAgICRpcy1hbmdsZTogdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIGFuZCBpbmRleCgnZGVnJyAnZ3JhZCcgJ3R1cm4nICdyYWQnLCB1bml0KCR2YWx1ZSkpO1xuXG4gICAgQHJldHVybiAkaXMtZGlyZWN0aW9uIG9yICRpcy1hbmdsZTtcbn1cblxuLy8vIENvbnZlcnQgYSBkaXJlY3Rpb24gdG8gbGVnYWN5IHN5bnRheFxuLy8vIEBwYXJhbSB7S2V5d29yZCB8IEFuZ2xlfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0XG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1kaXJlY3Rpb25cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnZlcnQtYW5nbGVcbkBmdW5jdGlvbiBsZWdhY3ktZGlyZWN0aW9uKCR2YWx1ZSkge1xuICAgIEBpZiBpcy1kaXJlY3Rpb24oJHZhbHVlKSA9PSBmYWxzZSB7XG4gICAgICAgIEB3YXJuIFwiQ2Fubm90IGNvbnZlcnQgYCN7JHZhbHVlfWAgdG8gbGVnYWN5IHN5bnRheCBiZWNhdXNlIGl0IGRvZXNuJ3Qgc2VlbSB0byBiZSBhbiBhbmdsZSBvciBhIGRpcmVjdGlvblwiO1xuICAgIH1cblxuICAgICRjb252ZXJzaW9uLW1hcDogKFxuICAgICAgICB0byB0b3AgICAgICAgICAgOiBib3R0b20sXG4gICAgICAgIHRvIHRvcCByaWdodCAgICA6IGJvdHRvbSBsZWZ0LFxuICAgICAgICB0byByaWdodCB0b3AgICAgOiBsZWZ0IGJvdHRvbSxcbiAgICAgICAgdG8gcmlnaHQgICAgICAgIDogbGVmdCxcbiAgICAgICAgdG8gYm90dG9tIHJpZ2h0IDogdG9wIGxlZnQsXG4gICAgICAgIHRvIHJpZ2h0IGJvdHRvbSA6IGxlZnQgdG9wLFxuICAgICAgICB0byBib3R0b20gICAgICAgOiB0b3AsXG4gICAgICAgIHRvIGJvdHRvbSBsZWZ0ICA6IHRvcCByaWdodCxcbiAgICAgICAgdG8gbGVmdCBib3R0b20gIDogcmlnaHQgdG9wLFxuICAgICAgICB0byBsZWZ0ICAgICAgICAgOiByaWdodCxcbiAgICAgICAgdG8gbGVmdCB0b3AgICAgIDogcmlnaHQgYm90dG9tLFxuICAgICAgICB0byB0b3AgbGVmdCAgICAgOiBib3R0b20gcmlnaHRcbiAgICApO1xuXG4gICAgQGlmIG1hcC1oYXMta2V5KCRjb252ZXJzaW9uLW1hcCwgJHZhbHVlKSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkY29udmVyc2lvbi1tYXAsICR2YWx1ZSk7XG4gICAgfVxuXG4gICAgQHJldHVybiA5MGRlZyAtIGNvbnZlcnQtYW5nbGUoJHZhbHVlLCAnZGVnJyk7XG59XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXByZXYgaSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG59XG4iLCJAaW1wb3J0ICcuLi91dGlscy92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vdXRpbHMvc2V0dGluZ3MnO1xuQGltcG9ydCAnLi4vdXRpbHMvZnVuY3Rpb25zJztcbkBpbXBvcnQgJy4uL3V0aWxzL21peGlucyc7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbmJ1dHRvbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQsXG5idXR0b24uc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IHJlbSgkZ3JpZCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgIHdpZHRoOiByZW0oNDVweCk7XG4gICAgICAgIGhlaWdodDogcmVtKDQ1cHgpO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG59XG5cbi5zbGljay1wcmV2LFxuYnV0dG9uLnNsaWNrLXByZXYge1xuICAgIHJpZ2h0OiByZW0oOTZweCk7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgIHRvcDogcmVtKDIwOHB4KTtcbiAgICAgIHJpZ2h0OiA5LjUlO1xuICAgIH1cbn1cblxuLnNsaWNrLW5leHQsXG5idXR0b24uc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IHJlbSg1MnB4KTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgdG9wOiByZW0oMTM5cHgpO1xuICAgICAgcmlnaHQ6IDkuNSU7XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRncmlkOiAgICAgICAgICAgICAgICAgICAgICAgICA4cHg7XG4kc3BhY2luZy1oZWxwZXJzOiAgICAgICAgICAgICAgMjA7XG5cbi8vIENPTE9VUlNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qKiBAY29sb3IgUHJpbWFyeSAqL1xuJHByaW1hcnk6ICAgICAgICAgICAgICAgICAgICAgICAjYzJkNDAwO1xuLyoqIEBjb2xvciBQcmltYXJ5IGRhcmsgKi9cbiRwcmltYXJ5LWRhcms6ICAgICAgICAgICAgICAgICAgI2FlYmUwNDtcbi8qKiBAY29sb3IgU2Vjb25kYXJ5ICovXG4kc2Vjb25kYXJ5OiAgICAgICAgICAgICAgICAgICAgICMwMGM0YjM7XG4vKiogQGNvbG9yIFRlcnRpYXJ5ICovXG4kdGVydGlhcnk6ICAgICAgICAgICAgICAgICAgICAgICMwMDRkNWE7XG4vKiogQGNvbG9yIEFjdGl2ZSAqL1xuJGFjdGl2ZTogICAgICAgICAgICAgICAgICAgICAgICAjMDBmZmE1O1xuLyoqIEBjb2xvciBBY2NlbnQgMSAqL1xuJGFjY2VudDE6ICAgICAgICAgICAgICAgICAgICAgICAjZmZjMDAwO1xuLyoqIEBjb2xvciBBY2NlbnQgMiAqL1xuJGFjY2VudDI6ICAgICAgICAgICAgICAgICAgICAgICAjNGJiNTQzO1xuLyoqIEBjb2xvciBBY2NlbnQgMyAqL1xuJGFjY2VudDM6ICAgICAgICAgICAgICAgICAgICAgICAjZmYwMDQ4O1xuLyoqIEBjb2xvciBFcnJvciAqL1xuJGVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAjZmYwMDQ4O1xuXG4kY2hhcmNvYWw6ICAgICAgICAgICAgICAgICAgICAgICMyNTI3MmE7XG4kYXNoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICM1ZDc3NzQ7XG4kYXNoLWxpZ2h0OiAgICAgICAgICAgICAgICAgICAgICNiNWJlYmM7XG4kYnVmZjogICAgICAgICAgICAgICAgICAgICAgICAgICNmMmY2ZjM7XG4kcm9sbGluZy1zdG9uZTogICAgICAgICAgICAgICAgICM3NDc4N2U7XG4kdHVuYTogICAgICAgICAgICAgICAgICAgICAgICAgICMzNzM3Mzk7XG4kZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICMwMDE3MzY7XG4kZGV4LWxpZ2h0OiAgICAgICAgICAgICAgICAgICAgICMwMGQ4ZmY7XG4kbWFkaXNvbjogICAgICAgICAgICAgICAgICAgICAgICMwOTJlNWY7XG5cbi8qKiBAY29sb3IgV2hpdGUgKi9cbiR3aGl0ZTogICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcbi8qKiBAY29sb3IgQmxhY2sgKi9cbiRibGFjazogICAgICAgICAgICAgICAgICAgICAgICAgIzAwMDtcblxuJGJhc2UtZm9udC1jb2xvcjogICAgICAgICAgICAgICAkY2hhcmNvYWw7XG4kYmFzZS1mb250LWJvbGQtd2VpZ2h0OiAgICAgICAgIDYwMDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgI2QyZDJkMjtcbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgJGJvcmRlci1jb2xvcjtcbiRiYXNlLXNlbGVjdC1iZy1jb2xvcjogICAgICAgICAgJHByaW1hcnk7XG4kYmFzZS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICRjaGFyY29hbDtcblxuLy8gTElOS1Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJhc2UtZm9udC1jb2xvcjtcbiRsaW5rLXZpc2l0ZWQtY29sb3I6ICAgICAgICAgICAgJGJhc2UtZm9udC1jb2xvcjtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgJGJhc2UtZm9udC1jb2xvcjtcblxuLy8gRk9OVFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRiYXNlLW1hcmdpbjogICAgICAgICAgICAgICAgICAgJGdyaWQgKiAzO1xuJGJhc2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAxLjU7XG4kZm9udC1wcmltYXJ5OiAgICAgICAgICAgICAgICAgICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcbiRmb250LXNlY29uZGFyeTogICAgICAgICAgICAgICAgJ1dFQiBSZWd1bGFyIE1lZGl1bScsIHNhbnMtc2VyaWY7XG4kZm9udC1zZWNvbmRhcnktYm9sZDogICAgICAgICAgICdXRUIgUmVndWxhciBCb2xkJywgc2Fucy1zZXJpZjtcbiRiYXNlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgJGZvbnQtcHJpbWFyeTtcbiRoMS1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgMzVweDtcbiRoMS1zaXplLW1lZGl1bTogICAgICAgICAgICAgICAgNDhweDtcbiRoMS1zaXplLWxhcmdlOiAgICAgICAgICAgICAgICAgNjBweDtcbiRoMS1zaXplLW1lZGl1bS1sYXJnZTogICAgICAgICAgNjBweDtcbiRoMS1zaXplLWxhcmdlLWxhcmdlOiAgICAgICAgICAgODBweDtcbiRoMi1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgMzBweDtcbiRoMi1zaXplLW1lZGl1bTogICAgICAgICAgICAgICAgMzZweDtcbiRoMi1zaXplLWxhcmdlOiAgICAgICAgICAgICAgICAgNDhweDtcbiRoMy1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgMjZweDtcbiRoMy1zaXplLW1lZGl1bTogICAgICAgICAgICAgICAgMzJweDtcbiRoMy1zaXplLWxhcmdlOiAgICAgICAgICAgICAgICAgMzZweDtcbiRoNC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgMjBweDtcbiRoNC1zaXplLW1lZGl1bTogICAgICAgICAgICAgICAgMjJweDtcbiRoNC1zaXplLWxhcmdlOiAgICAgICAgICAgICAgICAgMjRweDtcbiRoNS1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgMThweDtcbiRoNi1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgMTRweDtcbiRxdW90ZS1zaXplOiAgICAgICAgICAgICAgICAgICAgMThweDtcbiRxdW90ZS1zaXplLW1lZGl1bTogICAgICAgICAgICAgMjJweDtcbiRxdW90ZS1zaXplLWxhcmdlOiAgICAgICAgICAgICAgMjZweDtcblxuLy8gVFJBTlNJVElPTlNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRlYXNpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMCwgMSk7XG4kdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgICAgIDAuNXM7XG4kdHJhbnNpdGlvbi1hbGw6ICAgICAgICAgICAgICAgIGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkZWFzaW5nO1xuJHRyYW5zaXRpb24tY29sb3I6ICAgICAgICAgICAgICBjb2xvciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkZWFzaW5nO1xuJHRyYW5zaXRpb24tYmFja2dyb3VuZDogICAgICAgICBiYWNrZ3JvdW5kICR0cmFuc2l0aW9uLWR1cmF0aW9uICRlYXNpbmc7XG4kdHJhbnNpdGlvbi1ib3JkZXI6ICAgICAgICAgICAgIGJvcmRlciAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkZWFzaW5nO1xuJHRyYW5zaXRpb24tb3BhY2l0eTogICAgICAgICAgICBvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uICRlYXNpbmc7XG4kdHJhbnNpdGlvbi10cmFuc2Zvcm06ICAgICAgICAgIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkZWFzaW5nO1xuJHRyYW5zaXRpb24tZmlsbDogICAgICAgICAgICAgICBmaWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uICRlYXNpbmc7XG5cbi8vIEZPUk1TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmllbGQtYm9yZGVyLXNpemU6ICAgICAgICAgICAgIDFweDtcbiRmaWVsZC1ib3JkZXItY29sb3VyOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGZpZWxkLWRpc2FibGVkLWNvbG91cjogICAgICAgICByZ2JhKCRibGFjaywgMC4xKTtcbiRmaWVsZC1ib3JkZXItY29sb3VyLWhvdmVyOiAgICAgcmdiYSgkYmxhY2ssIDAuNSk7XG4kZmllbGQtYmFja2dyb3VuZC1jb2xvdXI6ICAgICAgICR3aGl0ZTtcbiRmaWVsZC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgKCRncmlkICogMykgKCRncmlkICogMik7XG4kZmllbGQtYm9yZGVyLXJhZGl1czogICAgICAgICAgIDNweDtcbiRmaWVsZC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAgJHByaW1hcnk7XG4kZmllbGQtZm9jdXMtc2hhZG93OiAgICAgICAgICAgIG5vbmU7XG4kZmllbGQtcGxhY2Vob2xkZXItY29sb3VyOiAgICAgIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRmaWVsZC1ib3JkZXItc3VjY2VzczogICAgICAgICAgJGFjY2VudDE7XG4kY2hlY2tib3gtc2l6ZTogICAgICAgICAgICAgICAgIDIwcHg7XG4kY2hlY2tib3gtYm9yZGVyLXNpemU6ICAgICAgICAgIDJweDtcbiRjaGVja2JveC10aWNrLWNvbG91cjogICAgICAgICAgJHdoaXRlO1xuJGNoZWNrYm94LWNoZWNrZWQtY29sb3VyOiAgICAgICAkcHJpbWFyeTtcbiRyYWRpby1zaXplOiAgICAgICAgICAgICAgICAgICAgMjBweDtcbiRyYWRpby1ib3JkZXItc2l6ZTogICAgICAgICAgICAgMnB4O1xuJHJhZGlvLWNoZWNrZWQtY29sb3VyOiAgICAgICAgICAkcHJpbWFyeTtcblxuLy8gQlVUVE9OU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbi1zb2Z0LWJvcmRlci1yYWRpdXM6ICAgICAzcHg7XG4kYnV0dG9uLXNpemUtaWNvbjogICAgICAgICAgICAgIDM2cHg7XG4kYnV0dG9uLXNpemUtaWNvbi1sYXJnZTogICAgICAgIDcwcHg7XG5cbi8vIE1BU0tTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWFzay1wcmltYXJ5OiAgICAgICAgICAgICAgICAgICR3aGl0ZTtcbiRtYXNrLXNlY29uZGFyeTogICAgICAgICAgICAgICAgI2Y2ZjZmNjtcblxuLy8gWi1pbmRleGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLXo6ICAgICAgICAgICAgICAgICAgICAgIDk7XG4kcHVsbG91dC16OiAgICAgICAgICAgICAgICAgICAgIDEwO1xuXG4vLyBOQVZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRuYXYtcGFkZGluZy1zbWFsbDogICAgICAgICAgICAgMTAwcHg7XG4kbmF2LXBhZGRpbmctbGFyZ2U6ICAgICAgICAgICAgIDIwMHB4O1xuJG5hdi10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAwLjY1cztcbiRuYXYtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgJGNoYXJjb2FsO1xuJGhhbWJ1cmdlci1zaXplOiAgICAgICAgICAgICAgICAzMHB4O1xuJGhhbWJ1cmdlci1jb2xvdXI6ICAgICAgICAgICAgICAkY2hhcmNvYWw7XG4kaGFtYnVyZ2VyLWJvcmRlci1zaXplOiAgICAgICAgIDNweDtcbiRoYW1idXJnZXItZXhwYW5kLWNvbG91cjogICAgICAgJGNoYXJjb2FsO1xuJGhhbWJ1cmdlci1saWdodC1jb2xvdXI6ICAgICAgICAkd2hpdGU7XG5cbi8vIFNFQVJDSFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHNlYXJjaC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAwLjVzO1xuJHNlYXJjaC1wYWRkaW5nLXNtYWxsOiAgICAgICAgICA1MHB4O1xuJHNlYXJjaC1wYWRkaW5nLWxhcmdlOiAgICAgICAgICAxNTBweDtcblxuLy8gQ0FSRFNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRzaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAwIDI0cHggMCByZ2JhKDEyLCAwLCA1MSwgMC4yKTtcblxuLy8gSEVBREVSXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWhlaWdodC1zbWFsbDogICAgICAgICAgIDcwcHg7XG4kaGVhZGVyLWhlaWdodC1sYXJnZTogICAgICAgICAgIDEwMHB4O1xuXG4vLyBTUEVBSyBUTyBBTiBFWFBFUlRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRzcGVhay10by1hbi1leHBlcnQtaGVpZ2h0OiAgICAgODAwcHg7XG4kc3BlYWstdG8tYW4tZXhwZXJ0LWNvbnRhaW5lcjogIDMzMHB4O1xuXG4vLyBGT09URVJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmb290ZXItc21hbGw6ICAgICAgICAgICAgICAgICAgMzUwcHg7XG4kZm9vdGVyLWxhcmdlOiAgICAgICAgICAgICAgICAgIDMwMHB4O1xuXG4vLyBSRVNQT05TSVZFXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKipcbiAqIEBudWNsaWRlIG1xLWJyZWFrcG9pbnRzXG4gKiBAc2VjdGlvbiBDb25maWcgPiBNZWRpYSBRdWVyaWVzXG4gKi9cbiRtcS1icmVha3BvaW50czogKFxuICAgICd4cyc6IDQ4MHB4LFxuICAgICdzbSc6IDc2OHB4LFxuICAgICdtZCc6IDk5MnB4LFxuICAgICdsZyc6IDEyMDBweCxcbiAgICAneGxnJzogMTYwMHB4LFxuKTtcbkBpbmNsdWRlIG1xLWFkZC1icmVha3BvaW50KGlwaG9uZTZwbHVzLCA0MDBweCk7XG5AaW5jbHVkZSBtcS1hZGQtYnJlYWtwb2ludChuYXZ2ZXJ0aWNhbCwgODIwcHgpO1xuIiwiaHRtbCxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgICBsaW5lLWhlaWdodDogJGJhc2UtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi8vIFNlbGVjdGlvblxuOjotbW96LXNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGJhc2Utc2VsZWN0LWJnLWNvbG9yO1xuICAgIGNvbG9yOiAkYmFzZS1zZWxlY3QtY29sb3I7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG46OnNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGJhc2Utc2VsZWN0LWJnLWNvbG9yO1xuICAgIGNvbG9yOiAkYmFzZS1zZWxlY3QtY29sb3I7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vIFN0YW5kYXJkaXNlIG1hcmdpbnNcbmgxLFxuLmgxLFxuaDIsXG4uaDIsXG5oMyxcbi5oMyxcbmg0LFxuLmg0LFxuaDUsXG4uaDUsXG5oNixcbi5oNiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oJGJhc2UtbWFyZ2luKTtcbn1cblxuLyoqXG4gKiBAYXRvbSBQYXJhZ3JhcGhcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHlcbiAqIEBtYXJrdXBcbiAqICA8cD5Ae2xpcHN1bToxOnBhcmFncmFwaHN9PC9wPlxuICogIDxwPkB7bGlwc3VtOjE6cGFyYWdyYXBoc308L3A+XG4gKiAgPHA+QHtsaXBzdW06MTpwYXJhZ3JhcGhzfTwvcD5cbiAqL1xucCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oJGJhc2UtbWFyZ2luKTtcbn1cblxuLyoqXG4gKiBAYXRvbSBIZWFkaW5nc1xuICogQHNlY3Rpb24gVHlwb2dyYXBoeVxuICogQG1hcmt1cFxuICogIDxoMT5IZWFkaW5nIDE8L2gxPlxuICogIDxoMSBjbGFzcz1cImgxLS1sYXJnZT5IZWFkaW5nIDEgbGFyZ2U8L2gxPlxuICogIDxoMj5IZWFkaW5nIDI8L2gyPlxuICogIDxoMz5IZWFkaW5nIDM8L2gzPlxuICogIDxoND5IZWFkaW5nIDQ8L2g0PlxuICogIDxoNT5IZWFkaW5nIDU8L2g1PlxuICogIDxoNj5IZWFkaW5nIDY8L2g2PlxuICovXG5oMSxcbi5oMSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeS1ib2xkO1xuICAgIGZvbnQtc2l6ZTogcmVtKCRoMS1zaXplKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTEuNXB4O1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKCRoMS1zaXplLW1lZGl1bSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICBmb250LXNpemU6IHJlbSgkaDEtc2l6ZS1sYXJnZSk7XG4gICAgfVxuXG4gICAgJi0teGxhcmdlIHtcbiAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oJGgxLXNpemUtbGFyZ2UtbGFyZ2UpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICAgICAgZm9udC1zaXplOiA5cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IHJlbSgkaDEtc2l6ZS1sYXJnZSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgkaDEtc2l6ZS1tZWRpdW0tbGFyZ2UpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oJGgxLXNpemUtbGFyZ2UtbGFyZ2UpO1xuICAgICAgICB9XG4gICAgfVxufVxuaDIsXG4uaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiByZW0oJGgyLXNpemUpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTY3O1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKCRoMi1zaXplLW1lZGl1bSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICBmb250LXNpemU6IHJlbSgkaDItc2l6ZS1sYXJnZSk7XG4gICAgfVxuXG4gICAgJi5ib2xkLFxuICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnktYm9sZDtcbiAgICB9XG5cbiAgICAvLyBJbnNpZGUgdGV4dCByb3dzXG4gICAgLnRleHQtcm93LS0xIC50ZXh0ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oNTBweCk7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgICsgaDMsXG4gICAgICAgICsgLmgzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgtMTVweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5oMyxcbi5oMyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IHJlbSgkaDMtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKCRoMy1zaXplLW1lZGl1bSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICBmb250LXNpemU6IHJlbSgkaDMtc2l6ZS1sYXJnZSk7XG4gICAgfVxuXG4gICAgJi5ib2xkLFxuICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnktYm9sZDtcbiAgICB9XG5cbiAgICAvLyBJbnNpZGUgdGV4dCByb3dzXG4gICAgLnRleHQtcm93LS0xIC50ZXh0ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oNTBweCk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnktYm9sZDtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgKyBoNCxcbiAgICAgICAgKyAuaDQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKC0xNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmg0LFxuLmg0IHtcbiAgICBmb250LXNpemU6IHJlbSgkaDQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgkaDQtc2l6ZS1tZWRpdW0pO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oJGg0LXNpemUtbGFyZ2UpO1xuICAgIH1cbiAgICBcbiAgICAvLyBJbnNpZGUgdGV4dCByb3dzXG4gICAgLnRleHQtcm93LS0xIC50ZXh0ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oNTBweCk7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuaDUsXG4uaDUge1xuICAgIGZvbnQtc2l6ZTogcmVtKCRoNS1zaXplKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xufVxuaDYsXG4uaDYge1xuICAgIGZvbnQtc2l6ZTogcmVtKCRoNi1zaXplKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEBhdG9tIExpbmtzXG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5XG4gKiBAbWFya3VwXG4gKiAgPGEgaHJlZj1cIlwiPkxpbms8L2E+XG4gKi9cbmEge1xuICAgIEBpbmNsdWRlIGxpbms7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZbaHJlZio9XCJ0ZWw6XCJdIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogJGxpbmstdmlzaXRlZC1jb2xvcjtcbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gTGluayByZXNldFxuICogQHNlY3Rpb24gVHlwb2dyYXBoeVxuICogQG1hcmt1cFxuICogIDxhIGhyZWY9XCJcIiBjbGFzcz1cImxpbmstcmVzZXRcIj5MaW5rPC9hPlxuICovXG4ubGluay1yZXNldCB7XG4gICAgQGluY2x1ZGUgbGluay1yZXNldChub25lKTtcbn1cblxuLyoqXG4gKiBAYXRvbSBRdW90ZXNcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHlcbiAqIEBtYXJrdXBcbiAqICA8YmxvY2txdW90ZT48cD5UaGlzIGlzIGEgcXVvdGU8L3A+PGNpdGU+PHN0cm9uZz5QaGlsIEJseXRoZTwvc3Ryb25nPjxicj5HcmVlbnN5bmMgRm91bmRlcjwvY2l0ZT48L2Jsb2NrcXVvdGU+XG4gKi9cbmJsb2NrcXVvdGUge1xuICAgIGZvbnQtc2l6ZTogcmVtKCRxdW90ZS1zaXplKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICBtYXJnaW46IHJlbSgkZ3JpZCAqIDUpIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKCRxdW90ZS1zaXplLW1lZGl1bSk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgkZ3JpZCAqIDgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oJGdyaWQgKiA4KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKCRxdW90ZS1zaXplLWxhcmdlKTtcbiAgICB9XG5cbiAgICAuYXJ0aWNsZSAmIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBvZmZzZXQtLXNpZGVzKDclKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9mZnNldC0tc2lkZXMoMTUlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNpdGUge1xuICAgICAgICBjb2xvcjogJGJhc2UtZm9udC1jb2xvcjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKCRncmlkICogMik7XG4gICAgfVxufVxuXG5hYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6ICRiYXNlLWZvbnQtYm9sZC13ZWlnaHQ7XG59XG5cbmksXG5lbSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogQGF0b20gLnRleHQtY2VudGVyXG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5ID4gSGVscGVyc1xuICogQGRlc2NyaXB0aW9uXG4gKiAgVGV4dCBhbGlnbiBlbGVtZW50IGNlbnRlclxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIj5Db250ZW50PC9kaXY+XG4gKi9cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKipcbiAqIEBhdG9tIC50ZXh0LWxlZnRcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHkgPiBIZWxwZXJzXG4gKiBAZGVzY3JpcHRpb25cbiAqICBUZXh0IGFsaWduIGVsZW1lbnQgbGVmdFxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwidGV4dC1sZWZ0XCI+Q29udGVudDwvZGl2PlxuICovXG4udGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vKipcbiAqIEBhdG9tIC50ZXh0LXJpZ2h0XG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5ID4gSGVscGVyc1xuICogQGRlc2NyaXB0aW9uXG4gKiAgVGV4dCBhbGlnbiBlbGVtZW50IHJpZ2h0XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXJpZ2h0XCI+Q29udGVudDwvZGl2PlxuICovXG4udGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi8qKlxuICogQGF0b20gLnRleHQtbm9ybWFsXG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5ID4gSGVscGVyc1xuICogQGRlc2NyaXB0aW9uXG4gKiAgVGV4dCB0cmFuc2Zvcm0gbm9uZVxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwidGV4dC1ub3JtYWxcIj5Db250ZW50PC9kaXY+XG4gKi9cbi50ZXh0LW5vcm1hbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQGF0b20gLmJhc2VcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHkgPiBIZWxwZXJzXG4gKiBAZGVzY3JpcHRpb25cbiAqICBCYXNlIGNvbG91clxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiYmFzZVwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmJhc2UsXG5hLmJhc2U6dmlzaXRlZCxcbmEuYmFzZTpob3ZlcixcbmEuYmFzZTpmb2N1cyB7XG4gICAgY29sb3I6ICRjaGFyY29hbDtcbn1cblxuLyoqXG4gKiBAYXRvbSAubGlnaHRcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHkgPiBIZWxwZXJzXG4gKiBAZGVzY3JpcHRpb25cbiAqICBMaWdodCBjb2xvdXJcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cImxpZ2h0XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOiAjNjY2O1wiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmxpZ2h0LFxuYS5saWdodDp2aXNpdGVkLFxuYS5saWdodDpob3ZlcixcbmEubGlnaHQ6Zm9jdXMge1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbi8qKlxuICogQGF0b20gLmZhaW50XG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5ID4gSGVscGVyc1xuICogQGRlc2NyaXB0aW9uXG4gKiAgNTAlIG9wYXF1ZSB3aGl0ZSB0ZXh0XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJmYWludFwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmZhaW50LFxuYS5mYWludDp2aXNpdGVkLFxuYS5mYWludDpob3ZlcixcbmEuZmFpbnQ6Zm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC41KTtcbn1cblxuLyoqXG4gKiBAYXRvbSAuZ3JleVxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIDUwJSBvcGFxdWUgd2hpdGUgdGV4dFxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiZ3JleVwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmdyZXksXG5hLmdyZXk6dmlzaXRlZCxcbmEuZ3JleTpob3ZlcixcbmEuZ3JleTpmb2N1cyB7XG4gICAgY29sb3I6IHJnYmEoJGJsYWNrLCAwLjQpO1xufVxuXG4vKipcbiAqIEBhdG9tIC5kYXJrXG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5ID4gSGVscGVyc1xuICogQGRlc2NyaXB0aW9uXG4gKiAgRGFyayBjb2xvdXJcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cImRhcmtcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5kYXJrLFxuYS5kYXJrOnZpc2l0ZWQsXG5hLmRhcms6aG92ZXIsXG5hLmRhcms6Zm9jdXMge1xuICAgIGNvbG9yOiAkYmxhY2s7XG59XG5cbi8qKlxuICogQGF0b20gLnByaW1hcnlcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHkgPiBIZWxwZXJzXG4gKiBAZGVzY3JpcHRpb25cbiAqICBQcmltYXJ5IGNvbG91clxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwicHJpbWFyeVwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLnByaW1hcnksXG5hLnByaW1hcnk6dmlzaXRlZCxcbmEucHJpbWFyeTpob3ZlcixcbmEucHJpbWFyeTpmb2N1cyB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG59XG5cbi8qKlxuICogQGF0b20gLnNlY29uZGFyeVxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIFNlY29uZGFyeSBjb2xvdXJcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cInNlY29uZGFyeVwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLnNlY29uZGFyeSxcbmEuc2Vjb25kYXJ5OnZpc2l0ZWQsXG5hLnNlY29uZGFyeTpob3ZlcixcbmEuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBjb2xvcjogJHNlY29uZGFyeTtcbn1cblxuLyoqXG4gKiBAYXRvbSAudGVydGlhcnlcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHkgPiBIZWxwZXJzXG4gKiBAZGVzY3JpcHRpb25cbiAqICBUZXJ0aWFyeSBjb2xvdXJcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cInRlcnRpYXJ5XCI+Q29udGVudDwvZGl2PlxuICovXG4udGVydGlhcnksXG5hLnRlcnRpYXJ5OnZpc2l0ZWQsXG5hLnRlcnRpYXJ5OmhvdmVyLFxuYS50ZXJ0aWFyeTpmb2N1cyB7XG4gICAgY29sb3I6ICR0ZXJ0aWFyeTtcbn1cblxuLyoqXG4gKiBAYXRvbSAuYWNjZW50MVxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIEFjY2VudDEgY29sb3VyXG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJhY2NlbnQxXCI+Q29udGVudDwvZGl2PlxuICovXG4uYWNjZW50MSxcbmEuYWNjZW50MTp2aXNpdGVkLFxuYS5hY2NlbnQxOmhvdmVyLFxuYS5hY2NlbnQxOmZvY3VzIHtcbiAgICBjb2xvcjogJGFjY2VudDE7XG59XG5cbi8qKlxuICogQGF0b20gLmFjY2VudDJcbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHkgPiBIZWxwZXJzXG4gKiBAZGVzY3JpcHRpb25cbiAqICBBY2NlbnQyIGNvbG91clxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiYWNjZW50MlwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmFjY2VudDIsXG5hLmFjY2VudDI6dmlzaXRlZCxcbmEuYWNjZW50Mjpob3ZlcixcbmEuYWNjZW50Mjpmb2N1cyB7XG4gICAgY29sb3I6ICRhY2NlbnQyO1xufVxuXG4vKipcbiAqIEBhdG9tIC5hY2NlbnQzXG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5ID4gSGVscGVyc1xuICogQGRlc2NyaXB0aW9uXG4gKiAgQWNjZW50MyBjb2xvdXJcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cImFjY2VudDNcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5hY2NlbnQzLFxuYS5hY2NlbnQzOnZpc2l0ZWQsXG5hLmFjY2VudDM6aG92ZXIsXG5hLmFjY2VudDM6Zm9jdXMge1xuICAgIGNvbG9yOiAkYWNjZW50Mztcbn1cblxuLyoqXG4gKiBAYXRvbSAuZGV4LWxpZ2h0XG4gKiBAc2VjdGlvbiBUeXBvZ3JhcGh5ID4gSGVscGVyc1xuICogQGRlc2NyaXB0aW9uXG4gKiAgZGV4LWxpZ2h0IGNvbG91clxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiZGV4LWxpZ2h0XCI+Q29udGVudDwvZGl2PlxuICovXG4uZGV4LWxpZ2h0LFxuYS5kZXgtbGlnaHQ6dmlzaXRlZCxcbmEuZGV4LWxpZ2h0OmhvdmVyLFxuYS5kZXgtbGlnaHQ6Zm9jdXMge1xuICAgIGNvbG9yOiAkZGV4LWxpZ2h0O1xufVxuXG4vKipcbiAqIEBhdG9tIC5lcnJvclxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIEVycm9yIGNvbG91clxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiZXJyb3JcIj5FcnJvciBjb250ZW50PC9kaXY+XG4gKi9cbi5lcnJvciB7XG4gICAgY29sb3I6ICRlcnJvcjtcblxuICAgIFtjbGFzcyo9XCJpY29uLVwiXSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDNweCk7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBmaWxsOiAkZXJyb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gQ2FwdGlvblxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIENhcHRpb24gc3R5bGVcbiAqIEBtb2RpZmllcnNcbiAqICAuY2FwdGlvbi0tc21hbGwgMTJweCBmb250IHNpemVcbiAqICAuY2FwdGlvbi0tbGFyZ2UgMThweCBmb250IHNpemVcbiAqIEBtYXJrdXBcbiAqICA8aDMgY2xhc3M9XCJjYXB0aW9uXCI+Q2FwdGlvbiB0ZXh0PC9oMz5cbiAqL1xuLmNhcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE4cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LWJvbGQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDIycHgpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjZweCk7XG4gICAgfVxuXG4gICAgJi0tc21hbGwge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICB9XG4gICAgJi0tbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IHJlbSgzMnB4KTtcbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gQm9sZFxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIEJvbGQgZm9udCB3ZWlnaHRcbiAqIEBtYXJrdXBcbiAqICA8aDMgY2xhc3M9XCJib2xkXCI+Qm9sZCB0ZXh0PC9oMz5cbiAqL1xuLmJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIEBhdG9tIE5vcm1hbFxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIE5vcm1hbCBmb250IHdlaWdodFxuICogQG1hcmt1cFxuICogIDxoMyBjbGFzcz1cIm5vcm1hbFwiPk5vcm1hbCB0ZXh0PC9oMz5cbiAqL1xuLm5vcm1hbCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBAYXRvbSBTbWFsbFxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBkZXNjcmlwdGlvblxuICogIFNtYWxsIGZvbnQgLSAxNHB4XG4gKiBAbWFya3VwXG4gKiAgPGgzIGNsYXNzPVwic21hbGxcIj5TbWFsbCB0ZXh0PC9oMz5cbiAqL1xuLnNtYWxsIHtcbiAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbn1cblxuLyoqXG4gKiBAYXRvbSBNZWRpdW1cbiAqIEBzZWN0aW9uIFR5cG9ncmFwaHkgPiBIZWxwZXJzXG4gKiBAZGVzY3JpcHRpb25cbiAqICBNZWRpdW0gZm9udCAtIDE2cHhcbiAqIEBtYXJrdXBcbiAqICA8aDMgY2xhc3M9XCJtZWRpdW1cIj5NZWRpdW0gdGV4dDwvaDM+XG4gKi9cbi5tZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2cHgpO1xufVxuXG4vKipcbiAqIEBhdG9tIERyb3AgbGluZVxuICogQHNlY3Rpb24gVHlwb2dyYXBoeSA+IEhlbHBlcnNcbiAqIEBtYXJrdXBcbiAqICA8aDMgY2xhc3M9XCJkcm9wXCI+TWVkaXVtIHRleHQ8L2gzPlxuICovXG4uZHJvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogNCk7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkbygpO1xuICAgICAgICB3aWR0aDogcmVtKCRncmlkICogNSk7XG4gICAgICAgIGhlaWdodDogcmVtKCRncmlkIC8gMik7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi0tdG9wIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oMzBweCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgkZ3JpZCAqIDQpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDQ1cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oJGdyaWQgKiA2KTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKCRncmlkICogMTApO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oJGdyaWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tdG9wIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSg0NXB4KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgkZ3JpZCAqIDYpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAmLmgxIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzhweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIEBtaXhpbiBjZlxuICogQGRlc2NyaXB0aW9uIENsZWFyZml4XG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICBAaW5jbHVkZSBjZjtcbiAqL1xuQG1peGluIGNmIHtcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4vKipcbiAqIEBtaXhpbiB2aFxuICogQGRlc2NyaXB0aW9uIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW5yZWFkZXJzXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICBAaW5jbHVkZSB2aCgpO1xuICogIEBpbmNsdWRlIHZoKHRydWUpO1xuICovXG5AbWl4aW4gdmgoJGZvY3VzYWJsZTogZmFsc2UpIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIHdpZHRoOiAxcHg7XG5cbiAgICBAaWYgJGZvY3VzYWJsZSB7XG4gICAgICAgIEBpbmNsdWRlIHZoLWZvY3VzYWJsZTtcbiAgICB9XG59XG5cbi8qKlxuICogQG1peGluIHZoLXJlc2V0XG4gKiBAZGVzY3JpcHRpb24gUmVzZXQgdmlzdWFsbHkgaGlkZGVuIGVsZW1lbnQgdG8gYmUgdmlzaWJsZVxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgQGluY2x1ZGUgdmgtcmVzZXQ7XG4gKi9cbkBtaXhpbiB2aC1yZXNldCB7XG4gICAgY2xpcDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG59XG5cbi8qKlxuICogQG1peGluIHZoLWZvY3VzYWJsZVxuICogQGRlc2NyaXB0aW9uIEVuYWJsZSB2aXN1YWxseSBoaWRkZW4gZWxlbWVudCB0byBiZSBmb2N1c2FibGVcbiAqXG4gKiBAc2VjdGlvbiBIZWxwZXIgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogIEBpbmNsdWRlIHZoLWZvY3VzYWJsZTtcbiAqL1xuQG1peGluIHZoLWZvY3VzYWJsZSB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNsaXA6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4vKipcbiAqIEBtaXhpbiBpbnB1dC1wbGFjZWhvbGRlclxuICogQGRlc2NyaXB0aW9uICBGb3JtIGlucHV0IHBsYWNlaG9sZGVyIHRleHRcbiAqXG4gKiBAc2VjdGlvbiBGb3JtIE1peGluc1xuICogQGV4YW1wbGVcbiAqICBpbnB1dCxcbiAqICB0ZXh0YXJlYSB7XG4gKiAgICBAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlciB7XG4gKiAgICAgIGNvbG9yOiAkZ3JleTtcbiAqICAgIH1cbiAqICB9XG4gKi9cbkBtaXhpbiBpbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgJi5wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICAgJjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG59XG5cbi8qKlxuICogQG1peGluIGlucHV0LXJlc2V0XG4gKiBAZGVzY3JpcHRpb24gUmVzZXQgaW5wdXQgc3R5bGVzXG4gKlxuICogQHNlY3Rpb24gRm9ybSBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgaW5wdXQge1xuICogICAgQGluY2x1ZGUgaW5wdXQtcmVzZXQ7XG4gKiAgfVxuICovXG5AbWl4aW4gaW5wdXQtcmVzZXQge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBAbWl4aW4gZm9ybS1maWVsZHNcbiAqIEBkZXNjcmlwdGlvbiBDb21tb24gZm9ybSBmaWVsZCBzdHlsaW5nXG4gKlxuICogQHNlY3Rpb24gRm9ybSBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgaW5wdXQge1xuICogICAgQGluY2x1ZGUgZm9ybS1maWVsZHM7XG4gKiAgfVxuICovXG5AbWl4aW4gZm9ybS1maWVsZHMge1xuICAgIGJhY2tncm91bmQ6ICRmaWVsZC1iYWNrZ3JvdW5kLWNvbG91cjtcbiAgICBib3JkZXI6ICRmaWVsZC1ib3JkZXItc2l6ZSBzb2xpZCAkZmllbGQtYm9yZGVyLWNvbG91cjtcbiAgICBwYWRkaW5nOiAkZmllbGQtcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkZmllbGQtYm9yZGVyLXJhZGl1cztcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ib3JkZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZmllbGQtYm9yZGVyLWNvbG91ci1ob3ZlcjtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGZpZWxkLWZvY3VzLWJvcmRlcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZpZWxkLWZvY3VzLXNoYWRvdztcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC1kaXNhYmxlZC1jb2xvdXI7XG4gICAgfVxuICAgICYuc3VjY2VzcyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGZpZWxkLWJvcmRlci1zdWNjZXNzO1xuICAgIH1cbiAgICAmLmVycm9yLFxuICAgIC5nZmllbGRfZXJyb3IgJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGVycm9yO1xuICAgIH1cbiAgICAmLS1kYXJrIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4yKTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjUpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4zKTtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMyk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAkZmllbGQtZm9jdXMtc2hhZG93O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBAbWl4aW4gcmV0aW5hXG4gKiBAZGVzY3JpcHRpb24gUmV0aW5hIGltYWdlc1xuICpcbiAqIEBzZWN0aW9uIEltYWdlIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSByZXRpbmEge1xuICogXHQgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvYmFja2dyb3VuZEAyeC5wbmcpO1xuICogXHQgICB9XG4gKiAgIH1cbiAqL1xuQG1peGluIHJldGluYSB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpLFxuICAgICAgICBvbmx5IHNjcmVlbiBhbmQgKC1tb3otbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSxcbiAgICAgICAgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzIC8gMiksXG4gICAgICAgIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDEuNWRwcHgpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vKipcbiAqIEBtaXhpbiBjc3MtdHJpYW5nbGVcbiAqIEBkZXNjcmlwdGlvbiBDU1MgVHJpYW5nbGVcbiAqXG4gKiBAcGFyYW0gJGNvbG9yIENvbG91ciBvZiB0aGUgdHJpYW5nbGVcbiAqIEBwYXJhbSAkZGlyZWN0aW9uIERpcmVjdGlvbiB0cmlhbmdsZSBzaG91bGQgcG9pbnQgZS5nLiB1cCwgZG93biwgbGVmdCwgcmlnaHRcbiAqIEBwYXJhbSAkc2l6ZSBTaXplIG9mIHRyaWFuZ2xlIGUuZy4gMTBweFxuICogQHBhcmFtICRwb3NpdGlvbiBQb3NpdGlvbmluZyBvZiB0cmlhbmdsZSBlLmcuIGFic29sdXRlLCByZWxhdGl2ZVxuICogQHBhcmFtICRyb3VuZCBBZGQgYm9yZGVyIHJhZGl1cz8gZS5nLiB0cnVlLCBmYWxzZVxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgJjo6YmVmb3JlIHtcbiAqICAgICAgIGluY2x1ZGUgY3NzLXRyaWFuZ2xlKGJsdWUsIGRvd24pO1xuICogXHQgICB9XG4gKiAgfVxuICovXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKCRjb2xvciwgJGRpcmVjdGlvbiwgJHNpemU6IDZweCwgJHBvc2l0aW9uOiBhYnNvbHV0ZSwgJHJvdW5kOiBmYWxzZSkge1xuICAgIEBpbmNsdWRlIHBzZXVkbygkcG9zOiAkcG9zaXRpb24pO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcblxuICAgIEBpZiAkcm91bmQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogJHNpemUgc29saWQgJGNvbG9yO1xuICAgICAgICBtYXJnaW4tdG9wOiAwIC0gcm91bmQoJHNpemUgLyAyLjUpO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJHNpemUgc29saWQgJGNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwIC0gcm91bmQoJHNpemUgLyAyLjUpO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIGJvcmRlci10b3A6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkICRjb2xvcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJHNpemU7XG4gICAgfSBAZWxzZSBpZiAgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICAgYm9yZGVyLXRvcDogJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkICRjb2xvcjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kc2l6ZTtcbiAgICB9XG59XG5cbi8qKlxuICogQG1peGluIGNzcy1hcnJvd1xuICogQGRlc2NyaXB0aW9uIENTUyBBcnJvd1xuICpcbiAqIEBwYXJhbSAkY29sb3IgQ29sb3VyIG9mIHRoZSB0cmlhbmdsZVxuICogQHBhcmFtICRkaXJlY3Rpb24gRGlyZWN0aW9uIHRyaWFuZ2xlIHNob3VsZCBwb2ludCBlLmcuIHVwLCBkb3duLCBsZWZ0LCByaWdodFxuICogQHBhcmFtICRzaXplIFNpemUgb2YgdHJpYW5nbGUgZS5nLiAxMHB4XG4gKiBAcGFyYW0gJHBvc2l0aW9uIFBvc2l0aW9uaW5nIG9mIHRyaWFuZ2xlIGUuZy4gYWJzb2x1dGUsIHJlbGF0aXZlXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICAmOjpiZWZvcmUge1xuICogICAgICAgaW5jbHVkZSBjc3MtYXJyb3coYmx1ZSwgZG93bik7XG4gKiBcdCAgIH1cbiAqICB9XG4gKi9cbkBtaXhpbiBjc3MtYXJyb3coJGNvbG9yLCAkZGlyZWN0aW9uLCAkc2l6ZTogNnB4LCAkcG9zaXRpb246IGFic29sdXRlKSB7XG4gICAgQGluY2x1ZGUgcHNldWRvKCRwb3M6ICRwb3NpdGlvbik7XG4gICAgd2lkdGg6IHJlbSgkc2l6ZSk7XG4gICAgaGVpZ2h0OiByZW0oJHNpemUpO1xuICAgIGJvcmRlci1sZWZ0OiByZW0oJHNpemUgKiAwLjMpIHNvbGlkICRjb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiByZW0oJHNpemUgKiAwLjMpIHNvbGlkICRjb2xvcjtcbiAgICBtYXJnaW4tdG9wOiByZW0oLSRzaXplIC8gMik7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgIH0gQGVsc2UgaWYgICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG59XG5cbi8qKlxuICogQG1peGluIHJlc3BvbnNpdmUtcmF0aW9cbiAqIEBkZXNjcmlwdGlvbiBSZXNwb25zaXZlIHJhdGlvXG4gKlxuICogQHBhcmFtICR4IFdpZHRoXG4gKiBAcGFyYW0gJHkgSGVpZ2h0XG4gKiBAcGFyYW0gJHBzZXVkbyBVc2UgcHNldWRvIGVsZW1lbnQ/XG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSByZXNwb25zaXZlLXJhdGlvKDQwMCwgMzAwKTtcbiAqICB9XG4gKi9cbkBtaXhpbiByZXNwb25zaXZlLXJhdGlvKCR4LCR5LCAkcHNldWRvOiBmYWxzZSkge1xuICAgICRwYWRkaW5nOiB1bnF1b3RlKCgkeSAvICR4ICkgKiAxMDAgKyAnJScpO1xuXG4gICAgQGlmICRwc2V1ZG8ge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCRwb3M6IHJlbGF0aXZlKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICAgICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgICB9XG59XG5cbi8qKlxuICogQG1peGluIGFsaWduXG4gKiBAZGVzY3JpcHRpb24gQ2VudGVyIGFsaWdubWVudCBoZWxwZXJcbiAqXG4gKiBAcGFyYW0gJHZlcnRpY2FsIENlbnRlciB2ZXJ0aWNhbGx5P1xuICogQHBhcmFtICRob3Jpem9udGFsIENlbnRlciBob3Jpem9udGFsbHk/XG4gKiBAcGFyYW0gJHBvc2l0aW9uIFVzZSBhYnNvbHV0ZSBvciByZWxhdGl2ZSBwb3NpdGlvbmluZ1xuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgYWxpZ24odHJ1ZSwgdHJ1ZSwgYWJzb2x1dGUpO1xuICogIH1cbiAqL1xuQG1peGluIGFsaWduKCR2ZXJ0aWNhbDogdHJ1ZSwgJGhvcml6b250YWw6IGZhbHNlLCAkcG9zaXRpb246IHJlbGF0aXZlKSB7XG4gICAgQGlmICRwb3NpdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gICAgfVxuICAgIEBpZiAkdmVydGljYWwge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICB9XG4gICAgQGlmICRob3Jpem9udGFsIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgIH1cblxuICAgIEBpZiAkdmVydGljYWwgYW5kICRob3Jpem9udGFsIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfSBAZWxzZSBpZiAkdmVydGljYWwge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG59XG5cbi8qKlxuICogQG1peGluIGhhcmR3YXJlXG4gKiBAZGVzY3JpcHRpb24gSGFyZHdhcmUgYWNjZWxlcmF0aW9uXG4gKlxuICogQHBhcmFtICRiYWNrZmFjZSBVc2UgYmFja2ZhY2UgdmlzaWJpbGl0eT9cbiAqIEBwYXJhbSAkcGVyc3BlY3RpdmVcbiAqXG4gKiBAc2VjdGlvbiBIZWxwZXIgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIGhhcmR3YXJlKHRydWUpO1xuICogIH1cbiAqL1xuQG1peGluIGhhcmR3YXJlKCRiYWNrZmFjZTogdHJ1ZSwgJHBlcnNwZWN0aXZlOiAxMDAwKSB7XG4gICAgQGlmICRiYWNrZmFjZSB7XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuXG4vKipcbiAqIEBtaXhpbiBwb3NcbiAqIEBkZXNjcmlwdGlvbiBQb3NpdGlvbiBoZWxwZXJcbiAqXG4gKiBAcGFyYW0gJHBvcyBBYnNvbHV0ZSwgcmVsYXRpdmUsIHN0YXRpY1xuICogQHBhcmFtICR0IFRvcCBwb3NpdGlvblxuICogQHBhcmFtICRyIFJpZ2h0IHBvc2l0aW9uXG4gKiBAcGFyYW0gJGIgQm90dG9tIHBvc2l0aW9uXG4gKiBAcGFyYW0gJGwgTGVmdCBwb3NpdGlvblxuICogQHBhcmFtICR6IFogcG9zaXRpb25cbiAqIEBwYXJhbSAkaGFyZHdhcmUgSGFyZHdhcmUgYWNjZWxlcmF0aW9uP1xuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCAwLCAwLCAwLCAwKTtcbiAqICB9XG4gKi9cbkBtaXhpbiBwb3MoJHBvcywgJHQsICRyLCAkYiwgJGwsICR6OiBmYWxzZSwgJGhhcmR3YXJlOiB0cnVlKSB7XG4gICAgQGlmICRwb3MgPT0gZml4ZWQgYW5kICRoYXJkd2FyZSB7IEBpbmNsdWRlIGhhcmR3YXJlOyB9XG4gICAgQGlmICRwb3MgeyBwb3NpdGlvbjogJHBvczsgfVxuICAgIEBpZiAkdCB7IHRvcDogJHQ7IH1cbiAgICBAaWYgJHIgeyByaWdodDogJHI7IH1cbiAgICBAaWYgJGIgeyBib3R0b206ICRiOyB9XG4gICAgQGlmICRsIHsgbGVmdDogJGw7IH1cbiAgICBAaWYgJHogeyB6LWluZGV4OiAkejsgfVxufVxuXG4vKipcbiAqIEBtaXhpbiBwc2V1ZG9cbiAqIEBkZXNjcmlwdGlvbiBQc2V1ZG8gZWxlbWVudHMgaGVscGVyXG4gKlxuICogQHBhcmFtICRkaXNwbGF5IEJsb2NrLCBpbmxpbmUtYmxvY2ssIGlubGluZSwgZmxleFxuICogQHBhcmFtICRwb3MgQWJzb2x1dGUsIHJlbGF0aXZlLCBzdGF0aWNcbiAqIEBwYXJhbSAkY29udGVudCBDb250ZW50IHRvIHBvcHVsYXRlIHBzZXVkbyBlbGVtZW50XG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBwc2V1ZG8oKTtcbiAqICB9XG4gKi9cbkBtaXhpbiBwc2V1ZG8oJGRpc3BsYXk6IGJsb2NrLCAkcG9zOiBhYnNvbHV0ZSwgJGNvbnRlbnQ6ICcnKSB7XG4gICAgY29udGVudDogJGNvbnRlbnQ7XG4gICAgZGlzcGxheTogJGRpc3BsYXk7XG4gICAgcG9zaXRpb246ICRwb3M7XG59XG5cbi8qKlxuICogQG1peGluIHRydW5jYXRlXG4gKiBAZGVzY3JpcHRpb24gVHJ1bmNhdGUgdGV4dFxuICpcbiAqIEBwYXJhbSAkdHJ1bmNhdGlvbi1ib3VuZGFyeSBXaWR0aCBvZiB0cnVuY2F0ZWQgZWxlbWVudFxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgdHJ1bmNhdGUoMTAwcHgpO1xuICogIH1cbiAqL1xuQG1peGluIHRydW5jYXRlKCR0cnVuY2F0aW9uLWJvdW5kYXJ5KSB7XG4gICAgbWF4LXdpZHRoOiAkdHJ1bmNhdGlvbi1ib3VuZGFyeTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi8qKlxuICogQG1peGluIGZwXG4gKiBAZGVzY3JpcHRpb24gRmx1aWQgUHJvcGVydHkgaHR0cDovL3d3dy5hZHJlbmFsaW5tZWRpYS5jb20uYXUvdGhlLWFnZW5jeS9pbnNpZ2h0cy90aGlzLWNoYW5nZXMtZXZlcnl0aGluZy1jc3MtZmx1aWQtcHJvcGVydGllcy5hc3B4XG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqIEhUTUw6XG4gKiA8aDEgY2xhc3M9XCJlbGVtZW50XCI+XG4gKiBcdDxzcGFuPlRleHQgdG8gcmVwbGFjZTwvc3Bhbj5cbiAqIDwvaDE+XG4gKiBleGFtcGxlOlxuICogaDEge1xuICogXHRAaW5jbHVkZSBmcChmb250LXNpemUsIDUwLCAxMDApOyAgLy8gNTBweCBhdCAzMjAsIDEwMHB4IGF0IDE5MjA7XG4gKiB9XG4gKiBvdXRwdXQ6XG4gKiBoMSB7XG4gKiBcdGZvbnQtc2l6ZTogY2FsYygzLjEyNXZ3ICsgNDBweCk7IC8vVGhpcyBpcyB0aGUgbWFnaWMhXG4gKiB9XG4gKiAvL0BtZWRpYSAobWF4LXdpZHRoOjMyMHB4KXsgLy9DbGlwcyB0aGUgc3RhcnQgdG8gdGhlIG1pbiB2YWx1ZVxuICogLy9cdGZvbnQtc2l6ZTo1MHB4O1xuICogLy99XG4gKiAvL0BtZWRpYSAobWluLXdpZHRoOjE5MjBweCl7IC8vQ2xpcHMgdGhlIGVuZCB0byB0aGUgbWF4IHZhbHVlXG4gKiAvL1x0Zm9udC1zaXplOjEwMHB4O1xuICogLy99XG4gKi9cbkBtaXhpbiBmcCgkcHJvcGVydHksICRtaW4sICRtYXgsICRzdGFydDogMzIwLCAkZW5kOiBicmVha3BvaW50KCdkZXNrdG9wJyksICRjbGlwOiB0cnVlLCAkY2xpcEF0U3RhcnQ6IHRydWUsICRjbGlwQXRFbmQ6IHRydWUpIHtcbiAgICAkc3RhcnQ6ICRzdGFydCAvICgkc3RhcnQgKiAwICsgMSk7XG4gICAgJGVuZDogJGVuZCAvICgkZW5kICogMCArIDEpO1xuICAgICRtdWx0aXBsaWVyOiAoJG1heCAtICRtaW4pIC8gKCRlbmQgLSAkc3RhcnQpICogMTAwO1xuICAgICRhZGRlcjogKCRtaW4gKiAkZW5kIC0gJG1heCAqICRzdGFydCkgLyAoJGVuZCAtICRzdGFydCk7XG4gICAgJGZvcm11bGE6IGNhbGMoI3skbXVsdGlwbGllciArIDB2d30gKyAjeyRhZGRlciArIDBweH0pO1xuICAgIEBpZiAkY2xpcCBhbmQgJGNsaXBBdFN0YXJ0IHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JHN0YXJ0ICsgMHB4fSkge1xuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkbWluICsgMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpZiAkY2xpcCBhbmQgJGNsaXBBdEVuZCB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAjeyRlbmQgKyAwcHh9KSB7XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICRtYXggKyAwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgI3skcHJvcGVydHl9OiAkZm9ybXVsYTtcbn1cblxuLyoqXG4gKiBAbWl4aW4gcHVzaC0tZW5kc1xuICogQGRlc2NyaXB0aW9uIEFkZCBtYXJnaW4gdG9wICYgYm90dG9tXG4gKlxuICogQHBhcmFtICRzcGFjaW5nIFZhbHVlIHRvIGFkZFxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgcHVzaC0tZW5kcygxMDBweCk7XG4gKiAgfVxuICovXG5AbWl4aW4gcHVzaC0tZW5kcygkc3BhY2luZzogJHNwYWNpbmctdW5pdCkge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xufVxuXG4vKipcbiAqIEBtaXhpbiBwdXNoLS1zaWRlc1xuICogQGRlc2NyaXB0aW9uIEFkZCBtYXJnaW4gbGVmdCAmIHJpZ2h0XG4gKlxuICogQHBhcmFtICRzcGFjaW5nIFZhbHVlIHRvIGFkZFxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgcHVzaC0tc2lkZXMoMTAwcHgpO1xuICogIH1cbiAqL1xuQG1peGluIHB1c2gtLXNpZGVzKCRzcGFjaW5nOiAkc3BhY2luZy11bml0KSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmc7XG59XG5cbi8qKlxuICogQG1peGluIHB1c2gtLWF1dG9cbiAqIEBkZXNjcmlwdGlvbiBBdXRvIG1hcmdpbiBsZWZ0ICYgcmlnaHRcbiAqXG4gKiBAcGFyYW0gJHNwYWNpbmcgVmFsdWUgdG8gYWRkXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBwdXNoLS1hdXRvO1xuICogIH1cbiAqL1xuQG1peGluIHB1c2gtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiBAbWl4aW4gb2Zmc2V0LS1zaWRlc1xuICogQGRlc2NyaXB0aW9uIE5lZ2F0aXZlIG1hcmdpbiBsZWZ0ICYgcmlnaHRcbiAqXG4gKiBAcGFyYW0gJHNwYWNpbmcgVmFsdWUgdG8gYWRkXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBvZmZzZXQtLXNpZGVzO1xuICogIH1cbiAqL1xuQG1peGluIG9mZnNldC0tc2lkZXMoJHNwYWNpbmc6ICRzcGFjaW5nLXVuaXQpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRzcGFjaW5nO1xuICAgIG1hcmdpbi1yaWdodDogLSRzcGFjaW5nO1xufVxuXG4vKipcbiAqIEBtaXhpbiBmbHVzaC0tZW5kc1xuICogQGRlc2NyaXB0aW9uIE5vIG1hcmdpbiB0b3AgJiBib3R0b21cbiAqXG4gKiBAcGFyYW0gJHNwYWNpbmcgVmFsdWUgdG8gYWRkXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBmbHVzaC0tZW5kcztcbiAqICB9XG4gKi9cbkBtaXhpbiBmbHVzaC0tZW5kcyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKipcbiAqIEBtaXhpbiBmbHVzaC0tc2lkZXNcbiAqIEBkZXNjcmlwdGlvbiBObyBtYXJnaW4gbGVmdCAmIHJpZ2h0XG4gKlxuICogQHBhcmFtICRzcGFjaW5nIFZhbHVlIHRvIGFkZFxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgZmx1c2gtLXNpZGVzO1xuICogIH1cbiAqL1xuQG1peGluIGZsdXNoLS1zaWRlcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEBtaXhpbiBzb2Z0LS1lbmRzXG4gKiBAZGVzY3JpcHRpb24gUGFkZGluZyB0b3AgJiBib3R0b21cbiAqXG4gKiBAcGFyYW0gJHNwYWNpbmcgVmFsdWUgdG8gYWRkXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBzb2Z0LS1lbmRzKDEwMHB4KTtcbiAqICB9XG4gKi9cbkBtaXhpbiBzb2Z0LS1lbmRzKCRzcGFjaW5nOiAkc3BhY2luZy11bml0KSB7XG4gICAgcGFkZGluZy10b3A6ICRzcGFjaW5nO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZztcbn1cblxuLyoqXG4gKiBAbWl4aW4gc29mdC0tc2lkZXNcbiAqIEBkZXNjcmlwdGlvbiBQYWRkaW5nIGxlZnQgJiByaWdodFxuICpcbiAqIEBwYXJhbSAkc3BhY2luZyBWYWx1ZSB0byBhZGRcbiAqXG4gKiBAc2VjdGlvbiBIZWxwZXIgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIHNvZnQtLXNpZGVzKDEwMHB4KTtcbiAqICB9XG4gKi9cbkBtaXhpbiBzb2Z0LS1zaWRlcygkc3BhY2luZzogJHNwYWNpbmctdW5pdCkge1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmc7XG4gICAgcmlnaHQ6ICRzcGFjaW5nO1xufVxuXG4vKipcbiAqIEBtaXhpbiBoYXJkLS1lbmRzXG4gKiBAZGVzY3JpcHRpb24gUmVtb3ZlIHBhZGRpbmcgdG9wICYgYm90dG9tXG4gKlxuICogQHBhcmFtICRzcGFjaW5nIFZhbHVlIHRvIGFkZFxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgaGFyZC0tZW5kcztcbiAqICB9XG4gKi9cbkBtaXhpbiBoYXJkLS1lbmRzIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyoqXG4gKiBAbWl4aW4gaGFyZC0tc2lkZXNcbiAqIEBkZXNjcmlwdGlvbiBSZW1vdmUgcGFkZGluZyBsZWZ0ICYgcmlnaHRcbiAqXG4gKiBAcGFyYW0gJHNwYWNpbmcgVmFsdWUgdG8gYWRkXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBoYXJkLS1zaWRlcztcbiAqICB9XG4gKi9cbkBtaXhpbiBoYXJkLS1zaWRlcyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEBtaXhpbiBsaW5rXG4gKiBAZGVzY3JpcHRpb24gRGVmYXVsdCBsaW5rIHN0eWxlc1xuICpcbiAqIEBzZWN0aW9uIFR5cGUgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIGxpbms7XG4gKiAgfVxuICovXG5AbWl4aW4gbGluayB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29sb3IsICR0cmFuc2l0aW9uLWJvcmRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeTtcbiAgICB9XG59XG5cbi8qKlxuICogQG1peGluIGxpbmstcmVzZXRcbiAqIEBkZXNjcmlwdGlvbiBSZXNldCBsaW5rIHN0eWxlc1xuICpcbiAqIEBwYXJhbSAkdGV4dC1kZWNvcmF0aW9uIGUuZy4gdW5kZXJsaW5lLCBub25lXG4gKlxuICogQHNlY3Rpb24gVHlwZSBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgLmVsZW1lbnQge1xuICogICAgICBAaW5jbHVkZSBsaW5rLXJlc2V0O1xuICogIH1cbiAqL1xuQG1peGluIGxpbmstcmVzZXQoJHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkdGV4dC1kZWNvcmF0aW9uO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLyoqXG4gKiBAbWl4aW4gbGluay1ibG9ja1xuICogQGRlc2NyaXB0aW9uIEFuaW1hdGVkIGxpbmsgc3R5bGUgb24gYmxvY2tzXG4gKlxuICogQHNlY3Rpb24gVHlwZSBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgLmVsZW1lbnQge1xuICogICAgICBAaW5jbHVkZSBsaW5rLWJsb2NrO1xuICogIH1cbiAqL1xuQG1peGluIGxpbmstYmxvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvKGJsb2NrLCBhYnNvbHV0ZSk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtKDEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xuICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi10cmFuc2Zvcm07XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIEBtaXhpbiBmb250LXNlY29uZGFyeS1ib2xkXG4gKiBAZGVzY3JpcHRpb24gU2Vjb25kYXJ5IGZvbnQgc3R5bGUgYm9sZFxuICpcbiAqIEBzZWN0aW9uIFR5cGUgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kYXJ5LWJvbGQ7XG4gKiAgfVxuICovXG5AbWl4aW4gZm9udC1zZWNvbmRhcnktYm9sZCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBAbWl4aW4gbGlzdC11bnN0eWxlZFxuICogQGRlc2NyaXB0aW9uIFVuc3R5bGVkIGxpc3RcbiAqXG4gKiBAc2VjdGlvbiBIZWxwZXIgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gKiAgfVxuICovXG5AbWl4aW4gbGlzdC11bnN0eWxlZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgID4gbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICA+IGxpOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLyoqXG4gKiBAbWl4aW4gbGlzdC1mbGF0XG4gKiBAZGVzY3JpcHRpb24gRmxvYXRlZCBsaXN0XG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBsaXN0LWZsYXQ7XG4gKiAgfVxuICovXG5AbWl4aW4gbGlzdC1mbGF0IHtcbiAgICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xuICAgIEBpbmNsdWRlIGNmO1xuXG4gICAgPiBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbn1cblxuLyoqXG4gKiBAbWl4aW4gbGlzdC1pbmxpbmVcbiAqIEBkZXNjcmlwdGlvbiBJbmxpbmUgbGlzdFxuICpcbiAqIEBzZWN0aW9uIEhlbHBlciBNaXhpbnNcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqIFx0ICAgQGluY2x1ZGUgbGlzdC1pbmxpbmU7XG4gKiAgfVxuICovXG5AbWl4aW4gbGlzdC1pbmxpbmUge1xuICAgIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG5cbiAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLyoqXG4gKiBAbWl4aW4gbGlzdC1ibG9ja1xuICogQGRlc2NyaXB0aW9uIElubGluZSBsaXN0XG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSBsaXN0LWJsb2NrO1xuICogIH1cbiAqL1xuQG1peGluIGxpc3QtYmxvY2sge1xuICAgIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG5cbiAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4vKipcbiAqIEBtaXhpbiBsaXN0LWZsZXhcbiAqIEBkZXNjcmlwdGlvbiBGbGV4Ym94IGxpc3RcbiAqXG4gKiBAc2VjdGlvbiBIZWxwZXIgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIGxpc3QtZmxleDtcbiAqICB9XG4gKi9cbkBtaXhpbiBsaXN0LWZsZXgge1xuICAgIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGZsZXgoMCwgMSwgYXV0byk7XG4gICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24ocm93KTtcbiAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG59XG5cbi8qKlxuICogQG1peGluIGhpZGRlblxuICogQGRlc2NyaXB0aW9uIEhpZGUgZWxlbWVudHNcbiAqXG4gKiBAc2VjdGlvbiBIZWxwZXIgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIGhpZGRlbjtcbiAqICB9XG4gKi9cbkBtaXhpbiBoaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qKlxuICogQG1peGluIHZpc2libGVcbiAqIEBkZXNjcmlwdGlvbiBTaG93IGVsZW1lbnRzXG4gKlxuICogQHNlY3Rpb24gSGVscGVyIE1peGluc1xuICogQGV4YW1wbGVcbiAqICAgLmVsZW1lbnQge1xuICogXHQgICBAaW5jbHVkZSB2aXNpYmxlO1xuICogIH1cbiAqL1xuQG1peGluIHZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi8qKlxuICogQG1peGluIGhpZGRlblxuICogQGRlc2NyaXB0aW9uIEhpZGUgZWxlbWVudHNcbiAqXG4gKiBAc2VjdGlvbiBIZWxwZXIgTWl4aW5zXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIGhpZGRlbjtcbiAqICB9XG4gKi9cbkBtaXhpbiBidXR0b24tY29sb3VycygkYmFja2dyb3VuZC1jb2xvdXIpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvdXI7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFja2dyb3VuZCwgJHRyYW5zaXRpb24tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmFja2dyb3VuZC1jb2xvdXIsIDAuOCk7XG4gICAgfVxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLWNvbG91ciwgNSUpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBAbWl4aW4gdHJhbnNpdGlvbi12aXNpYmlsaXR5XG4gKiBAZGVzY3JpcHRpb24gVHJhbnNpdGlvbiBvcGFjaXR5IGFuZCB2aXNpYmlsaXR5XG4gKlxuICogQHNlY3Rpb24gQW5pbWF0aW9uIE1peGluc1xuICogQHBhcmFtICRkdXJhdGlvbiBob3cgbG9uZyBhbmltYXRpb24gc2hvdWxkIHRha2UgaW4gc2Vjb25kc1xuICogQHBhcmFtICRhZGRpdGlvbmFsLXRyYW5zaXRpb25zIGFueSBhZGRpdGlvbmFsIHRyYW5zaXRpb25zIHRvIGJlIGFkZGVkXG4gKiBAZXhhbXBsZVxuICogICAuZWxlbWVudCB7XG4gKiBcdCAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eTtcbiAqICB9XG4gKi9cbkBtaXhpbiB0cmFuc2l0aW9uLXZpc2liaWxpdHkoJGR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbiwgJGFkZGl0aW9uYWwtdHJhbnNpdGlvbnM6ICcnKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBAaWYgJGFkZGl0aW9uYWwtdHJhbnNpdGlvbnMgIT0gJycge1xuICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzICRkdXJhdGlvbiwgb3BhY2l0eSAkZHVyYXRpb24gJGVhc2luZywgJGFkZGl0aW9uYWwtdHJhbnNpdGlvbnM7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgJGR1cmF0aW9uLCBvcGFjaXR5ICRkdXJhdGlvbiAkZWFzaW5nO1xuICAgIH1cbn1cblxuLyoqXG4gKiBAbWl4aW4gdHJhbnNpdGlvbi12aXNpYmlsaXR5LWhvdmVyXG4gKiBAZGVzY3JpcHRpb24gVHJhbnNpdGlvbiBvcGFjaXR5IGFuZCB2aXNpYmlsaXR5IHJldmVyc2VcbiAqXG4gKiBAc2VjdGlvbiBBbmltYXRpb24gTWl4aW5zXG4gKiBAcGFyYW0gJGR1cmF0aW9uIGhvdyBsb25nIGFuaW1hdGlvbiBzaG91bGQgdGFrZSBpbiBzZWNvbmRzXG4gKiBAcGFyYW0gJGFkZGl0aW9uYWwtdHJhbnNpdGlvbnMgYW55IGFkZGl0aW9uYWwgdHJhbnNpdGlvbnMgdG8gYmUgYWRkZWRcbiAqIEBleGFtcGxlXG4gKiAgIC5lbGVtZW50IHtcbiAqICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXZpc2liaWxpdHktaG92ZXI7XG4gKiAgfVxuICovXG5AbWl4aW4gdHJhbnNpdGlvbi12aXNpYmlsaXR5LWhvdmVyKCRkdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb24sICRhZGRpdGlvbmFsLXRyYW5zaXRpb25zOiAnJykge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIEBpZiAkYWRkaXRpb25hbC10cmFuc2l0aW9ucyAhPSAnJyB7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGR1cmF0aW9uICRlYXNpbmcsICRhZGRpdGlvbmFsLXRyYW5zaXRpb25zO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRkdXJhdGlvbiAkZWFzaW5nO1xuICAgIH1cbn1cblxuLyoqXG4gKiBNaXhpbiBwcmludGluZyBhIGxpbmVhci1ncmFkaWVudFxuICogYXMgd2VsbCBhcyBhIHBsYWluIGNvbG9yIGZhbGxiYWNrXG4gKiBhbmQgdGhlIGAtd2Via2l0LWAgcHJlZml4ZWQgZGVjbGFyYXRpb25cbiAqIEBhY2Nlc3MgcHVibGljXG4gKiBAcGFyYW0ge1N0cmluZyB8IExpc3QgfCBBbmdsZX0gJGRpcmVjdGlvbiAtIExpbmVhciBncmFkaWVudCBkaXJlY3Rpb25cbiAqIEBwYXJhbSB7QXJnbGlzdH0gJGNvbG9yLXN0b3BzIC0gTGlzdCBvZiBjb2xvci1zdG9wcyBjb21wb3NpbmcgdGhlIGdyYWRpZW50XG4gKi9cbkBtaXhpbiBsaW5lYXItZ3JhZGllbnQoJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzLi4uKSB7XG4gICAgQGlmIGlzLWRpcmVjdGlvbigkZGlyZWN0aW9uKSA9PSBmYWxzZSB7XG4gICAgICAgICRjb2xvci1zdG9wczogKCRkaXJlY3Rpb24sICRjb2xvci1zdG9wcyk7XG4gICAgICAgICRkaXJlY3Rpb246IDE4MGRlZztcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiBudGgobnRoKCRjb2xvci1zdG9wcywgMSksIDEpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZ2FjeS1kaXJlY3Rpb24oJGRpcmVjdGlvbiksICRjb2xvci1zdG9wcyk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCRkaXJlY3Rpb24sICRjb2xvci1zdG9wcyk7XG59XG5cbi8qKlxuICogQG1peGluIHB1bGxcbiAqIFVzZWQgdG8gcHVsbCBhIHNlY3Rpb24gb3V0IG9mIGNvbnRhaW5lciBhbmQgc3RyZXRjaCBhY3Jvc3MgZnVsbCBwYWdlXG4gKi9cbkBtaXhpbiBwdWxsIHtcbiAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIG51bGwsIG51bGwsIG51bGwsIC0xNTAlKTtcbiAgICB3aWR0aDogMzAwJTtcbn1cblxuLyoqXG4gKiBAbWl4aW4gYnV0dG9uLWRleC1yZXZlcnNlXG4gKiBEZXggYnV0dG9uIHJldmVyc2Ugc3R5bGVcbiAqL1xuQG1peGluIGJ1dHRvbi1kZXgtcmV2ZXJzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJGRleC1saWdodDtcbiAgICB9XG59XG4iLCIqIHtcbiAgICAmLFxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxufVxuaHRtbCB7XG4gICAgZm9udC1zaXplOiAkaHRtbC1mb250LXNpemU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogeHMpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgIH1cbn1cbmJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAzMjBweDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG4vLyAjYmFyYmEtd3JhcHBlciB7XG4vLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgIHotaW5kZXg6IDE7XG4vLyB9XG4uYmFyYmEtY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxMjBweCk7XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyNTBweCk7XG4gICAgfVxufVxuLndyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG4iLCJ1bCxcbm9sLFxuZGwge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKCRiYXNlLW1hcmdpbik7XG59XG5vbCxcbnVsIHtcbiAgICBjb3VudGVyLXJlc2V0OiBvbDtcblxuICAgIG9sLFxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDE2cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEluc2lkZSB0ZXh0IHJvd3NcbiAgICAudGV4dC1yb3ctLTEgJiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMjVweCk7XG4gICAgfVxufVxuXG4udGV4dC1yb3ctLTEgdWwuZ2Zvcm1fZmllbGRzIHVsLFxuLnRleHQtcm93LS0xIHVsLmdmb3JtX2ZpZWxkcyBvbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8qKlxuICogQGF0b20gVW5vcmRlcmVkIGxpc3RzXG4gKiBAc2VjdGlvbiBMaXN0c1xuICogQG1vZGlmaWVyc1xuICogIC5saXN0LS11bnN0eWxlZCBVbnN0eWxlZCBsaXN0XG4gKiAgLmxpc3QtLWZsYXQgTGkncyBmbG9hdGVkXG4gKiAgLmxpc3QtLWlubGluZSBMaSdzIGlubGluZVxuICogIC5saXN0LS1ibG9jayBMaSdzIGJsb2NrXG4gKiBAbWFya3VwXG4gKiAgIDx1bD5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgPC91bD5cbiAqL1xudWwge1xuICAgIHBhZGRpbmctbGVmdDogcmVtKDI1cHgpO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMHB4KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiByZW0oOHB4KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDhweCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0oOHB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiByZW0oOXB4KTtcbiAgICAgICAgICAgIGxlZnQ6IHJlbSgtMjVweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgICB9XG4gICAgfVxufVxuLmxpc3QtLXVuc3R5bGVkIHtcbiAgICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuLmxpc3QtLWZsYXQge1xuICAgIEBpbmNsdWRlIGxpc3QtZmxhdDtcbn1cbi5saXN0LS1pbmxpbmUge1xuICAgIEBpbmNsdWRlIGxpc3QtaW5saW5lO1xufVxuLmxpc3QtLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBsaXN0LWJsb2NrO1xufVxuXG4vKipcbiAqIEBhdG9tIE9yZGVyZWQgbGlzdHNcbiAqIEBzZWN0aW9uIExpc3RzXG4gKiBAbWFya3VwXG4gKiAgIDxvbD5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgICA8bGk+TGlzdCBpdGVtPC9saT5cbiAqICAgPC9vbD5cbiAqL1xub2wge1xuICAgIHBhZGRpbmctbGVmdDogcmVtKDI1cHgpO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNnB4KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBjb3VudGVyKG9sKSAnLic7XG4gICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogb2w7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiByZW0oLTI1cHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdWwgbGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0b3A6IHJlbSg3cHgpO1xuICAgICAgICBsZWZ0OiByZW0oLTI1cHgpO1xuICAgICAgICAvLyAuQXJyb3ctcmlnaHQoNXB4LCAjY2NjKTtcbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gTGlzdCB3aXRoIHVuc3R5bGVkIGxpbmtzXG4gKiBAc2VjdGlvbiBMaXN0c1xuICogQG1hcmt1cFxuICogIDx1bCBjbGFzcz1cImxpc3QtLWxpbmtlZC11bnN0eWxlZFwiPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5Qb3J0Zm9saW8gVlBQPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBvcnRmb2xpbyBDTTwvYT48L2xpPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5NaWNyb0VNPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBlYWsgUmVzcG9uc2U8L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+ZGVYPC9hPjwvbGk+XG4gKiAgPC91bD5cbiAqL1xuLmxpc3QtLWxpbmtlZC11bnN0eWxlZCB7XG4gICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGxpbmstcmVzZXQobm9uZSk7XG4gICAgfVxufVxuXG4vKipcbiAqIEBhdG9tIExpc3Qgd2l0aCBib3JkZXJlZCBsaSdzXG4gKiBAc2VjdGlvbiBMaXN0c1xuICogQG1hcmt1cFxuICogIDx1bCBjbGFzcz1cImxpc3QtLWJvcmRlcmVkIGxpc3QtLXBhZGRpbmcgbGlzdC0tdW5zdHlsZWRcIj5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+UG9ydGZvbGlvIFZQUDwvYT48L2xpPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5Qb3J0Zm9saW8gQ008L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+TWljcm9FTTwvYT48L2xpPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5QZWFrIFJlc3BvbnNlPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPmRlWDwvYT48L2xpPlxuICogIDwvdWw+XG4gKi9cbi5saXN0LS1ib3JkZXJlZCB7XG4gICAgbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gTGlzdCB3aXRoIGJvcmRlcmVkIChvbiB0aGUgc2lkZSkgbGknc1xuICogQHNlY3Rpb24gTGlzdHNcbiAqIEBtb2RpZmllcnNcbiAqICAubGlzdC0tYm9yZGVyZWQtc2lkZS1tZWRpdW0gLSBDaGFuZ2UgdG8gdmVydGljYWwgMiBjb2wgbGlzdCBiZWxvdyBtZFxuICogIC5saXN0LS1ib3JkZXJlZC1zaWRlLXNtYWxsIC0gQ2hhbmdlIHRvIHZlcnRpY2FsIDEgY29sIGxpc3QgYmVsb3cgeHNcbiAqIEBtYXJrdXBcbiAqICA8dWwgY2xhc3M9XCJsaXN0LS1ib3JkZXJlZC1zaWRlIGxpc3QtLXVuc3R5bGVkXCI+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBvcnRmb2xpbyBWUFA8L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+UG9ydGZvbGlvIENNPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPk1pY3JvRU08L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+ZGVYPC9hPjwvbGk+XG4gKiAgPC91bD5cbiAqL1xuLmxpc3QtLWJvcmRlcmVkLXNpZGUge1xuICAgIEBpbmNsdWRlIGZsZXhib3goKTtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIGxpIHtcbiAgICAgICAgJHdpZHRoOiAkZ3JpZCAqIDM7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtICN7JHdpZHRofSk7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtKCRncmlkICogMyk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqIDMpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oJGdyaWQgKiAzKTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgkZ3JpZCAqIDIpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKCRncmlkICogMik7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICB9XG59XG4ubGlzdC0tYm9yZGVyZWQtc2lkZS1tZWRpdW0ge1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogbWQpIHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRncmlkICogNCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKCRncmlkICogNCk7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLmxpc3QtLWJvcmRlcmVkLXNpZGUtc21hbGwge1xuICAgIEBpbmNsdWRlIG1xLWFkZC1icmVha3BvaW50KGxpc3Rib3JkZXJlZHNtYWxsLCA2MDBweCk7XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiBsaXN0Ym9yZGVyZWRzbWFsbCkge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KDAsIDEsIDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIEBhdG9tIExpc3Qgd2l0aCBleHRyYSBtYXJnaW4gYmV0d2VlbiBsaSdzXG4gKiBAc2VjdGlvbiBMaXN0c1xuICogQG1hcmt1cFxuICogIDx1bCBjbGFzcz1cImxpc3QtLW1hcmdpbiBsaXN0LS11bnN0eWxlZFwiPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5Qb3J0Zm9saW8gVlBQPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBvcnRmb2xpbyBDTTwvYT48L2xpPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5NaWNyb0VNPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBlYWsgUmVzcG9uc2U8L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+ZGVYPC9hPjwvbGk+XG4gKiAgPC91bD5cbiAqL1xuLmxpc3QtLW1hcmdpbiB7XG4gICAgbGkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oJGdyaWQgKiAyKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogMik7XG4gICAgfVxufVxuXG4vKipcbiAqIEBhdG9tIExpc3Qgd2l0aCBleHRyYSBwYWRkaW5nIGJldHdlZW4gbGknc1xuICogQHNlY3Rpb24gTGlzdHNcbiAqIEBtYXJrdXBcbiAqICA8dWwgY2xhc3M9XCJsaXN0LS1wYWRkaW5nIGxpc3QtLXVuc3R5bGVkXCI+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBvcnRmb2xpbyBWUFA8L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+UG9ydGZvbGlvIENNPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPk1pY3JvRU08L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+UGVhayBSZXNwb25zZTwvYT48L2xpPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5kZVg8L2E+PC9saT5cbiAqICA8L3VsPlxuICovXG4ubGlzdC0tcGFkZGluZyB7XG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRncmlkICogMik7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oJGdyaWQgKiAyKTtcbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gTGFyZ2UgbGlzdFxuICogQHNlY3Rpb24gTGlzdHNcbiAqIEBtYXJrdXBcbiAqICA8dWwgY2xhc3M9XCJsaXN0LS1sYXJnZSBsaXN0LS11bnN0eWxlZFwiPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5Qb3J0Zm9saW8gVlBQPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBvcnRmb2xpbyBDTTwvYT48L2xpPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5NaWNyb0VNPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBlYWsgUmVzcG9uc2U8L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+ZGVYPC9hPjwvbGk+XG4gKiAgPC91bD5cbiAqL1xuLmxpc3QtLWxhcmdlIHtcbiAgICBmb250LXNpemU6IHJlbSgyNHB4KTtcbn1cblxuLyoqXG4gKiBAYXRvbSBGZWF0dXJlcyBsaXN0XG4gKiBAc2VjdGlvbiBMaXN0c1xuICogQG1hcmt1cFxuICogIDx1bCBjbGFzcz1cImxpc3QtLWZlYXR1cmVzIGxpc3QtLXVuc3R5bGVkXCI+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBvcnRmb2xpbyBWUFA8L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+UG9ydGZvbGlvIENNPC9hPjwvbGk+XG4gKiAgICAgIDxsaT48YSBocmVmPVwiI1wiPk1pY3JvRU08L2E+PC9saT5cbiAqICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+UGVhayBSZXNwb25zZTwvYT48L2xpPlxuICogICAgICA8bGk+PGEgaHJlZj1cIiNcIj5kZVg8L2E+PC9saT5cbiAqICA8L3VsPlxuICovXG4ubGlzdC0tZmVhdHVyZXMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMzVweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2cHgpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDI0cHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjRweCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0oMjRweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIHRvcDogcmVtKC0xcHgpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG8oYmxvY2ssIGFic29sdXRlKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgNXB4LCBudWxsLCBudWxsLCA5cHgpO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgYmxhY2s7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgYmxhY2s7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDVweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxMHB4KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qKlxuICogQGF0b20gSHJcbiAqIEBzZWN0aW9uIEhyXG4gKiBAbWFya3VwXG4gKiAgPGhyPlxuICovXG5ociB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oJGJhc2UtbWFyZ2luKTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbn1cbiIsIkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcFNtYWxsIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHZoLCAwKTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5VcFNtYWxsIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHZoLCAwKTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwTGFyZ2Uge1xuICAgIGZyb20ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMHZoLCAwKTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5VcExhcmdlIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDB2aCwgMCk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyB1cFNtYWxsIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3NSUsIDApO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5Aa2V5ZnJhbWVzIHVwU21hbGwge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDc1JSwgMCk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyB1cExhcmdlIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDB2aCwgMCk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgdXBMYXJnZSB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwdmgsIDApO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG59XG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDIwIHtcbiAgICAudHJhbnNpdGlvbi1kZWxheS0jeyRpfSB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICRpICogMC4xcztcbiAgICB9XG59XG5cbkBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgIC5qcy5jc3NhbmltYXRpb25zIHtcbiAgICAgICAgW2RhdGEtYW5pbWF0aW9uXSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5mYWRlSW4ge1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJbiAwLjVzIDEgYm90aCBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gMC41cyAxIGJvdGggY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAgICAgfVxuICAgICAgICAuZmFkZUluVXBTbWFsbCB7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluVXBTbWFsbCAwLjZzIDEgYm90aCBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcFNtYWxsIDAuNnMgMSBib3RoIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgLmZhZGVJblVwTGFyZ2Uge1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJblVwTGFyZ2UgMC42cyAxIGJvdGggY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXBMYXJnZSAwLjZzIDEgYm90aCBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG4gICAgICAgIC51cFNtYWxsIHtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1cFNtYWxsIDAuNnMgMSBib3RoIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgICAgICBhbmltYXRpb246IHVwU21hbGwgMC42cyAxIGJvdGggY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAgICAgfVxuICAgICAgICAudXBMYXJnZSB7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogdXBMYXJnZSAwLjZzIDEgYm90aCBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiB1cExhcmdlIDAuNnMgMSBib3RoIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIEBhdG9tIC5pcy1oaWRkZW5cbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBNaXNjXG4gKiBAZGVzY3JpcHRpb25cbiAqICBIaWRlIGVsZW1lbnQgZnJvbSBhbGxcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cImlzLWhpZGRlblwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmlzLWhpZGRlbiB7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xufVxuXG4vKipcbiAqIEBhdG9tIC5pcy12aXNpYmxlXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gTWlzY1xuICogQGRlc2NyaXB0aW9uXG4gKiAgSGlkZSBlbGVtZW50IGZyb20gYWxsXG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJpcy12aXNpYmxlXCI+Q29udGVudDwvZGl2PlxuICovXG4uaXMtdmlzaWJsZSB7XG4gICAgQGluY2x1ZGUgdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBAYXRvbSAuaXMtaW52aXNpYmxlXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gTWlzY1xuICogQGRlc2NyaXB0aW9uXG4gKiAgSGlkZSBlbGVtZW50IGZyb20gYmVpbmcgdmlzaWJsZSAob3BhY2l0eSlcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cImlzLWludmlzaWJsZVwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmlzLWludmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLyoqXG4gKiBAYXRvbSAudmlzdWFsbHloaWRkZW5cbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBNaXNjXG4gKiBAZGVzY3JpcHRpb25cbiAqICBIaWRlIGVsZW1lbnQgdmlzdWFsbHkgb25seSBlLmcuIHNjcmVlbiByZWFkZXJzIGNhbiBzdGlsbCBhY2Nlc3NcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cInZpc3VhbGx5aGlkZGVuXCI+Q29udGVudDwvZGl2PlxuICovXG4udmlzdWFsbHloaWRkZW4ge1xuICAgIEBpbmNsdWRlIHZoO1xufVxuXG4vKipcbiAqIEBhdG9tIC5jZlxuICogQHNlY3Rpb24gSGVscGVycyA+IE1pc2NcbiAqIEBkZXNjcmlwdGlvblxuICogIENsZWFyZml4XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJjZlwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmNmIHtcbiAgICBAaW5jbHVkZSBjZjtcbn1cblxuLyoqXG4gKiBAYXRvbSAucmlnaHRcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBBbGlnbm1lbnRcbiAqIEBkZXNjcmlwdGlvblxuICogIEZsb2F0IGVsZW1lbnQgcmlnaHRcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cInJpZ2h0XCI+Q29udGVudDwvZGl2PlxuICovXG4ucmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLyoqXG4gKiBAYXRvbSAubGVmdFxuICogQHNlY3Rpb24gSGVscGVycyA+IEFsaWdubWVudFxuICogQGRlc2NyaXB0aW9uXG4gKiAgRmxvYXQgZWxlbWVudCBsZWZ0XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+Q29udGVudDwvZGl2PlxuICovXG4ubGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG59XG5cbi8qKlxuICogQGF0b20gLm0tc20tdHgyXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gU3BhY2luZ1xuICogQGRlc2NyaXB0aW9uXG4gKiAgTWFyZ2luIGFuZCBwYWRkaW5nIGhlbHBlcnNcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cIm0tc20tdHgyXCI+Q29udGVudDwvZGl2PlxuICovXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoICRzcGFjaW5nLWhlbHBlcnMge1xuICAgIC5weCN7JGl9IHtcbiAgICAgICAgcGFkZGluZzogcmVtKCRncmlkICogJGkpO1xuICAgIH1cbiAgICAubXgjeyRpfSB7XG4gICAgICAgIG1hcmdpbjogcmVtKCRncmlkICogJGkpO1xuICAgIH1cbiAgICAubS10eCN7JGl9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKCRncmlkICogJGkpO1xuICAgIH1cbiAgICAubS1ieCN7JGl9IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogJGkpO1xuICAgIH1cbiAgICAucC10eCN7JGl9IHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgkZ3JpZCAqICRpKTtcbiAgICB9XG4gICAgLnAtYngjeyRpfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oJGdyaWQgKiAkaSk7XG4gICAgfVxuXG4gICAgQGVhY2ggJG1xLCAkc2l6ZSBpbiAkbXEtYnJlYWtwb2ludHMge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzaXplKSB7XG4gICAgICAgICAgICAucC0jeyRtcX14I3skaX0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgkZ3JpZCAqICRpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tLSN7JG1xfXgjeyRpfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiByZW0oJGdyaWQgKiAkaSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubS0jeyRtcX0tdHgjeyRpfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKCRncmlkICogJGkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm0tI3skbXF9LWJ4I3skaX0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqICRpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wLSN7JG1xfS10eCN7JGl9IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRncmlkICogJGkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnAtI3skbXF9LWJ4I3skaX0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oJGdyaWQgKiAkaSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4ubm8tbSB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG4ubm8tbS10IHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4ubm8tbS1iIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4ubm8tcCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuLm5vLXAtdCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5uby1wLWIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5AZWFjaCAkbXEsICRzaXplIGluICRtcS1icmVha3BvaW50cyB7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2l6ZSkge1xuICAgICAgICAubm8tbS0jeyRtcX0ge1xuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm5vLW0tI3skbXF9LXQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5uby1tLSN7JG1xfS1iIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubm8tcC0jeyRtcX0ge1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5uby1wLSN7JG1xfS10IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm5vLXAtI3skbXF9LWIge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBAYXRvbSAucmVsYXRpdmVcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBQb3NpdGlvbmluZ1xuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5yZWxhdGl2ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKipcbiAqIEBhdG9tIC5hYnNvbHV0ZVxuICogQHNlY3Rpb24gSGVscGVycyA+IFBvc2l0aW9uaW5nXG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJhYnNvbHV0ZVwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8qKlxuICogQGF0b20gLnN0YXRpY1xuICogQHNlY3Rpb24gSGVscGVycyA+IFBvc2l0aW9uaW5nXG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJzdGF0aWNcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5zdGF0aWMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi8qKlxuICogQGF0b20gLnNjcmVlblxuICogQHNlY3Rpb24gSGVscGVycyA+IFByaW50XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJzY3JlZW5cIj5Db250ZW50PC9kaXY+XG4gKi9cbi5zY3JlZW4ge1xuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4vKipcbiAqIEBhdG9tIC5wcmludFxuICogQHNlY3Rpb24gSGVscGVycyA+IFByaW50XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJwcmludFwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLnByaW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEBhdG9tIC5ibG9ja1xuICogQHNlY3Rpb24gSGVscGVycyA+IERpc3BsYXlcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cImJsb2NrXCI+Q29udGVudDwvZGl2PlxuICovXG4uYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIEBhdG9tIC5pbmxpbmUtYmxvY2tcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBEaXNwbGF5XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJpbmxpbmUtYmxvY2tcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBAYXRvbSAuaW5saW5lXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gRGlzcGxheVxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiaW5saW5lXCI+Q29udGVudDwvZGl2PlxuICovXG4uaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi8qKlxuICogQGF0b20gLmZsZXhcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBEaXNwbGF5XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+Q29udGVudDwvZGl2PlxuICovXG4uZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLyoqXG4gKiBAYXRvbSAuZmxleC1jb2x1bW5cbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBEaXNwbGF5XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJmbGV4LWNvbHVtblwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmZsZXgtY29sdW1uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi8qKlxuICogQGF0b20gLmZsZXgtY2VudGVyXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gRGlzcGxheVxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiZmxleC1jZW50ZXJcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5mbGV4LWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4vKipcbiAqIEBhdG9tIC5mbGV4LWgtY2VudGVyXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gRGlzcGxheVxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiZmxleC1oLWNlbnRlclwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmZsZXgtaC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLyoqXG4gKiBAYXRvbSAuZmxleC12LWNlbnRlclxuICogQHNlY3Rpb24gSGVscGVycyA+IERpc3BsYXlcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cImZsZXgtdi1jZW50ZXJcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5mbGV4LXYtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4vKipcbiAqIEBhdG9tIC5mbGV4LXNlbGYtY2VudGVyXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gRGlzcGxheVxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwiZmxleC1zZWxmLWNlbnRlclwiPkNvbnRlbnQ8L2Rpdj5cbiAqL1xuLmZsZXgtc2VsZi1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLyoqXG4gKiBAYXRvbSAuYWxpZ24tY2VudGVyXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gQWxpZ25tZW50XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJhbGlnbi1jZW50ZXJcIj5Db250ZW50PC9kaXY+XG4gKi9cbi5hbGlnbi1jZW50ZXIge1xuICAgIEBpbmNsdWRlIHB1c2gtLWF1dG87XG59XG5cbi8qKlxuICogQGF0b20gLmFsaWduLW1pZGRsZVxuICogQHNlY3Rpb24gSGVscGVycyA+IEFsaWdubWVudFxuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj48ZGl2IGNsYXNzPVwiYWxpZ24tbWlkZGxlXCI+Q29udGVudDwvZGl2PjwvZGl2PlxuICovXG4uYWxpZ24tbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBhbGlnbih0cnVlLCB0cnVlLCBhYnNvbHV0ZSk7XG59XG5cbi8qKlxuICogQGF0b20gLmJvcmRlci10b3BcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBCb3JkZXJzXG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJib3JkZXItdG9wXCI+Qm9yZGVyIHRvcDwvZGl2PlxuICovXG4uYm9yZGVyLXRvcCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cbi8qKlxuICogQGF0b20gLmJvcmRlci1ib3R0b21cbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBCb3JkZXJzXG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJib3JkZXItYm90dG9tXCI+Qm9yZGVyIGJvdHRvbTwvZGl2PlxuICovXG4uYm9yZGVyLWJvdHRvbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cbi8qKlxuICogQGF0b20gLm92ZXJmbG93LWhpZGRlblxuICogQHNlY3Rpb24gSGVscGVycyA+IE92ZXJmbG93XG4gKiBAbWFya3VwXG4gKiAgIDxkaXYgY2xhc3M9XCJvdmVyZmxvdy1oaWRkZW5cIj5Cb3JkZXIgYm90dG9tPC9kaXY+XG4gKi9cbi5vdmVyZmxvdy1oaWRkZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qKlxuICogQGF0b20gLm92ZXJmbG93LXZpc2libGVcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBPdmVyZmxvd1xuICogQG1hcmt1cFxuICogICA8ZGl2IGNsYXNzPVwib3ZlcmZsb3ctdmlzaWJsZVwiPkJvcmRlciBib3R0b208L2Rpdj5cbiAqL1xuLm92ZXJmbG93LXZpc2libGUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuIiwiW2NsYXNzKj1cImljb24tXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICYuaW5saW5lLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi8vIFdlIHVzZSBndWxwIHRvIHJlbW92ZSBpbmxpbmUgZmlsbCBhbmQgcmVwbGFjZSB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3Nlc1xuLmljb25fX3ByaW1hcnkge1xuICAgIGZpbGw6ICRwcmltYXJ5O1xufVxuLmljb25fX3NlY29uZGFyeSB7XG4gICAgZmlsbDogJGNoYXJjb2FsO1xufVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWFjY2Vzc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1hY2Nlc3NcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWFjY2VzcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWFycm93LXJpZ2h0XG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWFycm93LXJpZ2h0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1hcnJvdy1yaWdodCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWFzc2V0ZmluYW5jaWVyX2F1ZGllbmNlZ3JvdXBzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWFzc2V0ZmluYW5jaWVyX2F1ZGllbmNlZ3JvdXBzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1hc3NldGZpbmFuY2llcl9hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWJyb3dzZXJfc3lzdGVtc2FuZG5ldHdvcmtzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWJyb3dzZXJfc3lzdGVtc2FuZG5ldHdvcmtzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1icm93c2VyX3N5c3RlbXNhbmRuZXR3b3JrcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWNsb3NlXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWNsb3NlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1jbG9zZSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWNtXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWNtXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1jbSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWNvbW1lcmNpYWxidXNpbmVzc19hdWRpZW5jZWdyb3Vwc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1jb21tZXJjaWFsYnVzaW5lc3NfYXVkaWVuY2Vncm91cHNcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWNvbW1lcmNpYWxidXNpbmVzc19hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWNvbW11bml0eWFuZHByZWNpbmN0c19hdWRpZW5jZWdyb3Vwc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1jb21tdW5pdHlhbmRwcmVjaW5jdHNfYXVkaWVuY2Vncm91cHNcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWNvbW11bml0eWFuZHByZWNpbmN0c19hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWRhdGEtYW5hbHl0aWNzX3NjZW5hcmlvc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1kYXRhLWFuYWx5dGljc19zY2VuYXJpb3NcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWRhdGEtYW5hbHl0aWNzX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWRleFxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1kZXhcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWRleCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWVtXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWVtXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1lbSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWVtYWlsXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWVtYWlsXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1lbWFpbCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWVuZXJneW1hbmFnZW1lbnRfc3lzdGVtc2FuZG5ldHdvcmtzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWVuZXJneW1hbmFnZW1lbnRfc3lzdGVtc2FuZG5ldHdvcmtzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1lbmVyZ3ltYW5hZ2VtZW50X3N5c3RlbXNhbmRuZXR3b3JrcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWVuZXJneW5ldHdvcmtfYXVkaWVuY2Vncm91cHNcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tZW5lcmd5bmV0d29ya19hdWRpZW5jZWdyb3Vwc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tZW5lcmd5bmV0d29ya19hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWVuZXJneXByaWNpbmdfc2NlbmFyaW9zXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWVuZXJneXByaWNpbmdfc2NlbmFyaW9zXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1lbmVyZ3lwcmljaW5nX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWVuZXJneXJldGFpbGVyX2F1ZGllbmNlZ3JvdXBzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWVuZXJneXJldGFpbGVyX2F1ZGllbmNlZ3JvdXBzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1lbmVyZ3lyZXRhaWxlcl9hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWVycm9yXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWVycm9yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1lcnJvciB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWZhY2Vib29rXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWZhY2Vib29rXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1mYWNlYm9vayB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWZyZXF1ZW5jeXJlZ3VsYXRpb25fc2NlbmFyaW9zXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWZyZXF1ZW5jeXJlZ3VsYXRpb25fc2NlbmFyaW9zXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1mcmVxdWVuY3lyZWd1bGF0aW9uX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWdpdGh1YlxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1naXRodWJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWdpdGh1YiB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWdvb2dsZS1wbHVzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWdvb2dsZS1wbHVzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1nb29nbGUtcGx1cyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWhvdXNld2l0aGJhdHRlcnlfc3lzdGVtc2FuZG5ldHdvcmtzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWhvdXNld2l0aGJhdHRlcnlfc3lzdGVtc2FuZG5ldHdvcmtzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1ob3VzZXdpdGhiYXR0ZXJ5X3N5c3RlbXNhbmRuZXR3b3JrcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWhvdXNld2l0aGJhdHRlcnlhbmRzb2xhcl9zeXN0ZW1zYW5kbmV0d29ya3NcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24taG91c2V3aXRoYmF0dGVyeWFuZHNvbGFyX3N5c3RlbXNhbmRuZXR3b3Jrc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24taG91c2V3aXRoYmF0dGVyeWFuZHNvbGFyX3N5c3RlbXNhbmRuZXR3b3JrcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWluZHVzdHJpYWxjb21tZXJjaWFsYnVzaW5lc3NfYXVkaWVuY2Vncm91cHNcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24taW5kdXN0cmlhbGNvbW1lcmNpYWxidXNpbmVzc19hdWRpZW5jZWdyb3Vwc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24taW5kdXN0cmlhbGNvbW1lcmNpYWxidXNpbmVzc19hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWluZm9cbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24taW5mb1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24taW5mbyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWluc3RhZ3JhbVxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1pbnN0YWdyYW1cIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWluc3RhZ3JhbSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWxlYWRhbmRpbml0aWF0ZV92YWx1ZXNcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tbGVhZGFuZGluaXRpYXRlX3ZhbHVlc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tbGVhZGFuZGluaXRpYXRlX3ZhbHVlcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWxpbmtlZGluXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWxpbmtlZGluXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1saW5rZWRpbiB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWxvYWRlclxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1sb2FkZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLWxvYWRlciB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWxvZ28tZGV4XG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWxvZ28tZGV4XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1sb2dvLWRleCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWxvZ28tZ3JlZW5zeW5jXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWxvZ28tZ3JlZW5zeW5jXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1sb2dvLWdyZWVuc3luYyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLW1hcmtldF9zY2VuYXJpb3NcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tbWFya2V0X3NjZW5hcmlvc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tbWFya2V0X3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLW1hcmtldGVuYWJsaW5nXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLW1hcmtldGVuYWJsaW5nXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1tYXJrZXRlbmFibGluZyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLW1vbmV5XG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLW1vbmV5XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1tb25leSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLW5ld2VuZXJneWNvbXBhbmllc19hdWRpZW5jZWdyb3Vwc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1uZXdlbmVyZ3ljb21wYW5pZXNfYXVkaWVuY2Vncm91cHNcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLW5ld2VuZXJneWNvbXBhbmllc19hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBhdXNlXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXBhdXNlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1wYXVzZSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBlYWtzaGF2aW5nX3NjZW5hcmlvc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1wZWFrc2hhdmluZ19zY2VuYXJpb3NcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXBlYWtzaGF2aW5nX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBlYWtzaGlmdGluZ2dyYXBoX3NjZW5hcmlvc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1wZWFrc2hpZnRpbmdncmFwaF9zY2VuYXJpb3NcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXBlYWtzaGlmdGluZ2dyYXBoX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBlb3BsZV9zY2VuYXJpb3NcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tcGVvcGxlX3NjZW5hcmlvc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tcGVvcGxlX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBpb25lZXJpbmdhcHByb2FjaFxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1waW9uZWVyaW5nYXBwcm9hY2hcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXBpb25lZXJpbmdhcHByb2FjaCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBsYXlcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tcGxheVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tcGxheSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBvd2VyZnVsdGVjaFxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1wb3dlcmZ1bHRlY2hcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXBvd2VyZnVsdGVjaCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXByXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXByXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1wciB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXByaWNlcmVzcG9uc2Vfc2NlbmFyaW9zXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXByaWNlcmVzcG9uc2Vfc2NlbmFyaW9zXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1wcmljZXJlc3BvbnNlX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXB1bHNpbmdvdXRwdXRfc2NlbmFyaW9zXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXB1bHNpbmdvdXRwdXRfc2NlbmFyaW9zXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1wdWxzaW5nb3V0cHV0X3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXJldmVudWVtZXRlcl9hc3NldHNcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tcmV2ZW51ZW1ldGVyX2Fzc2V0c1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tcmV2ZW51ZW1ldGVyX2Fzc2V0cyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXNhdmVcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tc2F2ZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tc2F2ZSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXNlYXJjaFxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1zZWFyY2hcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXNlYXJjaCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXNsYWNrXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXNsYWNrXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1zbGFjayB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXNvbGFyZmFybV9hc3NldHNcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tc29sYXJmYXJtX2Fzc2V0c1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tc29sYXJmYXJtX2Fzc2V0cyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXNvbGFyaW52ZXJ0ZXJfYXNzZXRzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXNvbGFyaW52ZXJ0ZXJfYXNzZXRzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi1zb2xhcmludmVydGVyX2Fzc2V0cyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXN5c3RlbS1tYXJrZXRvcGVyYXRvcl9hdWRpZW5jZWdyb3Vwc1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1zeXN0ZW0tbWFya2V0b3BlcmF0b3JfYXVkaWVuY2Vncm91cHNcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXN5c3RlbS1tYXJrZXRvcGVyYXRvcl9hdWRpZW5jZWdyb3VwcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXRoZWdyaWRfc3lzdGVtc2FuZG5ldHdvcmtzXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXRoZWdyaWRfc3lzdGVtc2FuZG5ldHdvcmtzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi10aGVncmlkX3N5c3RlbXNhbmRuZXR3b3JrcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXRyYW5zZm9ybVxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi10cmFuc2Zvcm1cIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXRyYW5zZm9ybSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXRyZW5kaW5nZG93bl9zY2VuYXJpb3NcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tdHJlbmRpbmdkb3duX3NjZW5hcmlvc1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tdHJlbmRpbmdkb3duX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXRyZW5kaW5ndXBfc2NlbmFyaW9zXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXRyZW5kaW5ndXBfc2NlbmFyaW9zXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi10cmVuZGluZ3VwX3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXR3aXR0ZXJcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tdHdpdHRlclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuLmljb24tdHdpdHRlciB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXZpc2liaWxpdHlfc2NlbmFyaW9zXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXZpc2liaWxpdHlfc2NlbmFyaW9zXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4uaWNvbi12aXNpYmlsaXR5X3NjZW5hcmlvcyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXZwcFxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi12cHBcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXZwcCB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXdpcmVsZXNzX2Fzc2V0c1xuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi13aXJlbGVzc19hc3NldHNcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5pY29uLXdpcmVsZXNzX2Fzc2V0cyB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWNvbW11bmljYXRpb25fc2NlbmFyaW9zX25ld2VuZXJneV9zZWFibHVlXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWNvbW11bmljYXRpb25fc2NlbmFyaW9zX25ld2VuZXJneV9zZWFibHVlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4gLmljb24tY29tbXVuaWNhdGlvbl9zY2VuYXJpb3NfbmV3ZW5lcmd5X3NlYWJsdWUge31cblxuLyoqXG4gKiBAaWNvbiAuaWNvbi1kZXhjb25uZWN0X3NjZW5hcmlvc19uZXdlbmVyZ3lfc2VhYmx1ZVxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1kZXhjb25uZWN0X3NjZW5hcmlvc19uZXdlbmVyZ3lfc2VhYmx1ZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuIC5pY29uLWRleGNvbm5lY3Rfc2NlbmFyaW9zX25ld2VuZXJneV9zZWFibHVlIHt9XG5cbi8qKlxuICogQGljb24gLmljb24tZGV4cmVhZHlfc2NlbmFyaW9zX25ld2VuZXJneV9zZWFibHVlXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWRleHJlYWR5X3NjZW5hcmlvc19uZXdlbmVyZ3lfc2VhYmx1ZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuIC5pY29uLWRleHJlYWR5X3NjZW5hcmlvc19uZXdlbmVyZ3lfc2VhYmx1ZSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLWRleHJlZ2lzdGVyZWRfc2NlbmFyaW9zX25ld2VuZXJneV9zZWFibHVlXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWRleHJlZ2lzdGVyZWRfc2NlbmFyaW9zX25ld2VuZXJneV9zZWFibHVlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4gLmljb24tZGV4cmVnaXN0ZXJlZF9zY2VuYXJpb3NfbmV3ZW5lcmd5X3NlYWJsdWUge31cblxuLyoqXG4gKiBAaWNvbiAuaWNvbi1pbnN0YWxsZXJzX2F1ZGllbmNlX25ld2VuZXJneV9zZWFibHVlXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLWluc3RhbGxlcnNfYXVkaWVuY2VfbmV3ZW5lcmd5X3NlYWJsdWVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbiAuaWNvbi1pbnN0YWxsZXJzX2F1ZGllbmNlX25ld2VuZXJneV9zZWFibHVlIHt9XG5cbi8qKlxuICogQGljb24gLmljb24tbWFya2V0X3NjZW5hcmlvc19uZXdlbmVyZ3lfc2VhYmx1ZVxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1tYXJrZXRfc2NlbmFyaW9zX25ld2VuZXJneV9zZWFibHVlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICovXG4gLmljb24tbWFya2V0X3NjZW5hcmlvc19uZXdlbmVyZ3lfc2VhYmx1ZSB7fVxuXG4vKipcbiAqIEBpY29uIC5pY29uLXBlb3BsZV92YWx1ZXNfbmV3ZW5lcmd5X3NlYWJsdWVcbiAqIEBtYXJrdXBcbiAqICA8aSBjbGFzcz1cImljb24tcGVvcGxlX3ZhbHVlc19uZXdlbmVyZ3lfc2VhYmx1ZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqL1xuIC5pY29uLXBlb3BsZV92YWx1ZXNfbmV3ZW5lcmd5X3NlYWJsdWUge31cblxuLyoqXG4gKiBAaWNvbiAuaWNvbi10ZWNobm9sb2d5dmVuZG9yX2F1ZGllbmNlX25ld2VuZXJneV9zZWFibHVlXG4gKiBAbWFya3VwXG4gKiAgPGkgY2xhc3M9XCJpY29uLXRlY2hub2xvZ3l2ZW5kb3JfYXVkaWVuY2VfbmV3ZW5lcmd5X3NlYWJsdWVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbiAuaWNvbi10ZWNobm9sb2d5dmVuZG9yX2F1ZGllbmNlX25ld2VuZXJneV9zZWFibHVlIHt9XG5cbi8qKlxuICogQGF0b20gLmljb24tLWJhc2VcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBJY29uIGNvbG91cnNcbiAqIEBtYXJrdXBcbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1iYXNlXCIgZGF0YS1ncnVudGljb24tZW1iZWQgc3R5bGU9XCJ3aWR0aDogNDhweDsgYmFja2dyb3VuZDogIzAwZDNhNzsgcGFkZGluZzogMTBweDtcIj48L2k+XG4gKi9cbi5pY29uLS1iYXNlICoge1xuICAgIGZpbGw6ICRjaGFyY29hbDtcbn1cblxuLyoqXG4gKiBAYXRvbSAuaWNvbi0tbGlnaHRcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBJY29uIGNvbG91cnNcbiAqIEBtYXJrdXBcbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1saWdodFwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkIHN0eWxlPVwid2lkdGg6IDQ4cHg7IGJhY2tncm91bmQ6ICMwMGQzYTc7IHBhZGRpbmc6IDEwcHg7XCI+PC9pPlxuICovXG4uaWNvbi0tbGlnaHQgKiB7XG4gICAgZmlsbDogJHdoaXRlO1xufVxuXG4vKipcbiAqIEBhdG9tIC5pY29uLS1vcGFxdWVcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBJY29uIGNvbG91cnNcbiAqIEBtYXJrdXBcbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1vcGFxdWVcIiBkYXRhLWdydW50aWNvbi1lbWJlZCBzdHlsZT1cIndpZHRoOiA0OHB4OyBiYWNrZ3JvdW5kOiAjMDBkM2E3OyBwYWRkaW5nOiAxMHB4O1wiPjwvaT5cbiAqL1xuLmljb24tLW9wYXF1ZSAqIHtcbiAgICBmaWxsOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG59XG5cbi8qKlxuICogQGF0b20gLmljb24tLWRhcmtcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBJY29uIGNvbG91cnNcbiAqIEBtYXJrdXBcbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1kYXJrXCIgZGF0YS1ncnVudGljb24tZW1iZWQgc3R5bGU9XCJ3aWR0aDogNDhweDtcIj48L2k+XG4gKi9cbi5pY29uLS1kYXJrICoge1xuICAgIGZpbGw6ICRibGFjaztcbn1cblxuLyoqXG4gKiBAYXRvbSAuaWNvbi0tcHJpbWFyeVxuICogQHNlY3Rpb24gSGVscGVycyA+IEljb24gY29sb3Vyc1xuICogQG1hcmt1cFxuICogICA8aSBjbGFzcz1cImljb24tc2VhcmNoIGljb24tLXByaW1hcnlcIiBkYXRhLWdydW50aWNvbi1lbWJlZCBzdHlsZT1cIndpZHRoOiA0OHB4O1wiPjwvaT5cbiAqL1xuLmljb24tLXByaW1hcnkgKiB7XG4gICAgZmlsbDogJHByaW1hcnk7XG59XG5cbi8qKlxuICogQGF0b20gLmljb24tLXNlY29uZGFyeVxuICogQHNlY3Rpb24gSGVscGVycyA+IEljb24gY29sb3Vyc1xuICogQG1hcmt1cFxuICogICA8aSBjbGFzcz1cImljb24tc2VhcmNoIGljb24tLXNlY29uZGFyeVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkIHN0eWxlPVwid2lkdGg6IDQ4cHg7XCI+PC9pPlxuICovXG4uaWNvbi0tc2Vjb25kYXJ5ICoge1xuICAgIGZpbGw6ICRzZWNvbmRhcnk7XG59XG5cbi8qKlxuICogQGF0b20gLmljb24tLXRlcnRpYXJ5XG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gSWNvbiBjb2xvdXJzXG4gKiBAbWFya3VwXG4gKiAgIDxpIGNsYXNzPVwiaWNvbi1zZWFyY2ggaWNvbi0tdGVydGlhcnlcIiBkYXRhLWdydW50aWNvbi1lbWJlZCBzdHlsZT1cIndpZHRoOiA0OHB4O1wiPjwvaT5cbiAqL1xuLmljb24tLXRlcnRpYXJ5ICoge1xuICAgIGZpbGw6ICR0ZXJ0aWFyeTtcbn1cblxuLyoqXG4gKiBAYXRvbSAuaWNvbi0tYWNjZW50MVxuICogQHNlY3Rpb24gSGVscGVycyA+IEljb24gY29sb3Vyc1xuICogQG1hcmt1cFxuICogICA8aSBjbGFzcz1cImljb24tc2VhcmNoIGljb24tLWFjY2VudDFcIiBkYXRhLWdydW50aWNvbi1lbWJlZCBzdHlsZT1cIndpZHRoOiA0OHB4O1wiPjwvaT5cbiAqL1xuLmljb24tLWFjY2VudDEgKiB7XG4gICAgZmlsbDogJGFjY2VudDE7XG59XG5cbi8qKlxuICogQGF0b20gLmljb24tLWFjY2VudDJcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBJY29uIGNvbG91cnNcbiAqIEBtYXJrdXBcbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1hY2NlbnQyXCIgZGF0YS1ncnVudGljb24tZW1iZWQgc3R5bGU9XCJ3aWR0aDogNDhweDtcIj48L2k+XG4gKi9cbi5pY29uLS1hY2NlbnQyICoge1xuICAgIGZpbGw6ICRhY2NlbnQyO1xufVxuXG4vKipcbiAqIEBhdG9tIC5pY29uLS1hY2NlbnQzXG4gKiBAc2VjdGlvbiBIZWxwZXJzID4gSWNvbiBjb2xvdXJzXG4gKiBAbWFya3VwXG4gKiAgIDxpIGNsYXNzPVwiaWNvbi1zZWFyY2ggaWNvbi0tYWNjZW50M1wiIGRhdGEtZ3J1bnRpY29uLWVtYmVkIHN0eWxlPVwid2lkdGg6IDQ4cHg7XCI+PC9pPlxuICovXG4uaWNvbi0tYWNjZW50MyAqIHtcbiAgICBmaWxsOiAkYWNjZW50Mztcbn1cblxuLyoqXG4gKiBAYXRvbSAuaWNvbi0teDFcbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBJY29uIHNpemVzXG4gKiBAbWFya3VwXG4gKiAgIDxpIGNsYXNzPVwiaWNvbi1zZWFyY2ggaWNvbi0tYWNjZW50MyBpY29uLS14MVwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1hY2NlbnQzIGljb24tLXgyXCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICogICA8aSBjbGFzcz1cImljb24tc2VhcmNoIGljb24tLWFjY2VudDMgaWNvbi0teDNcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKiAgIDxpIGNsYXNzPVwiaWNvbi1zZWFyY2ggaWNvbi0tYWNjZW50MyBpY29uLS14NFwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1hY2NlbnQzIGljb24tLXg1XCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICogICA8aSBjbGFzcz1cImljb24tc2VhcmNoIGljb24tLWFjY2VudDMgaWNvbi0teDZcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKiAgIDxpIGNsYXNzPVwiaWNvbi1zZWFyY2ggaWNvbi0tYWNjZW50MyBpY29uLS14N1wiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT5cbiAqICAgPGkgY2xhc3M9XCJpY29uLXNlYXJjaCBpY29uLS1hY2NlbnQzIGljb24tLXg4XCIgZGF0YS1ncnVudGljb24tZW1iZWQ+PC9pPlxuICogICA8aSBjbGFzcz1cImljb24tc2VhcmNoIGljb24tLWFjY2VudDMgaWNvbi0teDlcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKiAgIDxpIGNsYXNzPVwiaWNvbi1zZWFyY2ggaWNvbi0tYWNjZW50MyBpY29uLS14MTBcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKiBAZGVzY3JpcHRpb25cbiAqICBTZXQgaWNvbiBzaXplcyBiYXNlZCBvbiAkZ3JpZCB2YXJpYWJsZSwgMSAtIDEwIHRpbWVzIHNpemVzXG4gKi9cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMjAge1xuICAgIC5pY29uLS14I3skaX0ge1xuICAgICAgICB3aWR0aDogcmVtKCRncmlkICogJGkpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgkZ3JpZCAqICRpKTtcbiAgICB9XG59XG4iLCIkc3BhY2luZy11bml0OiAzMHB4O1xuJHNwYWNpbmctdW5pdC0tc21hbGw6ICRncmlkICogMztcbiRzcGFjaW5nLXVuaXQtLW1lZGl1bTogJGdyaWQgKiAzO1xuJHNwYWNpbmctdW5pdC0tbGFyZ2U6ICRncmlkICogNDtcblxuJHBhZ2UtZ3V0dGVyOiByZW0oJHNwYWNpbmctdW5pdC0tc21hbGwpO1xuJHBhZ2UtZ3V0dGVyLS10YWJsZXQ6IHJlbSgkc3BhY2luZy11bml0LS1tZWRpdW0pO1xuJHBhZ2UtZ3V0dGVyLS1kZXNrdG9wOiByZW0oJHNwYWNpbmctdW5pdC0tbGFyZ2UpO1xuXG4kbWF4LXdpZHRoOiAxMjAwcHg7XG5cbi5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHB1c2gtLXNpZGVzKCRwYWdlLWd1dHRlcik7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgIEBpbmNsdWRlIHB1c2gtLXNpZGVzKCRwYWdlLWd1dHRlci0tdGFibGV0KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgIEBpbmNsdWRlIHB1c2gtLXNpZGVzKCRwYWdlLWd1dHRlci0tZGVza3RvcCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiAkbWF4LXdpZHRoICsgKCRzcGFjaW5nLXVuaXQtLWxhcmdlICogMikpIHtcbiAgICAgICAgQGluY2x1ZGUgcHVzaC0tYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLyoqXG4gKiBAYXRvbSBTa2lwIGxpbmtcbiAqIEBzZWN0aW9uIE1pc2NcbiAqIEBtYXJrdXBcbiAqICAgPGEgaHJlZj1cIiNjb250ZW50XCIgY2xhc3M9XCJza2lwLWxpbmsgc2NyZWVuXCI+U2tpcCB0byBjb250ZW50PC9hPlxuICovXG4uc2tpcC1saW5rIHtcbiAgICBAaW5jbHVkZSBsaW5rLXJlc2V0KG5vbmUpO1xuICAgIHBhZGRpbmctdG9wOiByZW0oJGJhc2UtbWFyZ2luKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKCRiYXNlLW1hcmdpbik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5ZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLyoqXG4gKiBAYXRvbSBCdXR0b25cbiAqIEBzZWN0aW9uIEJ1dHRvbnNcbiAqIEBkZXNjcmlwdGlvblxuICogIEJ1dHRvbnMgZm9yIHZhcmlvdXMgcHVycG9zZXMuXG4gKiBAbW9kaWZpZXJzXG4gKiAgLmJ1dHRvbi0tcmVzZXQgcmVtb3ZlIHN0eWxpbmcgZnJvbSBidXR0b25cbiAqICAuYnV0dG9uLS1sYXJnZSBsYXJnZXIgYnV0dG9uXG4gKiAgLmJ1dHRvbi0taWNvbiBidXR0b24gd2l0aCBzaW5nbGUgaWNvbiAmIG5vIHRleHRcbiAqICAuYnV0dG9uLS1pY29uLWxhcmdlIGJ1dHRvbiB3aXRoIHNpbmdsZSBpY29uICYgbm8gdGV4dCAobGFyZ2UpXG4gKiAgLmJ1dHRvbi0td2lkZSAxMDAlIHdpZGUgYnV0dG9uXG4gKiAgLmJ1dHRvbi0tbG9hZGVyIEJ1dHRvbiB3aXRoIGxvYWRlciBpbnNpZGVcbiAqICAuYnV0dG9uLS1waW4gQnV0dG9uIHB1bHNpbmcgcGluXG4gKiAgLmJ1dHRvbi0tY3RhIEJ1dHRvbiB3aXRoIGFycm93XG4gKiAgLmJ1dHRvbi0tYXJyb3cgU29saWQgYnV0dG9uIHdpdGggYXJyb3dcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvblwiPkEgYnV0dG9uPC9idXR0b24+PC9kaXY+XG4gKiAgIDxkaXYgY2xhc3M9XCJtLWJ4M1wiPjxidXR0b24gY2xhc3M9XCJidXR0b25cIj5CdXR0b24gd2l0aCBwYWRkaW5nPC9idXR0b24+PC9kaXY+XG4gKiAgIDxkaXYgY2xhc3M9XCJtLWJ4M1wiPjxidXR0b24gY2xhc3M9XCJidXR0b25cIiBkaXNhYmxlZD5EaXNhYmxlZCBidXR0b248L2J1dHRvbj48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvblwiPlByaW1hcnkgYnV0dG9uPC9idXR0b24+PC9kaXY+XG4gKiAgIDxkaXYgY2xhc3M9XCJtLWJ4M1wiPjxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLS1yZXNldFwiPlJlc2V0IGJ1dHRvbjwvYnV0dG9uPjwvZGl2PlxuICogICA8ZGl2IGNsYXNzPVwibS1ieDNcIj48YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi0tbGFyZ2VcIj5MYXJnZSBidXR0b248L2J1dHRvbj48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvblwiPlRleHQgKyBpY29uPC9idXR0b24+PC9kaXY+XG4gKiAgIDxkaXYgY2xhc3M9XCJtLWJ4M1wiPjxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLS1pY29uXCI+PGkgY2xhc3M9XCJpY29uLXNlYXJjaFwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT48L2J1dHRvbj48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLWljb24tbGFyZ2UgYnV0dG9uLS1pY29uLWxhcmdlXCI+PGkgY2xhc3M9XCJpY29uLXNlYXJjaFwiIGRhdGEtZ3J1bnRpY29uLWVtYmVkPjwvaT48L2J1dHRvbj48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLXdpZGVcIj5XaWRlIGJ1dHRvbi9idXR0b24+PC9kaXY+XG4gKiAgIDxkaXYgY2xhc3M9XCJtLWJ4M1wiPjxidXR0b24gY2xhc3M9XCJidXR0b24gYnV0dG9uLS1sb2FkZXIgcmVsYXRpdmVcIj5Ae2luY2x1ZGU6LmxvYWRlcn08c3BhbiBjbGFzcz1cImJ1dHRvbi0tbG9hZGVyX190ZXh0XCI+TG9hZGVyIGJ1dHRvbjwvc3Bhbj48L2J1dHRvbj48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLXBpblwiPjxzcGFuIGNsYXNzPVwiYnV0dG9uLS1waW5fX3BpblwiPjwvc3Bhbj48L2J1dHRvbj48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGEgaHJlZj1cIlwiIGNsYXNzPVwibGluay1yZXNldCBzZWNvbmRhcnkgYnV0dG9uIGJ1dHRvbi0tY3RhXCI+PHNwYW4gY2xhc3M9XCJjYXB0aW9uXCI+TGluayB0ZXh0PC9zcGFuPjxpIGNsYXNzPVwiaWNvbi1hcnJvdy1yaWdodCBpbmxpbmUtYmxvY2sgaWNvbi0teDIgaWNvbi0tc2Vjb25kYXJ5XCIgZGF0YS1ncnVudGljb24tZW1iZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjwvYT48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLWFycm93XCI+QXJyb3cgYnV0dG9uL2J1dHRvbj48L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm0tYngzXCI+PGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLXRhbGxcIj4xMDAlIGhlaWdodCBidXR0b24vYnV0dG9uPjwvZGl2PlxuICovXG4uYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSg1MHB4KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRjaGFyY29hbDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICBwYWRkaW5nOiByZW0oMTVweCkgcmVtKDIwcHgpO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jb2xvdXJzKCRwcmltYXJ5KTtcblxuICAgICY6aG92ZXIsXG4gICAgJjp2aXNpdGVkLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRjaGFyY29hbDtcbiAgICB9XG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gICAgJi0tcmVzZXQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLWxhcmdlIHtcbiAgICAgICAgcGFkZGluZzogcmVtKDI2cHgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgkZ3JpZCAqIDUpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oJGdyaWQgKiA1KTtcbiAgICB9XG4gICAgJi0taWNvbiB7XG4gICAgICAgIHdpZHRoOiByZW0oJGJ1dHRvbi1zaXplLWljb24pO1xuICAgICAgICBoZWlnaHQ6IHJlbSgkYnV0dG9uLXNpemUtaWNvbik7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgICBpLFxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHB1c2gtLWF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLWxhcmdlIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oJGJ1dHRvbi1zaXplLWljb24tbGFyZ2UpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oJGJ1dHRvbi1zaXplLWljb24tbGFyZ2UpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLXdpZGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgJi0tbG9hZGVyIHtcbiAgICAgICAgLmxvYWRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbih0cnVlLCB0cnVlLCBhYnNvbHV0ZSk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXZpc2liaWxpdHkoKTtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtKCRncmlkICogMS41ICogLTEpIDAgMCByZW0oJGdyaWQgKiAxLjUgKiAtMSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICArIC5nZm9ybV9hamF4X3NwaW5uZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIC5sb2FkZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eS1ob3ZlcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbi0tbG9hZGVyX190ZXh0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXZpc2liaWxpdHkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS1waW4ge1xuICAgICAgICAmX19waW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ24odHJ1ZSwgdHJ1ZSwgYWJzb2x1dGUpO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxNXB4KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDE1cHgpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDE1cHgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxNXB4IHJnYmEoJHdoaXRlLCAxKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS1jdGEge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlbSgkZ3JpZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tdHJhbnNmb3JtO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLWFycm93IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMjVweCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgyNXB4KTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG8oaW5saW5lLWJsb2NrLCBzdGF0aWMpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxOHB4KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDEwcHgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VUy1BU0NJSSwlM0NzdmclMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE3JTIwMTAlMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0wJTIwMy44aDEyLjlsLTIuMy0yLjNMMTIlMjAwbDQuOCUyMDQuOEwxMiUyMDkuN2wtMS40LTEuNSUyMDIuMy0yLjNIMHolMjIlMkYlM0UlM0MlMkZzdmclM0UnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSg1cHgpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oLTVweCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi10cmFuc2Zvcm07XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlbSg1cHgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmJ1dHRvbi0tbGFyZ2Uge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMzVweCk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMzVweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tdGFsbCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5hLmJ1dHRvbjpob3ZlcixcbmEuYnV0dG9uOmZvY3VzIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xufVxuIiwiLyoqXG4gKiBAYXRvbSBIYW1idXJnZXJcbiAqIEBzZWN0aW9uIE5hdmlnYXRpb25cbiAqIEBtb2RpZmllcnNcbiAqICAuaXMtYWN0aXZlIEFjdGl2ZSBzdGF0ZVxuICogIC5oYW1idXJnZXItLWxpZ2h0IGxpZ2h0IGNvbG91cmVkIGhhbWJ1cmdlclxuICogQG1hcmt1cFxuICogIDxidXR0b24gY2xhc3M9XCJoYW1idXJnZXIgYnV0dG9uIGJ1dHRvbi0tcmVzZXRcIiBhcmlhLWNvbnRyb2xzPVwiXCIgYXJpYS1sYWJlbD1cIlwiPlxuICogICAgICA8c3BhbiBjbGFzcz1cInZpc3VhbGx5aGlkZGVuXCI+T3BlbiBtZW51PHNwYW4+XG4gKiAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24gYnV0dG9uLS1pY29uIHJlbGF0aXZlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gKiAgICAgICAgICA8c3BhbiBjbGFzcz1cImhhbWJ1cmdlcl9faW5uZXJcIj48L3NwYW4+XG4gKiAgICAgIDwvZGl2PlxuICogICAgICA8ZGl2IGNsYXNzPVwiZXhwYW5kXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9kaXY+XG4gKiAgPC9idXR0b24+XG4gKiAgPGJ1dHRvbiBjbGFzcz1cImhhbWJ1cmdlciBidXR0b24gYnV0dG9uLS1yZXNldCBpcy1hY3RpdmVcIiBhcmlhLWNvbnRyb2xzPVwiXCIgYXJpYS1sYWJlbD1cIlwiPlxuICogICAgICA8c3BhbiBjbGFzcz1cInZpc3VhbGx5aGlkZGVuXCI+Q2xvc2UgbWVudTwvc3Bhbj5cbiAqICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLWljb24gcmVsYXRpdmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAqICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGFtYnVyZ2VyX19pbm5lclwiPjwvc3Bhbj5cbiAqICAgICAgPC9kaXY+XG4gKiAgPC9idXR0b24+XG4gKi9cbi5oYW1idXJnZXIge1xuICAgIEBpbmNsdWRlIGxpbmstcmVzZXQobm9uZSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgLmhhbWJ1cmdlcl9faW5uZXI6OmJlZm9yZSxcbiAgICAgICAgLmhhbWJ1cmdlcl9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2lubmVyLFxuICAgICZfX2lubmVyOjpiZWZvcmUsXG4gICAgJl9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IHJlbSgkaGFtYnVyZ2VyLXNpemUpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgkaGFtYnVyZ2VyLWJvcmRlci1zaXplKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKCRoYW1idXJnZXItYm9yZGVyLXNpemUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWNvbG91cjtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDc1bXM7XG4gICAgfVxuICAgICZfX2lubmVyOjpiZWZvcmUsXG4gICAgJl9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgIC5pcy1hY3RpdmUgJiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKCRoYW1idXJnZXItc2l6ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9faW5uZXIge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgtJGhhbWJ1cmdlci1ib3JkZXItc2l6ZSAvIDIpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtKCgkYnV0dG9uLXNpemUtaWNvbiAtICRoYW1idXJnZXItc2l6ZSkgLyAyKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgIC5pcy1hY3RpdmUgJiB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19pbm5lcjo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IHJlbSgkaGFtYnVyZ2VyLXNpemUgKiAwLjc2KTtcbiAgICAgICAgdG9wOiByZW0oLSRoYW1idXJnZXItc2l6ZSAqIDAuMyk7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCA3NW1zIGVhc2UgMC4xMnMsIG9wYWNpdHkgNzVtcyBlYXNlLCB3aWR0aCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wMzVzO1xuXG4gICAgICAgIC5pcy1hY3RpdmUgJiB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgNzVtcyBlYXNlLCBvcGFjaXR5IDc1bXMgZWFzZSAwLjEycztcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IHJlbSgkaGFtYnVyZ2VyLXNpemUgKiAwLjU2KTtcbiAgICAgICAgYm90dG9tOiByZW0oLSRoYW1idXJnZXItc2l6ZSAqIDAuMyk7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSA3NW1zIGVhc2UgMC4xMnMsIHRyYW5zZm9ybSA3NW1zIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCB3aWR0aCAwLjI1ICsgMC4wMzVzO1xuXG4gICAgICAgIC5pcy1hY3RpdmUgJiB7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gNzVtcyBlYXNlLCB0cmFuc2Zvcm0gNzVtcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSAwLjEycztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tbGlnaHQge1xuICAgICAgICAuaGFtYnVyZ2VyX19pbm5lcixcbiAgICAgICAgLmhhbWJ1cmdlcl9faW5uZXI6OmJlZm9yZSxcbiAgICAgICAgLmhhbWJ1cmdlcl9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGlnaHQtY29sb3VyO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmpzIC5hY2NvcmRpb24ge1xuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgJjpob3Zlcjpub3QoW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSkge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGRleC1saWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSBzdmcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgkaDMtc2l6ZSk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oJGdyaWQgKiAzKTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbG9yLCAkdHJhbnNpdGlvbi1ib3JkZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDUwJSwgMCwgbnVsbCwgbnVsbCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKC03cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyAkZWFzaW5nO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19ib2R5IHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zNXMgZWFzZS1vdXQ7XG4gICAgfVxufVxuIiwiLm1hc2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogJG1hc2stcHJpbWFyeTtcbiAgICB6LWluZGV4OiA5OTk5OTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2NhbGVZKDEpIHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm1hc2stLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogJG1hc2stc2Vjb25kYXJ5O1xufVxuIiwiLyoqXG4gKiBAYXRvbSBMb2FkZXJcbiAqIEBzZWN0aW9uIExvYWRlclxuICogQG1hcmt1cFxuICogIDxpIGNsYXNzPVwiaWNvbi1sb2FkZXIgbG9hZGVyIGljb24tLXg0IGljb24tLWFjY2VudDFcIiBkYXRhLWdydW50aWNvbi1lbWJlZD48L2k+XG4gKi9cbi5sb2FkZXIge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiByb3RhdGUgMXMgaW5maW5pdGUgZm9yd2FyZHMgbGluZWFyO1xuICAgIGFuaW1hdGlvbjogcm90YXRlIDFzIGluZmluaXRlIGZvcndhcmRzIGxpbmVhcjtcbn1cbiIsIi8qKlxuICogQGF0b20gQ2FyZFxuICogQHNlY3Rpb24gQ2FyZHNcbiAqIEBtb2RpZmllcnNcbiAqICAuY2FyZC0tc2hhZG93IFNoYWRvdyBhcm91bmQgY2FyZCB3aGVuIGhvdmVyZWRcbiAqICAuY2FyZC0tdGVhbSBJbmNsdWRlcyBvdmVybGF5XG4gKiAgLmNhcmQtLW92ZXJsYXkgQ2FyZCBpbm5lciBzaXRzIG9uIHRvcCBvZiBpbWFnZVxuICogIC5jYXJkLS1saWdodC1ob3ZlciBDYXJkIGxpbmsgYmFja2dyb3VuZCB3aGl0ZSBvbiBob3ZlclxuICogIC5jYXJkLS1saW5rZWQgRW50aXJlIGNhcmQgbGlua2VkXG4gKiAgLmNhcmQtLW5ld3MgTmV3cyBzcGVjaWZpYyBjYXJkXG4gKiAgLmNhcmQtLW5ld3Mtc3RpY2t5IFN0aWNreSBuZXdzIHNwZWNpZmljIGNhcmRcbiAqL1xuXG4uY2FyZCB7XG4gICAgJl9fd3JhcCB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRncmlkKjM7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZCozO1xuICAgICAgPiBkaXYge1xuICAgICAgICAgcGFkZGluZy1sZWZ0OiAkZ3JpZCozO1xuICAgICAgICAgcGFkZGluZy1yaWdodDogJGdyaWQqMztcbiAgICAgIH1cbiAgICB9XG4gICAgJl9fbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGxpbmstcmVzZXQobm9uZSk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1hbGw7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgLmNhcmQtLXRlYW1fX292ZXJsYXkge1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAkZWFzaW5nO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jYXJkLS10ZWFtX19xdW90ZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eS1ob3ZlcigwLjVzLCB0cmFuc2Zvcm0gMC41cyAkZWFzaW5nKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY2FyZC0tdGVhbV9faWNvbnMgc3ZnICoge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX2ljb25zIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCByZW0oJGdyaWQgKiAzKSwgcmVtKCRncmlkICogMyksIDAsIG51bGwpO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqIDEuNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNb2RpZmllcnNcbiAgICAmLS1zaGFkb3cge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmRfX2xpbmsge1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tb3ZlcmxheSB7XG4gICAgICAgIC5jYXJkX19pbm5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIDAsIDAsIDAsIDEpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLWxpZ2h0LWhvdmVyIHtcbiAgICAgICAgLmNhcmRfX2xpbmsge1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS10ZWFtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3V0dGVyLXdpZHRoKTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20sICR1bnRpbDogbWQpIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzbisyKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fb3ZlcmxheSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgIC5jYXJkX19pY29ucyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogcmVtKDE3cHgpO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjRweCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIDAsIG51bGwsIDAsIDIpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eSgwLjVzKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0ZXJ0aWFyeTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJl9faWNvbnMge1xuICAgICAgICAgICAgYTpob3ZlcixcbiAgICAgICAgICAgIGE6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgyMHB4KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgyMHB4KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1vcGFjaXR5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3ZnICoge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRjaGFyY29hbDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuNXMgJGVhc2luZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmX19xdW90ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi12aXNpYmlsaXR5KDAuNXMsIHRyYW5zZm9ybSAwLjVzICRlYXNpbmcpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgbnVsbCwgbnVsbCwgMCwgMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwcHgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0YXRlc1xuICAgICAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi12aXNpYmlsaXR5LWhvdmVyKDAuNXMpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB4cywgJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgICYtMSxcbiAgICAgICAgICAgICAgICAmLTMge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYtMixcbiAgICAgICAgICAgICAgICAmLTMge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYtLWJvYXJkIHtcbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXZpc2liaWxpdHkoMC41cyk7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmRfX2lubmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHB1c2gtLWF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg0MDBweCk7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmRfX2xpbmsge1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIC5jYXJkLS1ib2FyZF9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eS1ob3ZlcigwLjdzKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tbGlua2VkIHtcbiAgICAgICAgJl9fbGluayBpIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLXRyYW5zZm9ybTtcbiAgICAgICAgfVxuICAgICAgICAuY2FyZF9fbGluayB7XG4gICAgICAgICAgICBjb2xvcjogJGNoYXJjb2FsO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgIC5jYXJkLS1saW5rZWRfX2xpbmsgaSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChyZW0oJGdyaWQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmRfX2xpbmstZmFrZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLW5ld3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oJGdyaWQgKiAzKTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oNDZweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXN0aWNreSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgICAgICAgICAuY2FyZF9fbGluayB7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDQ2cHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbmNsdWRlIG1xLWFkZC1icmVha3BvaW50KHNlY3Rpb25pbWFnZXNtYWxsLCA2MDBweCk7XG5cbi8qKlxuICogQGF0b20gU2VjdGlvblxuICogQHNlY3Rpb24gU2VjdGlvbnNcbiAqIEBtYXJrdXBcbiAqICA8c2VjdGlvbiBjbGFzcz1cInNlY3Rpb25cIj5cbiAqICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBwLXR4MyBwLWJ4M1wiPlxuICogICAgICAgICAgU2VjdGlvblxuICogICAgICA8L2Rpdj5cbiAqICA8L3NlY3Rpb24+XG4gKiAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLWxpZ2h0XCI+XG4gKiAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXIgcC10eDMgcC1ieDNcIj5cbiAqICAgICAgICAgIFNlY3Rpb24gLSBsaWdodFxuICogICAgICA8L2Rpdj5cbiAqICA8L3NlY3Rpb24+XG4gICogIDxzZWN0aW9uIGNsYXNzPVwic2VjdGlvbiBzZWN0aW9uLS1kYXJraXNoXCI+XG4gKiAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXIgcC10eDMgcC1ieDNcIj5cbiAqICAgICAgICAgIFNlY3Rpb24gLSBkYXJraXNoXG4gKiAgICAgIDwvZGl2PlxuICogIDwvc2VjdGlvbj5cbiAqICA8c2VjdGlvbiBjbGFzcz1cInNlY3Rpb24gc2VjdGlvbi0tZGFya1wiPlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyIHAtdHgzIHAtYngzXCI+XG4gKiAgICAgICAgICBTZWN0aW9uIC0gZGFya1xuICogICAgICA8L2Rpdj5cbiAqICA8L3NlY3Rpb24+XG4gKiAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLWRhcmtlclwiPlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyIHAtdHgzIHAtYngzXCI+XG4gKiAgICAgICAgICBTZWN0aW9uIC0gZGFya2VyXG4gKiAgICAgIDwvZGl2PlxuICogIDwvc2VjdGlvbj5cbiAqICA8c2VjdGlvbiBjbGFzcz1cInNlY3Rpb24gc2VjdGlvbi0tdGVydGlhcnlcIj5cbiAqICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBwLXR4MyBwLWJ4M1wiPlxuICogICAgICAgICAgU2VjdGlvbiAtIHRlcnRpYXJ5XG4gKiAgICAgIDwvZGl2PlxuICogIDwvc2VjdGlvbj5cbiAqICA8c2VjdGlvbiBjbGFzcz1cInNlY3Rpb24gc2VjdGlvbi0tdHVuYVwiPlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyIHAtdHgzIHAtYngzXCI+XG4gKiAgICAgICAgICBTZWN0aW9uIC0gdHVuYVxuICogICAgICA8L2Rpdj5cbiAqICA8L3NlY3Rpb24+XG4gKiAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLWRleFwiPlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyIHAtdHgzIHAtYngzXCI+XG4gKiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi0tZGV4X19jb250ZW50XCI+XG4gKiAgICAgICAgICAgICAgU2VjdGlvbiAtIGRleFxuICogICAgICAgICAgPC9kaXY+XG4gKiAgICAgIDwvZGl2PlxuICogIDwvc2VjdGlvbj5cbiAqICA8c2VjdGlvbiBjbGFzcz1cInNlY3Rpb24gc2VjdGlvbi0tZGFya1wiPlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gKiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi0tcGFkXCI+XG4gKiAgICAgICAgICAgICAgU2VjdGlvbiAtIHBhZGRpbmdcbiAqICAgICAgICAgIDwvZGl2PlxuICogICAgICA8L2Rpdj5cbiAqICA8L3NlY3Rpb24+XG4gKiAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLXRhbGxcIj5cbiAqICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICogICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tLXBhZFwiPlxuICogICAgICAgICAgICAgIFNlY3Rpb24gLSB0YWxsICgxMDB2aClcbiAqICAgICAgICAgIDwvZGl2PlxuICogICAgICA8L2Rpdj5cbiAqICA8L3NlY3Rpb24+XG4gKiAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLWNlbnRlclwiPlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gKiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi0tcGFkXCI+XG4gKiAgICAgICAgICAgICAgU2VjdGlvbiAtIGNlbnRlciAodmVydGljYWwpXG4gKiAgICAgICAgICA8L2Rpdj5cbiAqICAgICAgPC9kaXY+XG4gKiAgPC9zZWN0aW9uPlxuICogIDxzZWN0aW9uIGNsYXNzPVwic2VjdGlvbiBzZWN0aW9uLS1kYXJrIHNlY3Rpb24tLXJvdW5kZWRcIj5cbiAqICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICogICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tLXBhZFwiPlxuICogICAgICAgICAgICAgIFNlY3Rpb24gLSByb3VuZGVkIGNvcm5lcnNcbiAqICAgICAgICAgIDwvZGl2PlxuICogICAgICA8L2Rpdj5cbiAqICA8L3NlY3Rpb24+XG4gKiAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLWZpcnN0XCI+XG4gKiAgICAgICBTZWN0aW9uIC0gcGFkZGluZyB0b3AgdG8gYWxsb3cgZm9yIGZpeGVkIGhlYWRlciBoZWlnaHRcbiAqICA8L3NlY3Rpb24+XG4gKiAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLWJhbm5lciBzZWN0aW9uLS1wcm9kdWN0XCI+XG4gKiAgICAgICBTZWN0aW9uIC0gaW1hZ2UgcG9zaXRpb25lZCBib3R0b20gcmlnaHRcbiAqICAgICAgIDxpbWcgc3JjPVwiL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE3LzA3L2Jhbm5lci5zdmdcIiBhbHQ9XCJcIiBjbGFzcz1cInNlY3Rpb24tLXByb2R1Y3RfX2ltYWdlIGJsb2NrXCI+XG4gKiAgPC9zZWN0aW9uPlxuICovXG4uc2VjdGlvbiB7XG4gICAgJi0tbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgICYtLWRhcmtpc2gge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzNDM4O1xuICAgIH1cbiAgICAmLS1kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNoYXJjb2FsO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL2xpbmVzLWxpZ2h0LnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7XG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxuICAgICYtLWRhcmtlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICB9XG4gICAgJi0tdGVydGlhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVydGlhcnk7XG4gICAgfVxuICAgICYtLXR1bmEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHVuYTtcbiAgICB9XG4gICAgJi0tZGV4IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRleDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDYwMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS1wYWQge1xuICAgICAgICBwYWRkaW5nOiByZW0oJGdyaWQgKiAzKTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgkZ3JpZCAqIDUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLXRhbGwge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICB9XG4gICAgJi0tY2VudGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oMzBweCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzBweCk7XG4gICAgfVxuICAgICYtLXJvdW5kZWQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0oMTBweCk7XG4gICAgfVxuICAgICYtLWZpcnN0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgkaGVhZGVyLWhlaWdodC1zbWFsbCArIDMwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgkaGVhZGVyLWhlaWdodC1sYXJnZSArIDMwcHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLXByb2R1Y3Qge1xuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oODBweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg4MHB4KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgyMHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqIDUpO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ24oZmFsc2UsIHRydWUsIGFic29sdXRlKTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbih0cnVlLCB0cnVlLCBhYnNvbHV0ZSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSg1MHB4KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg1MHB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oJGdyaWQgKiAzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pY29uX19zZWNvbmRhcnkge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRjaGFyY29hbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTIwcHgpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg1MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc2VjdGlvbmltYWdlc21hbGwpIHtcbiAgICAgICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oOTBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNlY3Rpb25pbWFnZXNtYWxsLCAkdW50aWw6IHNtKSB7XG4gICAgICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDE0MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgbnVsbCwgMyUsIHJlbSgyMHB4KSwgbnVsbCk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgyMDBweCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjAwcHgpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtKDMwcHgpO1xuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDEwMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTAwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oJGdyaWQgKiAxMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgzMDBweCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMzAwcHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSg4MHB4KTtcbiAgICAgICAgICAgICAgICByaWdodDogMTAlO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgxNTBweCk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDE1MHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDE3MHB4KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE2MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMzgwcHgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDM4MHB4KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0oODBweCk7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMjE1cHgpO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgyMTVweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYtLWltYWdlIHtcbiAgICAgICAgbWluLWhlaWdodDogcmVtKDQwMHB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDUwMHB4KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSg2MDBweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tZnVsbC1wYWdlLWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oNTAwcHgpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg3NTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLW92ZXJsYXk6bm90KC5zZWN0aW9uLS1kZXgpOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG8oKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgMCwgMCwgMCwgMCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40KTtcbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvcyhyZWxhdGl2ZSwgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCwgMSk7XG5cbiAgICAgICAgICAgIDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICsgLmludHJvIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgkZ3JpZCAqIDUpO1xuICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKCRncmlkICogMTApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYtLWF1ZGllbmNlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogNSk7XG5cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDEyMHB4KTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oNTBweCk7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzZWN0aW9uaW1hZ2VzbWFsbCkge1xuICAgICAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSg5MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc2VjdGlvbmltYWdlc21hbGwsICR1bnRpbDogc20pIHtcbiAgICAgICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTQwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogMTApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgxNzBweCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgxNjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuaWNvbnMge1xuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgkZ3JpZCk7XG4gICAgfVxuICAgIGEge1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIHN2ZyAqIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyAqIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWZpbGw7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIExvY2F0aW9uc1xuICpcbiAqIEBtb2xlY3VsZSBMb2NhdGlvblxuICogQG1hcmt1cFxuICogIDxkaXYgY2xhc3M9XCJyb3cgbG9jYXRpb24gbm8tbVwiPlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTEyIGNvbC1zbS02IGxvY2F0aW9uX19pbWFnZSBuby1wXCI+XG4gKiAgICAgICAgICA8ZGl2IGNsYXNzPVwicmF0aW8gcmF0aW8tLWxvY2F0aW9uIHJlbGF0aXZlIHNlY3Rpb24tLWRhcmtcIj5cbiAqICAgICAgICAgICAgICA8YSBocmVmPVwiXCIgY2xhc3M9XCJpbWFnZS1ob3ZlclwiPlxuICogICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJsb2NhdGlvbl9fdGl0bGUgbGlnaHQgaDIgYm9sZFwiPk1lbGJvdXJuZTwvaDM+XG4gKiAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cDovL3ZpYS5wbGFjZWhvbGRlci5jb20vNTg0eDQyMFwiIGFsdD1cIlwiIGNsYXNzPVwib2JqZWN0LWZpdCBvYmplY3QtZml0LS1jb250YWluXCI+XG4gKiAgICAgICAgICAgICAgPC9hPlxuICogICAgICAgICAgPC9kaXY+XG4gKiAgICAgIDwvZGl2PlxuICogICAgICA8ZGl2IGNsYXNzPVwiY29sLXhzLTEyIGNvbC1zbS02IG5vLXBcIj5cbiAqICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLS1saWdodCBzZWN0aW9uLS1wYWQgbG9jYXRpb25fX2NvbnRlbnRcIj5cbiAqICAgICAgICAgICAgICA8cD5cbiAqICAgICAgICAgICAgICAgICAgTGV2ZWwgNyw8YnI+XG4gKiAgICAgICAgICAgICAgICAgIDQ1OSBMaXR0bGUgQ29sbGlucyBTdHJlZXQsPGJyPlxuICogICAgICAgICAgICAgICAgICBNZWxib3VybmUsIDMwMDAsIEF1c3RyYWxpYTxicj5cbiAqICAgICAgICAgICAgICAgICAgKzYxIDMgOTAwOCA1OTg2XG4gKiAgICAgICAgICAgICAgPC9wPlxuICogICAgICAgICAgICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cImJ1dHRvbiBidXR0b24tLXNvZnQgYnV0dG9uLS1wYWQgbG9jYXRpb25fX2J1dHRvblwiPlxuICogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhcHRpb25cIj5HZXQgZGlyZWN0aW9uczwvc3Bhbj5cbiAqICAgICAgICAgICAgICA8L2E+XG4gKiAgICAgICAgICA8L2Rpdj5cbiAqICAgICAgPC9kaXY+XG4gKiAgPC9kaXY+XG4gKiAgPGRpdiBjbGFzcz1cInJvdyByZXZlcnNlIGxvY2F0aW9uIG5vLW1cIj5cbiAqICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBjb2wtc20tNiBsb2NhdGlvbl9faW1hZ2Ugbm8tcFwiPlxuICogICAgICAgICAgPGRpdiBjbGFzcz1cInJhdGlvIHJhdGlvLS1sb2NhdGlvbiByZWxhdGl2ZSBzZWN0aW9uLS1kYXJrXCI+XG4gKiAgICAgICAgICAgICAgPGEgaHJlZj1cIlwiIGNsYXNzPVwiaW1hZ2UtaG92ZXJcIj5cbiAqICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwibG9jYXRpb25fX3RpdGxlIGxpZ2h0IGgyIGJvbGRcIj5NZWxib3VybmU8L2gzPlxuICogICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzU4NHg0MjBcIiBhbHQ9XCJcIiBjbGFzcz1cIm9iamVjdC1maXQgb2JqZWN0LWZpdC0tY29udGFpblwiPlxuICogICAgICAgICAgICAgIDwvYT5cbiAqICAgICAgICAgIDwvZGl2PlxuICogICAgICA8L2Rpdj5cbiAqICAgICAgPGRpdiBjbGFzcz1cImNvbC14cy0xMiBjb2wtc20tNiBuby1wXCI+XG4gKiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi0tbGlnaHQgc2VjdGlvbi0tcGFkIGxvY2F0aW9uX19jb250ZW50XCI+XG4gKiAgICAgICAgICAgICAgPHA+XG4gKiAgICAgICAgICAgICAgICAgIExldmVsIDcsPGJyPlxuICogICAgICAgICAgICAgICAgICA0NTkgTGl0dGxlIENvbGxpbnMgU3RyZWV0LDxicj5cbiAqICAgICAgICAgICAgICAgICAgTWVsYm91cm5lLCAzMDAwLCBBdXN0cmFsaWE8YnI+XG4gKiAgICAgICAgICAgICAgICAgICs2MSAzIDkwMDggNTk4NlxuICogICAgICAgICAgICAgIDwvcD5cbiAqICAgICAgICAgICAgICA8YSBocmVmPVwiXCIgY2xhc3M9XCJidXR0b24gYnV0dG9uLS1zb2Z0IGJ1dHRvbi0tcGFkIGxvY2F0aW9uX19idXR0b25cIj5cbiAqICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjYXB0aW9uXCI+R2V0IGRpcmVjdGlvbnM8L3NwYW4+XG4gKiAgICAgICAgICAgICAgPC9hPlxuICogICAgICAgICAgPC9kaXY+XG4gKiAgICAgIDwvZGl2PlxuICogIDwvZGl2PlxuICovXG4ubG9jYXRpb24ge1xuICAgICZfX3RpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ24odHJ1ZSwgdHJ1ZSwgYWJzb2x1dGUpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gYXV0byAwIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKipcbiAqIEBtb2xlY3VsZSBPYmplY3QgZml0XG4gKiBAZGVzY3JpcHRpb25cbiAqICBIYW5kbGUgb2JqZWN0IGZpdCBpbWFnZSBwb3NpdGlvbmluZywgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHJhdGlvIGF0b21cbiAqIEBtYXJrdXBcbiAqICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgcmF0aW8gcmF0aW8tLTE2eDlcIj5cbiAqICAgICAgPGltZyBzcmM9XCJodHRwOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS81ODR4OTAwXCIgYWx0PVwiXCIgY2xhc3M9XCJvYmplY3QtZml0IG9iamVjdC1maXQtLWNvbnRhaW5cIj5cbiAqICA8L2Rpdj5cbiAqL1xuLm9iamVjdC1maXQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvYmplY3QtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogY292ZXI7IG9iamVjdC1wb3NpdGlvbjogNTAlIDUwJTtcIjtcblxuICAgICYtLWNvbnRhaW4ge1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb250YWluOyBvYmplY3QtcG9zaXRpb246IDUwJSA1MCU7XCI7XG4gICAgfVxufVxuIiwiLyoqXG4gKiBAYXRvbSAucmF0aW9cbiAqIEBzZWN0aW9uIEhlbHBlcnMgPiBSYXRpb1xuICogQGRlc2NyaXB0aW9uXG4gKiAgQ29udGFpbmVyIGZvciBkZXRlcm1pbmluZyBhc3BlY3QgcmF0aW8gaW1hZ2Ugc2hvdWxkIGFkaGVyZSB0b1xuICogQG1vZGlmaWVyc1xuICogIC5yYXRpby0tMTZ4OSAxNiB4IDkgcmF0aW9cbiAqICAucmF0aW8tLTl4MTYgOSB4IDE2IHJhdGlvXG4gKiAgLnJhdGlvLS02NiA2NiUgcmF0aW9cbiAqICAucmF0aW8tLTEwMCAxMDAlIHJhdGlvXG4gKiAgLnJhdGlvLS1sb2NhdGlvbiA1ODUgeCA0MjAgcmF0aW8gLSBVc2VkIGZvciBsb2NhdGlvbnNcbiAqIEBtYXJrdXBcbiAqICAgPGRpdiBzdHlsZT1cImZsb2F0OiBsZWZ0OyBtYXJnaW4tcmlnaHQ6IDEwcHg7XCI+PGRpdiBjbGFzcz1cInJhdGlvIHJlbGF0aXZlIHJhdGlvLS0xNng5XCIgc3R5bGU9XCJ3aWR0aDogMjAwcHg7XCI+PGltZyBzcmM9XCJodHRwOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS8xNjB4OTBcIiBhbHQ9XCJcIiBjbGFzcz1cImltZy1zdHJldGNoIGJsb2NrXCI+PC9kaXY+PC9kaXY+XG4gKiAgIDxkaXYgc3R5bGU9XCJmbG9hdDogbGVmdDsgbWFyZ2luLXJpZ2h0OiAxMHB4O1wiPjxkaXYgY2xhc3M9XCJyYXRpbyByZWxhdGl2ZSByYXRpby0tOXgxNlwiIHN0eWxlPVwid2lkdGg6IDIwMHB4O1wiPjxpbWcgc3JjPVwiaHR0cDovL3ZpYS5wbGFjZWhvbGRlci5jb20vOTB4MTYwXCIgYWx0PVwiXCIgY2xhc3M9XCJpbWctc3RyZXRjaCBibG9ja1wiPjwvZGl2PjwvZGl2PlxuICogICA8ZGl2IHN0eWxlPVwiZmxvYXQ6IGxlZnQ7IG1hcmdpbi1yaWdodDogMTBweDtcIj48ZGl2IGNsYXNzPVwicmF0aW8gcmVsYXRpdmUgcmF0aW8tLTY2XCIgc3R5bGU9XCJ3aWR0aDogMjAwcHg7XCI+PGltZyBzcmM9XCJodHRwOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS81NTB4NTUwXCIgYWx0PVwiXCIgY2xhc3M9XCJpbWctc3RyZXRjaCBibG9ja1wiPjwvZGl2PjwvZGl2PlxuICogICA8ZGl2IHN0eWxlPVwiZmxvYXQ6IGxlZnQ7IG1hcmdpbi1yaWdodDogMTBweDtcIj48ZGl2IGNsYXNzPVwicmF0aW8gcmVsYXRpdmUgcmF0aW8tLTEwMFwiIHN0eWxlPVwid2lkdGg6IDIwMHB4O1wiPjxpbWcgc3JjPVwiaHR0cDovL3ZpYS5wbGFjZWhvbGRlci5jb20vNTUweDU1MFwiIGFsdD1cIlwiIGNsYXNzPVwiaW1nLXN0cmV0Y2ggYmxvY2tcIj48L2Rpdj48L2Rpdj5cbiAgKiAgIDxkaXYgc3R5bGU9XCJmbG9hdDogbGVmdDsgbWFyZ2luLXJpZ2h0OiAxMHB4O1wiPjxkaXYgY2xhc3M9XCJyYXRpbyByZWxhdGl2ZSByYXRpby0tbG9jYXRpb25cIiBzdHlsZT1cIndpZHRoOiAyMDBweDtcIj48aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzU4NXg0MjBcIiBhbHQ9XCJcIiBjbGFzcz1cImltZy1zdHJldGNoIGJsb2NrXCI+PC9kaXY+PC9kaXY+XG4gKi9cbi5yYXRpbyB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIG51bGwsIG51bGwsIDApO1xuICAgIH1cbn1cbi5yYXRpby0tMTZ4OSB7XG4gICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoOS8xNik7XG59XG4ucmF0aW8tLTl4MTYge1xuICAgIHBhZGRpbmctYm90dG9tOiBwZXJjZW50YWdlKDE2LzkpO1xufVxuLnJhdGlvLS02NiB7XG4gICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoMjUwLzM3NSk7XG59XG4ucmF0aW8tLTEwMCB7XG4gICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoNTUwLzU1MCk7XG59XG4ucmF0aW8tLWxvY2F0aW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcGVyY2VudGFnZSg0MjAvNTg1KTtcbn1cbiIsIi8qKlxuICogQGF0b20gSW1hZ2UgaG92ZXIgZWZmZWN0XG4gKiBAc2VjdGlvbiBJbWFnZVxuICogQG1hcmt1cFxuICogIDxhIGhyZWY9XCJcIiBjbGFzcz1cImltYWdlLWhvdmVyXCI+PGltZyBzcmM9XCJodHRwOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS80MDB4NDAwXCIgYWx0PVwiXCI+PC9hPlxuICovXG4uaW1hZ2UtaG92ZXIge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgJGVhc2luZywgdHJhbnNmb3JtIDAuNnMgJGVhc2luZztcbiAgICB9XG59XG5cbmltZy5hbGlnbmxlZnQsXG5pbWcuYWxpZ25yaWdodCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiBAYXRvbSBJbWFnZSBhbGlnbiByaWdodFxuICogQHNlY3Rpb24gSW1hZ2VcbiAqIEBtYXJrdXBcbiAqICAgPGltZyBzcmM9XCJodHRwOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS80MDB4NDAwXCIgYWx0PVwiXCIgY2xhc3M9XCJhbGlnbnJpZ2h0XCI+XG4gKiAgIDxkaXYgY2xhc3M9XCJ3cC1jYXB0aW9uIGFsaWducmlnaHRcIj48aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHg0MDBcIiBhbHQ9XCJcIiB3aWR0aD1cIjMwMFwiIGhlaWdodD1cIjI5NlwiPjxwIGNsYXNzPVwid3AtY2FwdGlvbi10ZXh0XCI+VGhpcyBpcyBhIGNhcHRpb248L3A+PC9kaXY+XG4gKi9cbi5hbGlnbnJpZ2h0IHtcbiAgICBtYXJnaW46IDAgMCByZW0oJGdyaWQgKiA0KTtcblxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oJGdyaWQgKiA4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogOCk7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtKC0kZ3JpZCAqIDgpO1xuICAgIH1cblxuICAgICYud3AtY2FwdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBAYXRvbSBJbWFnZSBhbGlnbiBsZWZ0XG4gKiBAc2VjdGlvbiBJbWFnZVxuICogQG1hcmt1cFxuICogICA8aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHg0MDBcIiBhbHQ9XCJcIiBjbGFzcz1cImFsaWdubGVmdFwiPlxuICogICA8ZGl2IGNsYXNzPVwid3AtY2FwdGlvbiBhbGlnbmxlZnRcIj48aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHg0MDBcIiBhbHQ9XCJcIiB3aWR0aD1cIjMwMFwiIGhlaWdodD1cIjI5NlwiPjxwIGNsYXNzPVwid3AtY2FwdGlvbi10ZXh0XCI+VGhpcyBpcyBhIGNhcHRpb248L3A+PC9kaXY+XG4gKi9cbi5hbGlnbmxlZnQge1xuICAgIG1hcmdpbjogMCAwIHJlbSgkZ3JpZCAqIDQpO1xuXG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oJGdyaWQgKiA4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogOCk7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgtJGdyaWQgKiA4KTtcbiAgICB9XG5cbiAgICAmLndwLWNhcHRpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBAYXRvbSBJbWFnZSBhbGlnbiBjZW50ZXJcbiAqIEBzZWN0aW9uIEltYWdlXG4gKiBAbWFya3VwXG4gKiAgIDxpbWcgc3JjPVwiaHR0cDovL3ZpYS5wbGFjZWhvbGRlci5jb20vNDAweDQwMFwiIGFsdD1cIlwiIGNsYXNzPVwiYWxpZ25jZW50ZXJcIj5cbiAqICAgPGRpdiBjbGFzcz1cIndwLWNhcHRpb24gYWxpZ25jZW50ZXJcIj48aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzEyMDB4MTIwMFwiIGFsdD1cIlwiIHdpZHRoPVwiMzAwXCIgaGVpZ2h0PVwiMjk2XCI+PHAgY2xhc3M9XCJ3cC1jYXB0aW9uLXRleHRcIj5UaGlzIGlzIGEgY2FwdGlvbjwvcD48L2Rpdj5cbiAqL1xuLmFsaWduY2VudGVyIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oJGdyaWQpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqIDQpO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgIEBpbmNsdWRlIHB1c2gtLXNpZGVzKGNhbGMoLTI1JSArICN7JHBhZ2UtZ3V0dGVyLS10YWJsZXR9IC8gMikpO1xuICAgICAgICB3aWR0aDogMTM1JSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oJGdyaWQgKiA0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogNyk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICBAaW5jbHVkZSBwdXNoLS1zaWRlcyhjYWxjKC0yOCUgKyAjeyRndXR0ZXItd2lkdGh9IC8gMikpO1xuICAgICAgICB3aWR0aDogMTU2JSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYud3AtY2FwdGlvbiB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gLndwLWNhcHRpb24tdGV4dFxuICogQHNlY3Rpb24gSW1hZ2VcbiAqIEBkZXNjcmlwdGlvblxuICogIEltYWdlIGNhcHRpb24gdGV4dFxuICogQG1hcmt1cFxuICogIDxwIGNsYXNzPVwid3AtY2FwdGlvbi10ZXh0XCI+VGhpcyBpcyBhIGNhcHRpb248L3A+XG4gKi9cbi53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0cHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qKlxuICogQGF0b20gLmltZy1yZXNwb25zaXZlXG4gKiBAc2VjdGlvbiBJbWFnZVxuICogQGRlc2NyaXB0aW9uXG4gKiAgSW1hZ2UgbWF4IHdpZHRoIDEwMCVcbiAqIEBtYXJrdXBcbiAqICA8aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHg0MDBcIiBhbHQ9XCJcIiBjbGFzcz1cImltZy1yZXNwb25zaXZlXCI+XG4gKi9cbi5pbWctcmVzcG9uc2l2ZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiBAYXRvbSAuaW1nLXN0cmV0Y2hcbiAqIEBzZWN0aW9uIEltYWdlXG4gKiBAZGVzY3JpcHRpb25cbiAqICBJbWFnZSB3aWR0aCAxMDAlXG4gKiBAbWFya3VwXG4gKiAgPGltZyBzcmM9XCJodHRwOi8vdmlhLnBsYWNlaG9sZGVyLmNvbS80MDB4NDAwXCIgYWx0PVwiXCIgY2xhc3M9XCJpbWctc3RyZXRjaFwiPlxuICovXG4uaW1nLXN0cmV0Y2gge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiBAYXRvbSAubGF6eWxvYWRcbiAqIEBzZWN0aW9uIEltYWdlXG4gKiBAZGVzY3JpcHRpb25cbiAqICBMYXp5bG9hZCBpbWFnZVxuICogQG1hcmt1cFxuICogIDxpbWcgc3JjPVwiaHR0cDovL3ZpYS5wbGFjZWhvbGRlci5jb20vNDAweDQwMFwiIGFsdD1cIlwiIGNsYXNzPVwibGF6eWxvYWQgaW1nLWxhenlsb2FkXCI+XG4gKi9cbi5pbWctbGF6eWxvYWQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tb3BhY2l0eTtcblxuICAgICYubGF6eWxvYWRlZCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG4vKipcbiAqIEBhdG9tIC5pbWctcm91bmRlZFxuICogQHNlY3Rpb24gSW1hZ2VcbiAqIEBkZXNjcmlwdGlvblxuICogIFJvdW5kZWQgaW1hZ2VcbiAqIEBtYXJrdXBcbiAqICA8aW1nIHNyYz1cImh0dHA6Ly92aWEucGxhY2Vob2xkZXIuY29tLzQwMHg0MDBcIiBhbHQ9XCJcIiBjbGFzcz1cImxhenlsb2FkIGltZy1sYXp5bG9hZCBpbWctcm91bmRlZCBibG9ja1wiPlxuICovXG4uaW1nLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgxMDBweCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsIi5pbWFnZXMge1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgICZfX3NlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBwdWxsO1xuICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgICAmX19jYXB0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgfVxufVxuIiwiLmxvZ28ge1xuICAgICYtLWdyZWVuc3luYyB7XG4gICAgICAgIHdpZHRoOiByZW0oMTUwcHgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgyOXB4KTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxNTBweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgyOXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyMzZweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg0NnB4KTtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDIzNnB4KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg0NnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgZmlsbDogIzI1MjgyYjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4yNXMgJGVhc2luZztcbiAgICAgICAgfVxuXG4gICAgICAgIC5oYXMtYmFubmVyICYge1xuICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci1pcy1zb2xpZCAmIHtcbiAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgIGZpbGw6ICMyNTI4MmI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1kZXgge1xuICAgICAgICB3aWR0aDogcmVtKDY4cHgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgyOXB4KTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDUuNzVyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMC43NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogJGRleC1saWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIHBhdGguaWNvbl9fcHJpbWFyeSB7XG4gICAgICAgICAgICBmaWxsOiAkZGV4O1xuXG4gICAgICAgICAgICAvLyAuaGFzLWJhbm5lciAmIHtcbiAgICAgICAgICAgIC8vICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICAuaGVhZGVyLWlzLXNvbGlkICYge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRkZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnN0aWNreS13cmFwcGVyIHtcbiAgICB3aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogNSk7XG5cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNvY2lhbCB7XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAmX19saW5rcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBsaXN0LWlubGluZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBsaW5rLXJlc2V0O1xuICAgICAgICB3aWR0aDogcmVtKDcwcHgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSg3MHB4KTtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tb3BhY2l0eTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIHN2ZyAqIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzdmcgKiB7XG4gICAgICAgIGZpbGw6ICRjaGFyY29hbDtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYWxsO1xuICAgIH1cbn1cbiIsIi8qKlxuICogQGF0b20gUHVsbG91dFxuICogQHNlY3Rpb24gUHVsbG91dFxuICogQGRlc2NyaXB0aW9uXG4gKiAgU2xpZGVzIGluIGZyb20gc2lkZSB3aGVuIHRyaWdnZXJlZFxuICogQG1vZGlmaWVyc1xuICogIC5wdWxsb3V0LS1sZWZ0IFNsaWRlcyBpbiBmcm9tIGxlZnQgdG8gcmlnaHRcbiAqICAucHVsbG91dC0tcmlnaHQgU2xpZGVzIGluIGZyb20gcmlnaHQgdG8gbGVmdFxuICovXG4ucHVsbG91dCB7XG4gICAgQGluY2x1ZGUgcG9zKGZpeGVkLCAwLCBudWxsLCBudWxsLCBudWxsLCAkcHVsbG91dC16KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgJGVhc2luZztcblxuICAgICZfX3JldHVybiBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oJGdyaWQpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKC0zcHgpO1xuICAgIH1cblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRncmlkICogNSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oJGdyaWQgKiA1KTtcbiAgICB9XG5cbiAgICAvLyBNb2RpZmllcnNcbiAgICAmLS1sZWZ0IHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tcmlnaHQge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5wdWxsb3V0LWlzLW9wZW4ge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsIi8qKlxuICogQGF0b20gTm8gaW1hZ2VcbiAqIEBzZWN0aW9uIE5vIGltYWdlXG4gKiBAZGVzY3JpcHRpb25cbiAqICBQbGFjZWhvbGRlciBmb3Igd2hlbiBpbWFnZXMgYXJlbid0IGF2YWlsYWJsZVxuICogQG1hcmt1cFxuICogIDxkaXYgY2xhc3M9XCJub2ltYWdlXCI+XG4gKiAgICAgIDxpbWdcbiAqICAgICAgICAgICBkYXRhLXNpemVzPVwiYXV0b1wiXG4gKiAgICAgICAgICAgZGF0YS1zcmM9XCJodHRwOi8vd3d3LmdyZWVuc3luYy5kZXYvd3AtY29udGVudC90aGVtZXMvZ3JlZW5zeW5jL3N0YXRpYy9pbWcvbm9pbWFnZS5wbmdcIlxuICogICAgICAgICAgIGNsYXNzPVwibGF6eWxvYWQgaW1nLXN0cmV0Y2hcIlxuICogICAgICAgICAgIGFsdD1cIkdyZWVuU3luYyBob3N0cyBWaWN0b3JpYW4gRW5lcmd5IE1pbmlzdGVyIGZvciBiYXR0ZXJ5IHN0b3JhZ2UgYW5ub3VuY2VtZW50XCI+XG4gKiAgPC9kaXY+XG4gKi9cbi5ub2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5yYXRpbyAmIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCAwLCAwLCBudWxsLCBudWxsKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qKlxuICogQGF0b20gU2VwYXJhdG9yXG4gKiBAc2VjdGlvbiBTZXBhcmF0b3JcbiAqIEBtYXJrdXBcbiAqICA8c3BhbiBjbGFzcz1cInNlcGFyYXRvclwiPjwvc3Bhbj5cbiAqL1xuLnNlcGFyYXRvciB7XG4gICAgd2lkdGg6IHJlbSgzcHgpO1xuICAgIGhlaWdodDogcmVtKDNweCk7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDNweCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuMyk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luOiByZW0oLTJweCkgcmVtKCRncmlkIC8gMikgMDtcbn1cbiIsIi5hdWRpZW5jZS1tYXAge1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgMTAwJSwgbnVsbCwgbnVsbCwgbnVsbCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUxLjUlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDMzJSwgLTU3LjUlKTtcbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMzB2dztcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oMTIwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDExJSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgtNTBweCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgtNTBweCk7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogOTV2dztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOS42JSk7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgICAgICB3aWR0aDogODB2dztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTIuNiUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2xvY2F0aW9ucyxcbiAgICAmX19sb2NhdGlvbnMgbGkge1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIDAsIDAsIDApO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2xvY2F0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICAmLmlzLWFjdGl2ZSAuYXVkaWVuY2UtbWFwX190b29sdGlwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eS1ob3ZlcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93ICR0cmFuc2l0aW9uLWR1cmF0aW9uICRlYXNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICAgICRwaW4tc2l6ZTogNDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkbztcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgNTAlLCBudWxsLCBudWxsLCA1MCUpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgkcGluLXNpemUpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oJHBpbi1zaXplKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSgkcGluLXNpemUpO1xuICAgICAgICAgICAgbWFyZ2luOiByZW0oLSRwaW4tc2l6ZSAvIDIpIDAgMCByZW0oLSRwaW4tc2l6ZSAvIDIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tdHJhbnNmb3JtO1xuXG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogcHVsc2UgMS41cyBpbmZpbml0ZSBmb3J3YXJkcztcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcHVsc2UgMS41cyBpbmZpbml0ZSBmb3J3YXJkcztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX190b29sdGlwIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCBudWxsLCBudWxsLCByZW0oMzVweCksIDUwJSwgMik7XG4gICAgICAgIHdpZHRoOiByZW0oMzQ1cHgpO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi12aXNpYmlsaXR5KCk7XG4gICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tb3BhY2l0eTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG87XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDEwMCUsIG51bGwsIG51bGwsIDUwJSk7XG4gICAgICAgICAgICBib3JkZXItdG9wOiByZW0oMTZweCkgc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW0oMTZweCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogcmVtKDE2cHgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oJGdyaWQgKiAyKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICB9XG59XG4iLCIuYXV0aG9yIHtcbiAgICAmX19pbWcge1xuICAgICAgICB3aWR0aDogcmVtKDcwcHgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSg3MHB4KTtcbiAgICB9XG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgfVxuICAgIHRpbWUge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgtNnB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5tYXAge1xuICAgIGhlaWdodDogcmVtKDMwMHB4KTtcbn1cbi5qcyB7XG4gICAgLm1hcmtlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC5tYXAtbG9hZGVkIC5tYXJrZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cbi5nbS1zdHlsZSAuZ20tc3R5bGUtaXcge1xuICAgIG1heC13aWR0aDogcmVtKDIwMHB4KTtcbiAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICBwYWRkaW5nOiByZW0oMTBweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcblxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDVweCk7XG4gICAgfVxufVxuIiwiJHRpbWVyLXNpemU6IDU1cHg7XG4kdGltZXItcmFkaXVzOiAyNjtcbiRwaTogMy4xNDE1OTI2NTM1OTtcblxuLnRpbWVyIHtcbiAgICB3aWR0aDogcmVtKDU1cHgpO1xuICAgIGhlaWdodDogcmVtKDU1cHgpO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICZfX3RpbWUsXG4gICAgJl9fYmcge1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIG51bGwsIG51bGwsIDApO1xuICAgICAgICB3aWR0aDogcmVtKCR0aW1lci1zaXplKTtcbiAgICAgICAgaGVpZ2h0OiByZW0oJHRpbWVyLXNpemUpO1xuICAgICAgICBmaWxsOiBub25lO1xuICAgICAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICB9XG4gICAgJl9fdGltZSB7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgY2lyY2xlIHtcbiAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDIgKiAkcGkgKiAkdGltZXItcmFkaXVzO1xuICAgICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDBweDtcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICAgICAgICAgIHN0cm9rZTogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2JnIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgc3Ryb2tlOiAjZDdkN2Q3O1xuICAgIH1cblxuICAgIC8vIFN0YXRlc1xuICAgICYuaXMtcGxheWluZyAudGltZXJfX3RpbWUgY2lyY2xlIHtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGNvdW50ZG93biA0cyBsaW5lYXIgaW5maW5pdGUgZm9yd2FyZHM7XG4gICAgICAgIGFuaW1hdGlvbjogY291bnRkb3duIDRzIGxpbmVhciBpbmZpbml0ZSBmb3J3YXJkcztcbiAgICB9XG4gICAgJi5pcy1wYXVzZWQgLnRpbWVyX190aW1lIGNpcmNsZSB7XG4gICAgICAgIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgY291bnRkb3duIHtcbiAgICBmcm9tIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDIgKiAkcGkgKiAkdGltZXItcmFkaXVzO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwcHg7XG4gICAgfVxufVxuQGtleWZyYW1lcyBjb3VudGRvd24ge1xuICAgIGZyb20ge1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogMiAqICRwaSAqICR0aW1lci1yYWRpdXM7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDBweDtcbiAgICB9XG59XG4iLCIud3AtcGFnZW5hdmkge1xuICAgIEBpbmNsdWRlIHB1c2gtLWF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgLnBhZ2VzLFxuICAgIC5sYXN0LFxuICAgIC5maXJzdCxcbiAgICAuZXh0ZW5kIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmN1cnJlbnQsXG4gICAgLnBhZ2UsXG4gICAgLm5leHRwb3N0c2xpbmssXG4gICAgLnByZXZpb3VzcG9zdHNsaW5rIHtcbiAgICAgICAgd2lkdGg6IHJlbSg1MHB4KTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNTBweCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oNTBweCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb2xvcjogJGNoYXJjb2FsO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jdXJyZW50IHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG4iLCIudGV4dHN3aXRjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLnNlbnRlbmNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubWVkaWEsXG4ubWVkaWFfX2JkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIF9vdmVyZmxvdzogdmlzaWJsZTtcbiAgICB6b29tOiAxO1xufVxuLm1lZGlhIC5tZWRpYV9faW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgkZ3JpZCAqIDIpO1xufVxuLm1lZGlhLS1yaWdodCAubWVkaWFfX2ltZyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogcmVtKCRncmlkICogMik7XG59XG4ubWVkaWEtLXZlcnRpY2FsIC5tZWRpYV9faW1nIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogMik7XG59XG4iLCIubWlsZXN0b25lIHtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDYwcHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oNDBweCk7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiByZW0oLTQ5cHgpO1xuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogcmVtKDE0cHgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgxNHB4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDE0cHgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtKC0zcHgpO1xuICAgICAgICBAaW5jbHVkZSBwc2V1ZG8oKTtcbiAgICAgICAgdG9wOiByZW0oMTFweCk7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTNweCAkZGV4LWxpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkbygpO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6ICRncmlkO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZGV4LWxpZ2h0O1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyAkZWFzaW5nIDAuMjVzO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2RhdGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDVweCk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8vIEFuaW1hdGlvbnNcbiAgICAmLmlzLXNob3cge1xuICAgICAgICAuanMuY3NzYW5pbWF0aW9ucyAmIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJbiAwLjVzIDEgYm90aCBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuNXMgMSBib3RoIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubWlsZXN0b25lX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluVXBTbWFsbCAwLjZzIDEgYm90aCBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXBTbWFsbCAwLjZzIDEgYm90aCBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHhzKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oODJweCk7XG5cbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiByZW0oLTQ5cHgpO1xuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDI0NXB4KTtcblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGxlZnQ6IHJlbSgtMjE1cHgpO1xuICAgICAgICB9XG4gICAgICAgICZfX2RhdGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCAwLCBudWxsLCBudWxsLCByZW0oLTE3MHB4KSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMzAwcHgpO1xuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogcmVtKC0yNzBweCk7XG4gICAgICAgIH1cbiAgICAgICAgJl9fZGF0ZSB7XG4gICAgICAgICAgICBsZWZ0OiByZW0oLTIwMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi50b2RheS10b21vcnJvdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogODB2aDtcbiAgICBtYXgtaGVpZ2h0OiByZW0oNTAwcHgpO1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IHJlbSg3NTBweCk7XG4gICAgfVxufVxuLnRvZGF5LXRvbW9ycm93IGRpdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLW9wYWNpdHk7XG59XG4udG9kYXktdG9tb3Jyb3dfX2xvd2VyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltZy90b2RheS10b21vcnJvdy90b2RheS5qcGcnKTtcbn1cbiIsIi5uYXYge1xuICAgIEBpbmNsdWRlIHBvcyhmaXhlZCwgMCwgMCwgMCwgMCwgMTApO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE4cHgpO1xuICAgIGJhY2tncm91bmQ6ICRuYXYtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkc2VhcmNoLXRyYW5zaXRpb24tZHVyYXRpb24gJGVhc2luZztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAkc2VhcmNoLXRyYW5zaXRpb24tZHVyYXRpb247XG5cbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2cHgpO1xuICAgIH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIHB1c2gtLXNpZGVzKCRwYWdlLWd1dHRlcik7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oJG5hdi1wYWRkaW5nLXNtYWxsKTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbmF2dmVydGljYWwsICRtZWRpYS1mZWF0dXJlOiBoZWlnaHQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oJG5hdi1wYWRkaW5nLWxhcmdlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2FuaW1hdGlvbiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZW0oNTBweCkpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRzZWFyY2gtdHJhbnNpdGlvbi1kdXJhdGlvbiAwcywgdHJhbnNmb3JtICRzZWFyY2gtdHJhbnNpdGlvbi1kdXJhdGlvbiAkc2VhcmNoLXRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgfVxuICAgICZfX2Nsb3NlLFxuICAgICZfX3NlYXJjaCB7XG4gICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLW9wYWNpdHk7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICB0b3A6IHJlbSgkZ3JpZCAqIDUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1pbmFjdGl2ZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fY2xvc2Uge1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIHJlbSgkZ3JpZCAqIDMpLCAwLCBudWxsLCBudWxsKTtcbiAgICB9XG4gICAgJl9fc2VhcmNoIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCByZW0oJGdyaWQgKiAzKSwgcmVtKCRncmlkICogNSksIG51bGwsIG51bGwpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgkZ3JpZCk7XG5cbiAgICAgICAgLmljb24tc2VhcmNoIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzBweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgzMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jYXB0aW9uIHtcbiAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjMpO1xuICAgIH1cbiAgICAmX19tZW51IHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogeHMsICR1bnRpbDogc20pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGxpc3QtZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oJGdyaWQpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgkZ3JpZCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB4cywgJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKCRncmlkICogMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICBhOmhvdmVyLFxuICAgICAgICBhOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19pY29uLWxpc3Qge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRncmlkICogMyk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgkZ3JpZCAqIDMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oJGdyaWQgKiA4KTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbGluaztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIG51bGwsIG51bGwsIDApO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHRvcDogcmVtKDE0cHgpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IHJlbSgtNDBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pY29uX19zZWNvbmRhcnkge1xuICAgICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ24odHJ1ZSwgdHJ1ZSwgYWJzb2x1dGUpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyOHB4KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDI4cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNHB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbiAgICB9XG5cbiAgICAvLyBTdGF0ZXNcbiAgICAmLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXG4gICAgICAgIC5uYXZfX2NvbHVtbiB7XG4gICAgICAgICAgICAmLS0xIHtcbiAgICAgICAgICAgICAgICAubmF2X19hbmltYXRpb246bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnMgKyAwLjFzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubmF2X19hbmltYXRpb246bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnMgKyAwLjE1cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLS0yIHtcbiAgICAgICAgICAgICAgICAubmF2X19hbmltYXRpb246bnRoLWNoaWxkKDFuKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnMgKyAwLjJzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubmF2X19hbmltYXRpb246bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnMgKyAwLjIuNXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi0tMyB7XG4gICAgICAgICAgICAgICAgLm5hdl9fYW5pbWF0aW9uOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzICsgMC4zcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm5hdl9fYW5pbWF0aW9uOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzICsgMC4zLjVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubmF2X19hbmltYXRpb24ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmlzLWFuaW1hdGluZyB7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgfVxuICAgIC5zZWFyY2gtaXMtb3BlbiAmIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG4ubmF2LWlzLW9wZW4ge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsIi5oZWFkZXIge1xuICAgIEBpbmNsdWRlIHBvcyhmaXhlZCwgMCwgMCwgbnVsbCwgMCwgJGhlYWRlci16LCB0cnVlKTtcbiAgICBoZWlnaHQ6IHJlbSgkaGVhZGVyLWhlaWdodC1zbWFsbCk7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tdHJhbnNmb3JtLCBoZWlnaHQgJHRyYW5zaXRpb24tZHVyYXRpb24gJGVhc2luZztcblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgJl9faGFtYnVyZ2VyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi12aXNpYmlsaXR5O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIC5oZWFkZXItdGl0bGUtaXMtdmlzaWJsZSAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eS1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19idXR0b24tZ3JlZW5zeW5jIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCByZW0oNXB4KSwgcmVtKDU1cHgpLCBudWxsLCBudWxsKTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHhzKSB7XG4gICAgICAgICAgICB0b3A6IHJlbSgzcHgpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB4cywgJHVudGlsOiBtZCkge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDEycHgpIHJlbSgxOHB4KSByZW0oMTFweCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgICAgICB0b3A6IHJlbSgxNHB4KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHhzKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxM3B4KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxMHB4KSByZW0oMTNweCkgcmVtKDhweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHVsbG91dC1pcy1vcGVuICYge1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cnVuY2F0ZSgzNTBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBwdXNoLS1hdXRvO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oJGhlYWRlci1oZWlnaHQtbGFyZ2UpO1xuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJ1bmNhdGUoNTIwcHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuLmhlYWRlci1pcy1oaWRkZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG4uaGFzLWJhbm5lciAuaGVhZGVyIHtcbiAgICAuaGFtYnVyZ2VyX19pbm5lcixcbiAgICAuaGFtYnVyZ2VyX19pbm5lcjo6YmVmb3JlLFxuICAgIC5oYW1idXJnZXJfX2lubmVyOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG4uaGVhZGVyLWlzLXNvbGlkLFxuLmhhcy1iYW5uZXIgLmhlYWRlci1pcy1zb2xpZCB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMCAyNHB4IDAgcmdiYSgxMiwgMCwgNTEsIDAuMik7XG5cbiAgICAuaGVhZGVyX19oYW1idXJnZXIgLmhhbWJ1cmdlcl9faW5uZXIsXG4gICAgLmhlYWRlcl9faGFtYnVyZ2VyIC5oYW1idXJnZXJfX2lubmVyOjpiZWZvcmUsXG4gICAgLmhlYWRlcl9faGFtYnVyZ2VyIC5oYW1idXJnZXJfX2lubmVyOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItY29sb3VyO1xuICAgIH1cbn1cbiIsIi5mb290ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgICAgIGNvbG9yOiAkcm9sbGluZy1zdG9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxMDBweCk7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcm9sbGluZy1zdG9uZTtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fbmF2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKCRncmlkICogMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqIDIpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oJGdyaWQpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnfCc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDRweCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oJGdyaWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiXG5cbi8qKlxuICogQGF0b20gSW5wdXRcbiAqIEBzZWN0aW9uIEZvcm1zXG4gKiBAbW9kaWZpZXJzXG4gKiAgLmlucHV0LXRleHQtLWRhcmsgRGFyayBzdHlsZWQgaW5wdXRcbiAqIEBtYXJrdXBcbiAqICA8aW5wdXQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIlBsYWNlaG9sZGVyIHRleHRcIiBuYW1lPVwiXCIgaWQ9XCJcIiBjbGFzcz1cImlucHV0LXRleHRcIj5cbiAqICA8aW5wdXQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIkRpc2FibGVkIGlucHV0IHRleHRcIiBuYW1lPVwiXCIgaWQ9XCJcIiBjbGFzcz1cImlucHV0LXRleHRcIiBkaXNhYmxlZD5cbiAqICA8aW5wdXQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIlN1Y2Nlc3MgaW5wdXQgdGV4dFwiIG5hbWU9XCJcIiBpZD1cIlwiIGNsYXNzPVwiaW5wdXQtdGV4dCBzdWNjZXNzXCI+XG4gKiAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJFcnJvciBpbnB1dCB0ZXh0XCIgbmFtZT1cIlwiIGlkPVwiXCIgY2xhc3M9XCJpbnB1dC10ZXh0IGVycm9yXCI+XG4gKi9cbi5pbnB1dC10ZXh0LFxuLnNpbXBsZV9jYXB0Y2hhX21lZGl1bSBpbnB1dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGZpZWxkLXBsYWNlaG9sZGVyLWNvbG91cjtcbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1maWVsZHM7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbn1cblxuLyoqXG4gKiBAYXRvbSBDaGVja2JveFxuICogQHNlY3Rpb24gRm9ybXNcbiAqIEBtYXJrdXBcbiAqICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImNoZWNrYm94MVwiIGlkPVwiY2hlY2tib3gxXCIgY2xhc3M9XCJpbnB1dC1jaGVja2JveFwiPiA8bGFiZWwgZm9yPVwiY2hlY2tib3gxXCI+Q2hlY2tib3ggbGFiZWw8L2xhYmVsPlxuICogIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiY2hlY2tib3gyXCIgaWQ9XCJjaGVja2JveDJcIiBjbGFzcz1cImlucHV0LWNoZWNrYm94XCI+IDxsYWJlbCBmb3I9XCJjaGVja2JveDJcIj5DaGVja2JveCBsYWJlbDwvbGFiZWw+XG4gKiAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJjaGVja2JveDNcIiBpZD1cImNoZWNrYm94M1wiIGNsYXNzPVwiaW5wdXQtY2hlY2tib3hcIj4gPGxhYmVsIGZvcj1cImNoZWNrYm94M1wiPkNoZWNrYm94IGxhYmVsPC9sYWJlbD5cbiAqICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImNoZWNrYm94NFwiIGlkPVwiY2hlY2tib3g0XCIgY2xhc3M9XCJpbnB1dC1jaGVja2JveFwiIGRpc2FibGVkPiA8bGFiZWwgZm9yPVwiY2hlY2tib3g0XCI+Q2hlY2tib3ggbGFiZWw8L2xhYmVsPlxuICogIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiY2hlY2tib3g1XCIgaWQ9XCJjaGVja2JveDVcIiBjbGFzcz1cImlucHV0LWNoZWNrYm94IHN1Y2Nlc3NcIj4gPGxhYmVsIGZvcj1cImNoZWNrYm94NVwiPkNoZWNrYm94IGxhYmVsPC9sYWJlbD5cbiAqICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImNoZWNrYm94NlwiIGlkPVwiY2hlY2tib3g2XCIgY2xhc3M9XCJpbnB1dC1jaGVja2JveCBlcnJvclwiPiA8bGFiZWwgZm9yPVwiY2hlY2tib3g2XCI+Q2hlY2tib3ggbGFiZWw8L2xhYmVsPlxuICovXG4uaW5wdXQtY2hlY2tib3gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuXG4gICAgKyBsYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogMik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtKCRjaGVja2JveC1zaXplICsgJGdyaWQpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oJGNoZWNrYm94LXNpemUpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oJGNoZWNrYm94LXNpemUpO1xuICAgICAgICAgICAgYm9yZGVyOiAkY2hlY2tib3gtYm9yZGVyLXNpemUgc29saWQgJGZpZWxkLWJvcmRlci1jb2xvdXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkZmllbGQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IHJlbSgzcHgpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiByZW0oNXB4KTtcbiAgICAgICAgICAgIGxlZnQ6IHJlbSg3cHgpO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGNoZWNrYm94LXRpY2stY29sb3VyO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjaGVja2JveC10aWNrLWNvbG91cjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tb3BhY2l0eTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjaGVja2JveC1jaGVja2VkLWNvbG91cjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNoZWNrYm94LWNoZWNrZWQtY29sb3VyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc3VjY2VzcyArIGxhYmVsOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGZpZWxkLWJvcmRlci1zdWNjZXNzO1xuICAgIH1cbiAgICAmLmVycm9yICsgbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3I7XG4gICAgfVxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtZGlzYWJsZWQtY29sb3VyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIEBhdG9tIFJhZGlvXG4gKiBAc2VjdGlvbiBGb3Jtc1xuICogQG1hcmt1cFxuICogIDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwicmFkaW8xXCIgaWQ9XCJyYWRpbzFcIiBjbGFzcz1cImlucHV0LXJhZGlvXCI+IDxsYWJlbCBmb3I9XCJyYWRpbzFcIj5SYWRpbyBpbnB1dDwvbGFiZWw+XG4gKiAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJyYWRpbzJcIiBpZD1cInJhZGlvMlwiIGNsYXNzPVwiaW5wdXQtcmFkaW9cIj4gPGxhYmVsIGZvcj1cInJhZGlvMlwiPlJhZGlvIGlucHV0PC9sYWJlbD5cbiAqICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgbmFtZT1cInJhZGlvM1wiIGlkPVwicmFkaW8zXCIgY2xhc3M9XCJpbnB1dC1yYWRpb1wiPiA8bGFiZWwgZm9yPVwicmFkaW8zXCI+UmFkaW8gaW5wdXQ8L2xhYmVsPlxuICogIDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwicmFkaW80XCIgaWQ9XCJyYWRpbzRcIiBjbGFzcz1cImlucHV0LXJhZGlvXCIgZGlzYWJsZWQ+IDxsYWJlbCBmb3I9XCJyYWRpbzRcIj5SYWRpbyBpbnB1dDwvbGFiZWw+XG4gKiAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJyYWRpbzVcIiBpZD1cInJhZGlvNVwiIGNsYXNzPVwiaW5wdXQtcmFkaW8gc3VjY2Vzc1wiPiA8bGFiZWwgZm9yPVwicmFkaW81XCI+UmFkaW8gaW5wdXQ8L2xhYmVsPlxuICogIDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwicmFkaW82XCIgaWQ9XCJyYWRpbzZcIiBjbGFzcz1cImlucHV0LXJhZGlvIGVycm9yXCI+IDxsYWJlbCBmb3I9XCJyYWRpbzZcIj5SYWRpbyBpbnB1dDwvbGFiZWw+XG4gKi9cbi5pbnB1dC1yYWRpbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG5cbiAgICArIGxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oJGdyaWQgKiAyKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oJHJhZGlvLXNpemUgKyAkZ3JpZCk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICAgICAgICB3aWR0aDogcmVtKCRyYWRpby1zaXplKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKCRyYWRpby1zaXplKTtcbiAgICAgICAgICAgIGJvcmRlcjogJHJhZGlvLWJvcmRlci1zaXplIHNvbGlkICRmaWVsZC1ib3JkZXItY29sb3VyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJHJhZGlvLXNpemU7XG4gICAgICAgICAgICB0b3A6IHJlbSgzcHgpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICAgICAgICB3aWR0aDogcmVtKCRyYWRpby1zaXplIC0gMTApO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oJHJhZGlvLXNpemUgLSAxMCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0oJHJhZGlvLXNpemUgLSAxMCk7XG4gICAgICAgICAgICB0b3A6IHJlbSg4cHgpO1xuICAgICAgICAgICAgbGVmdDogcmVtKDVweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmFkaW8tY2hlY2tlZC1jb2xvdXI7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLW9wYWNpdHk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRyYWRpby1jaGVja2VkLWNvbG91cjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnN1Y2Nlc3MgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRmaWVsZC1ib3JkZXItc3VjY2VzcztcbiAgICB9XG4gICAgJi5lcnJvciArIGxhYmVsOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGVycm9yO1xuICAgIH1cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgICAgICsgbGFiZWwge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLWRpc2FibGVkLWNvbG91cjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBAYXRvbSBUZXh0YXJlYVxuICogQHNlY3Rpb24gRm9ybXNcbiAqIEBtb2RpZmllcnNcbiAqICAudGV4dGFyZWEtLWRhcmsgRGFyayBzdHlsZWQgdGV4dGFyZWFcbiAqIEBtYXJrdXBcbiAqICA8dGV4dGFyZWEgbmFtZT1cIlwiIGlkPVwiXCIgY2xhc3M9XCJ0ZXh0YXJlYVwiPjwvdGV4dGFyZWE+XG4gKiAgPHRleHRhcmVhIG5hbWU9XCJcIiBpZD1cIlwiIGNsYXNzPVwidGV4dGFyZWFcIiBkaXNhYmxlZD48L3RleHRhcmVhPlxuICogIDx0ZXh0YXJlYSBuYW1lPVwiXCIgaWQ9XCJcIiBjbGFzcz1cInRleHRhcmVhIHN1Y2Nlc3NcIj48L3RleHRhcmVhPlxuICogIDx0ZXh0YXJlYSBuYW1lPVwiXCIgaWQ9XCJcIiBjbGFzcz1cInRleHRhcmVhIGVycm9yXCI+PC90ZXh0YXJlYT5cbiAqL1xuLnRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHJlbSgxNTBweCk7XG4gICAgQGluY2x1ZGUgZm9ybS1maWVsZHM7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbn1cblxuLyoqXG4gKiBAYXRvbSBTZWxlY3RcbiAqIEBzZWN0aW9uIEZvcm1zXG4gKiBAbW9kaWZpZXJzXG4gKiAgLmRyb3Bkb3duLS1pbmxpbmVcbiAqICAuZHJvcGRvd24tLXBsYWluXG4gKiBAbWFya3VwXG4gKiAgPGRpdiBjbGFzcz1cImRyb3Bkb3duXCI+XG4gKiAgICAgIDxzZWxlY3QgbmFtZT1cIlwiIGlkPVwiXCI+XG4gKiAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+U2VsZWN0PC9vcHRpb24+XG4gKiAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+XG4gKiAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+XG4gKiAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+XG4gKiAgICAgIDwvc2VsZWN0PlxuICogIDwvZGl2PlxuICogIDxkaXYgY2xhc3M9XCJkcm9wZG93blwiPlxuICogICAgICA8c2VsZWN0IG5hbWU9XCJcIiBpZD1cIlwiIGRpc2FibGVkPlxuICogICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPkRpc2FibGVkIHNlbGVjdDwvb3B0aW9uPlxuICogICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICogICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICogICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICogICAgICA8L3NlbGVjdD5cbiAqICA8L2Rpdj5cbiAqICA8ZGl2IGNsYXNzPVwiZHJvcGRvd25cIj5cbiAqICAgICA8c2VsZWN0IG5hbWU9XCJcIiBpZD1cIlwiIGNsYXNzPVwic3VjY2Vzc1wiPlxuICogICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+U3VjY2VzcyBzZWxlY3QgPC9vcHRpb24+XG4gKiAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj48L29wdGlvbj5cbiAqICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICogICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+XG4gKiAgICAgPC9zZWxlY3Q+XG4gKiAgPC9kaXY+XG4gKiAgPGRpdiBjbGFzcz1cImRyb3Bkb3duXCI+XG4gKiAgICAgPHNlbGVjdCBuYW1lPVwiXCIgaWQ9XCJcIiBjbGFzcz1cImVycm9yXCI+XG4gKiAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj5FcnJvciBzZWxlY3Q8L29wdGlvbj5cbiAqICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICogICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+XG4gKiAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj48L29wdGlvbj5cbiAqICAgICA8L3NlbGVjdD5cbiAqICA8L2Rpdj5cbiAqL1xuLmRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkbygpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtYXJyb3coJGJsYWNrLCBkb3duLCAxMHB4KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IHJlbSgkZ3JpZCAqIDMpO1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgICBAaW5jbHVkZSBmb3JtLWZpZWxkcztcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKCRncmlkICogNyk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtaW5kZW50OiAwLjAxcHg7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6ICcnO1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAmOjotbXMtZXhwYW5kIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICBvcHRpb24ge1xuICAgICAgICAgICAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNb2RpZmllcnNcbiAgICAmLS1pbmxpbmUge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbSgyMjVweCk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgY3NzLWFycm93KCR3aGl0ZSwgZG93biwgNnB4KTtcbiAgICAgICAgICAgIHJpZ2h0OiAkZ3JpZDtcbiAgICAgICAgfVxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyMjVweCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRncmlkICgkZ3JpZCAqIDMpICRncmlkIDA7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYtLXBsYWluIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oN3B4KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDdweCk7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMnB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg0MHB4KSAwIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogQGF0b20gTGFiZWxcbiAqIEBzZWN0aW9uIEZvcm1zXG4gKiBAbWFya3VwXG4gKiAgIDxsYWJlbCBmb3I9XCJcIj5MYWJlbCBuYW1lPC9sYWJlbD5cbiAqL1xubGFiZWwge1xuICAgIGNvbG9yOiAkY2hhcmNvYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogMik7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQG1vbGVjdWxlIEZvcm0gcm93c1xuICogQG1hcmt1cFxuICogIDxkaXYgY2xhc3M9XCJmb3JtX19yb3dcIj5cbiAqICAgICAgQHtpbmNsdWRlOmxhYmVsfVxuICogICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBwbGFjZWhvbGRlcj1cIlBsYWNlaG9sZGVyIHRleHRcIiBuYW1lPVwiXCIgaWQ9XCJcIiBjbGFzcz1cImlucHV0LXRleHRcIj5cbiAqICA8L2Rpdj5cbiAqICA8ZGl2IGNsYXNzPVwiZm9ybV9fcm93XCI+XG4gKiAgICAgIEB7aW5jbHVkZTpsYWJlbH1cbiAqICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duXCI+XG4gKiAgICAgICAgICA8c2VsZWN0IG5hbWU9XCJcIiBpZD1cIlwiPlxuICogICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj5TZWxlY3Q8L29wdGlvbj5cbiAqICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+XG4gKiAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICogICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj48L29wdGlvbj5cbiAqICAgICAgICAgIDwvc2VsZWN0PlxuICogICAgICA8L2Rpdj5cbiAqICA8L2Rpdj5cbiAqICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gKiAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgY29sLXNtLTZcIj5cbiAqICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtX19yb3dcIj5cbiAqICAgICAgICAgICAgICBAe2luY2x1ZGU6bGFiZWx9XG4gKiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJQbGFjZWhvbGRlciB0ZXh0XCIgbmFtZT1cIlwiIGlkPVwiXCIgY2xhc3M9XCJpbnB1dC10ZXh0XCI+XG4gKiAgICAgICAgICA8L2Rpdj5cbiAqICAgICAgPC9kaXY+XG4gKiAgICAgIDxkaXYgY2xhc3M9XCJjb2wteHMtMTIgY29sLXNtLTZcIj5cbiAqICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtX19yb3dcIj5cbiAqICAgICAgICAgICAgICBAe2luY2x1ZGU6bGFiZWx9XG4gKiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJQbGFjZWhvbGRlciB0ZXh0XCIgbmFtZT1cIlwiIGlkPVwiXCIgY2xhc3M9XCJpbnB1dC10ZXh0XCI+XG4gKiAgICAgICAgICA8L2Rpdj5cbiAqICAgICAgPC9kaXY+XG4gKiAgPC9kaXY+XG4gKiAgPGRpdiBjbGFzcz1cImZvcm1fX3Jvd1wiPlxuICogICAgICA8bGFiZWw+TGFiZWwgbmFtZSA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+PHNwYW4gY2xhc3M9XCJ2aXN1YWxseWhpZGRlblwiPlJlcXVpcmVkPC9zcGFuPiAqPC9zcGFuPjwvbGFiZWw+XG4gKiAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiUGxhY2Vob2xkZXIgdGV4dFwiIG5hbWU9XCJcIiBpZD1cIlwiIGNsYXNzPVwiaW5wdXQtdGV4dFwiPlxuICogIDwvZGl2PlxuICovXG4uZm9ybV9fcm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oJGJhc2UtbWFyZ2luKTtcbn1cbi5yZXF1aXJlZCB7XG4gICAgY29sb3I6ICRlcnJvcjtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5LWJvbGQ7XG59XG5cbi8qKlxuICogR3Jhdml0eSBmb3JtcyBjdXN0b21pc2F0aW9uXG4gKi9cbi5nZm9ybV9maWVsZHMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICA+IGxpOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5nZmllbGRfcmFkaW8sXG4uZ2ZpZWxkX2NoZWNrYm94IHtcbiAgICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xufVxuLmdmaWVsZF9lcnJvciAudmFsaWRhdGlvbl9tZXNzYWdlLFxuLnZhbGlkYXRpb25fZXJyb3Ige1xuICAgIGNvbG9yOiAkZXJyb3I7XG59XG4uZ2ZpZWxkX2Vycm9yIC52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICAgIG1hcmdpbi10b3A6IHJlbSgkZ3JpZCk7XG59XG4udmFsaWRhdGlvbl9lcnJvciB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDUwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqIDMpO1xufVxuLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IHJlbSgkaDQtc2l6ZSk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKCRoNC1zaXplLW1lZGl1bSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICBmb250LXNpemU6IHJlbSgkaDQtc2l6ZS1sYXJnZSk7XG4gICAgfVxufVxuLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oMTAwcHgpO1xufVxuLmdmaWVsZF92aXNpYmlsaXR5X2hpZGRlbiB7XG4gICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCBudWxsLCBudWxsLCBudWxsLCAtOTk5OXB4KTtcbn1cbltkYXRhLWpzLWRleC1idXR0b25zLXNlbGVjdF0gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMHB4KTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cbiIsIi5zZWFyY2gge1xuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIHBvcyhmaXhlZCwgMCwgMCwgMCwgMCwgMTApO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgkcGFnZS1ndXR0ZXIpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oJHBhZ2UtZ3V0dGVyKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyAwLjM1cywgb3BhY2l0eSAwLjM1cztcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDAlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKDgwcHgpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGF0ZXNcbiAgICAgICAgJi5pcy1vcGVuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRoYW1idXJnZXItZXhwYW5kLWNvbG91cjtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcywgb3BhY2l0eSAwLjM1cztcbiAgICAgICAgfVxuICAgICAgICAmLmlzLWFuaW1hdGluZyB7XG4gICAgICAgICAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19zZWFyY2gge1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIHJlbSgkZ3JpZCAqIDMpLCByZW0oJGdyaWQgKiA5KSwgbnVsbCwgbnVsbCwgMyk7XG4gICAgfVxuICAgICZfX2Zvcm0ge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDEwMHB4KTtcbiAgICAgICAgYmFja2dyb3VuZDogJGNoYXJjb2FsO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgkc2VhcmNoLXBhZGRpbmctbGFyZ2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcmVzdWx0cyB7XG4gICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgMCwgMCwgbnVsbCwgbnVsbCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRzZWFyY2gtcGFkZGluZy1zbWFsbCArIDE1MHB4KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oJHBhZ2UtZ3V0dGVyKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKCRwYWdlLWd1dHRlcik7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRzZWFyY2gtcGFkZGluZy1sYXJnZSArIDE1MHB4KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oODBweCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1saXN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fdGVybSB7XG4gICAgICAgIEBpbmNsdWRlIGlucHV0LXJlc2V0O1xuICAgICAgICBAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgkZ3JpZCAqIDIpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oJGdyaWQgKiA0KTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogeHMpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0cHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgbnVsbCwgMCwgcmVtKDExcHgpLCBudWxsKTtcbiAgICB9XG4gICAgJl9faWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogeHMpIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMThweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxOHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19sb2FkZXIge1xuICAgICAgICBAaW5jbHVkZSBhbGlnbih0cnVlLCB0cnVlLCBhYnNvbHV0ZSk7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5pY29uLWxvYWRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKC0yMHB4KTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgtNjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcmVzdWx0cy1saW5rLFxuICAgICZfX3Jlc3VsdHMtbGluazp2aXNpdGVkLFxuICAgICZfX3Jlc3VsdHMtbGluazpob3ZlcixcbiAgICAmX19yZXN1bHRzLWxpbms6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAmX19oYW1idXJnZXIge1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIHJlbSgkZ3JpZCAqIDMpLCByZW0oJGdyaWQgKiAzKSwgbnVsbCwgbnVsbCwgMyk7XG4gICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLW9wYWNpdHk7XG5cbiAgICAgICAgJi5pcy1pbmFjdGl2ZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcmVzdWx0cy1zZXBhcmF0b3Ige1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgfVxufVxuLnNlYXJjaC1pcy1vcGVuIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIuaG9tZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgJl9fdGFnbGluZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSg1MHB4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDEwMHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgxMDBweCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDIwMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19hbmltYXRpb24ge1xuICAgICAgICB3aWR0aDogNjB2dztcbiAgICAgICAgaGVpZ2h0OiA2NiU7XG4gICAgfVxuXG4gICAgJl9fYmFubmVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oMjAwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20sICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDEwMHB4KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMjUwcHgpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDM1MHB4KTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMjUwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogMTIwdnc7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IHJlbSgtNTBweCk7XG4gICAgICAgICAgICByaWdodDogcmVtKC01MHB4KTtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICc0MDBweCcpIGFuZCAobWF4LWhlaWdodDogJzEwMDBweCcpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODB2dztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBpcGhvbmU2cGx1cywgJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMzB2dztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtKC0xMDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzB2dztcbiAgICAgICAgICAgICAgICBib3R0b206IHJlbSgtMTM1cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6ICgtMjIwcHgpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtKC0xOTBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTgwMHB4KSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHJlbSgtMjcwcHgpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtKC0yNDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMjAwMHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwdnc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtLCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHZ3O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICBbZGF0YS1qcy1zbGlja10gPiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIFtkYXRhLWpzLXNsaWNrXS5zbGljay1pbml0aWFsaXplZCA+IGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnRlYW0ge1xuICAgIC5jYXJkX19saW5rIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgIC8vIE1vZGlmaWVyc1xuICAgICYtLTIge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTkwcHgpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgyMzBweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tMyB7XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgzNDBweCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGxnKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDQ3MHB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5ib2FyZCB7XG4gICAgQGluY2x1ZGUgZmxleGJveCgpO1xuICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKHJvdyk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudChjZW50ZXIpO1xuXG4gICAgLmNhcmQge1xuICAgICAgICBAaW5jbHVkZSBmbGV4KDAsIDEsIDEwMCUpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB4cykge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleCgwLCAxLCA1MCUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleCgwLCAxLCAzMy4zMyUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbW9kYWwge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXZpc2liaWxpdHkoKTtcblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXZpc2liaWxpdHktaG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jYXJvdXNlbCB7XG4gICAgICAgIC5ib2FyZF9fZGV0YWlsczpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1pbml0aWFsaXplZCAuYm9hcmRfX2RldGFpbHM6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oJGdyaWQgKiAzKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKCRncmlkICogMyk7XG4gICAgfVxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbnMge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgtOXB4KTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNwZWFrLXRvLWV4cGVydCB7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICAgICZfX3N0ZXBzIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oJHNwZWFrLXRvLWFuLWV4cGVydC1jb250YWluZXIpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXMgJGVhc2luZztcblxuICAgICAgICAuc3BlYWstdG8tZXhwZXJ0LWlzLXZpc2libGUgJiB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgkc3BlYWstdG8tYW4tZXhwZXJ0LWhlaWdodCk7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19zdGVwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICZfX3N0ZXAxIHtcbiAgICAgICAgQGluY2x1ZGUgcHVzaC0tYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oNTUwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtZCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oOTQwcHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX3NlbnRlbmNlIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fZHJvcGRvd24ge1xuICAgICAgICBmb250LXNpemU6IHJlbSgyNHB4KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSg1cHgpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxMHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwdXNoLS1hdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oJGdyaWQgKiAzKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IGxnKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19iYWNrIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCByZW0oLTcwcHgpLCBudWxsLCBudWxsLCByZW0oJGd1dHRlci13aWR0aCAvIDIpKTtcbiAgICB9XG4gICAgJl9fcHJpdmFjeSB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC41KTtcblxuICAgICAgICBhLFxuICAgICAgICBhOnZpc2l0ZWQge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjUpO1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgkZ3JpZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fZXJyb3IgLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ24oZmFsc2UsIHRydWUsIGFic29sdXRlKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLyoqXG4gKiBAbW9sZWN1bGUgUmVsYXRlZCBhcnRpY2xlc1xuICogQG1hcmt1cFxuICogIDxzZWN0aW9uIGNsYXNzPVwiY29udGFpbmVyIHJlbGF0ZWQtYXJ0aWNsZXMgcmVsYXRpdmVcIj5cbiAqICAgICA8aDIgY2xhc3M9XCJoMyBib2xkIHRleHQtY2VudGVyIG0tYngzIG0tc20tYng3XCI+UmVsYXRlZCBhcnRpY2xlczwvaDI+XG4gKiAgICAgPHVsIGNsYXNzPVwicmVsYXRlZC1hcnRpY2xlc19fbGlzdCByb3cgbGlzdC0tdW5zdHlsZWQgbm8tbSBzZWN0aW9uIHNlY3Rpb24tLWRhcmtcIj5cbiAqICAgICAgICAgPGxpIGNsYXNzPVwiY29sLXhzLTYgY29sLXNtLTYgY29sLW1kLTQgbm8tcCBjYXJkIGNhcmQtLW92ZXJsYXkgY2FyZC0tc2hhZG93IHJlbGF0aXZlXCI+XG4gKiAgICAgICAgICAgICA8YSBocmVmPVwiXCIgY2xhc3M9XCJyYXRpbyByYXRpby0tMTAwIHJlbGF0aXZlIHNlY3Rpb24tLWRhcmsgYmxvY2sgaW1hZ2UtaG92ZXIgY2FyZF9fbGlua1wiPlxuICogICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkX19pbm5lciBweDRcIj5cbiAqICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwibGlnaHQgaDQgbm9ybWFsXCI+Q29udGFjdDwvaDM+XG4gKiAgICAgICAgICAgICAgICAgPC9kaXY+XG4gKiAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3BsYWNlaW1nLmNvbS80MDAvNDAwL2FyY2hcIiBhbHQ9XCJcIiBjbGFzcz1cIm9iamVjdC1maXQgb2JqZWN0LWZpdC0tY29udGFpblwiPlxuICogICAgICAgICAgICAgPC9hPlxuICogICAgICAgICA8L2xpPlxuICogICAgICAgICA8bGkgY2xhc3M9XCJjb2wteHMtNiBjb2wtc20tNiBjb2wtbWQtNCBuby1wIGNhcmQgY2FyZC0tb3ZlcmxheSBjYXJkLS1zaGFkb3cgcmVsYXRpdmVcIj5cbiAqICAgICAgICAgICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cInJhdGlvIHJhdGlvLS0xMDAgcmVsYXRpdmUgc2VjdGlvbi0tZGFyayBibG9jayBpbWFnZS1ob3ZlciBjYXJkX19saW5rXCI+XG4gKiAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRfX2lubmVyIHB4NFwiPlxuICogICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJsaWdodCBoNCBub3JtYWxcIj5HcmVlbnN5bmM8L2gzPlxuICogICAgICAgICAgICAgICAgIDwvZGl2PlxuICogICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9wbGFjZWltZy5jb20vNDAwLzQwMC9hcmNoXCIgYWx0PVwiXCIgY2xhc3M9XCJvYmplY3QtZml0IG9iamVjdC1maXQtLWNvbnRhaW5cIj5cbiAqICAgICAgICAgICAgIDwvYT5cbiAqICAgICAgICAgPC9saT5cbiAqICAgICAgICAgPGxpIGNsYXNzPVwiY29sLXhzLTYgY29sLXNtLTYgY29sLW1kLTQgbm8tcCBjYXJkIGNhcmQtLW92ZXJsYXkgY2FyZC0tc2hhZG93IHJlbGF0aXZlXCI+XG4gKiAgICAgICAgICAgICA8YSBocmVmPVwiXCIgY2xhc3M9XCJyYXRpbyByYXRpby0tMTAwIHJlbGF0aXZlIHNlY3Rpb24tLWRhcmsgYmxvY2sgaW1hZ2UtaG92ZXIgY2FyZF9fbGlua1wiPlxuICogICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkX19pbm5lciBweDRcIj5cbiAqICAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwibGlnaHQgaDQgbm9ybWFsXCI+U2FtcGxlIFBhZ2U8L2gzPlxuICogICAgICAgICAgICAgICAgIDwvZGl2PlxuICogICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9wbGFjZWltZy5jb20vNDAwLzQwMC9hcmNoXCIgYWx0PVwiXCIgY2xhc3M9XCJvYmplY3QtZml0IG9iamVjdC1maXQtLWNvbnRhaW5cIj5cbiAqICAgICAgICAgICAgIDwvYT5cbiAqICAgICAgICAgPC9saT5cbiAqICAgICA8L3VsPlxuICogICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uIHNlY3Rpb24tLWRhcmtlciByZWxhdGVkLWFydGljbGVzX19zZWN0aW9uXCI+PC9kaXY+XG4gKiAgPC9zZWN0aW9uPlxuICovXG4ucmVsYXRlZC1hcnRpY2xlcyB7XG4gICAgJl9fbGlzdCB7XG4gICAgICAgIEBpbmNsdWRlIHBvcyhyZWxhdGl2ZSwgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCwgMSk7XG4gICAgfVxuICAgICZfX3NlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBwdWxsO1xuICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgICAmX19saW5rIHtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2hhcmNvYWw7XG5cbiAgICAgICAgICAgIC5jYXJkX19pbm5lciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi12aXNpYmlsaXR5KDAuNXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJlbGF0ZWQtYXJ0aWNsZXNfX21vcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdmlzaWJpbGl0eS1ob3ZlcigxcywgdHJhbnNmb3JtIDAuNXMgJGVhc2luZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX21vcmUge1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDUwJSwgbnVsbCwgbXVsbCwgNTAlKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi12aXNpYmlsaXR5KDAuNXMsIHRyYW5zZm9ybSAwLjVzICRlYXNpbmcpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVtKC0zMHB4KSk7XG4gICAgICAgIG1hcmdpbjogcmVtKC0kZ3JpZCAqIDMgLyAyKSAwIDAgcmVtKC0kZ3JpZCAqIDMgLyAyKTtcbiAgICB9XG4gICAgJl9fZmlyc3Qge1xuICAgICAgICAucmVsYXRlZC1hcnRpY2xlc19fbW9yZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVtKDMwcHgpKSByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgICAgLnJlbGF0ZWQtYXJ0aWNsZXNfX2xpbms6aG92ZXIgLnJlbGF0ZWQtYXJ0aWNsZXNfX21vcmUsXG4gICAgICAgIC5yZWxhdGVkLWFydGljbGVzX19saW5rOmZvY3VzIC5yZWxhdGVkLWFydGljbGVzX19tb3JlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fbWlkZGxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuMSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZWxhdGVkLWFydGljbGVzX19tb3JlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZW0oLTMwcHgpKSByb3RhdGUoOTBkZWcpO1xuICAgICAgICB9XG4gICAgICAgIC5yZWxhdGVkLWFydGljbGVzX19saW5rOmhvdmVyIC5yZWxhdGVkLWFydGljbGVzX19tb3JlLFxuICAgICAgICAucmVsYXRlZC1hcnRpY2xlc19fbGluazpmb2N1cyAucmVsYXRlZC1hcnRpY2xlc19fbW9yZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLTMge1xuICAgICAgICAubGFzdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IG1kKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogbWQpIHtcbiAgICAgICAgLnJlbGF0ZWQtYXJ0aWNsZXNfX21pZGRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jYXJkLS1vdmVybGF5IC5jYXJkX19pbm5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiJGNhcm91c2VsLXNpemUtc21hbGw6IDE3NXB4O1xuJGNhcm91c2VsLXNpemUtbWVkaXVtOiA0MDBweDtcbiRjYXJvdXNlbC1zaXplLWxhcmdlOiA2MDBweDtcblxuLmF1ZGllbmNlIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDEwMHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEwMHB4KTtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBpcGhvbmU2cGx1cykge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDE3MHB4KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgxMDBweCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDMwMHB4KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgyMDBweCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBsZykge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDMwMHB4KTtcbiAgICB9XG5cbiAgICAmX19jYXJvdXNlbCB7XG4gICAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgcmVtKCRjYXJvdXNlbC1zaXplLXNtYWxsIC8gMiksIDAsIG51bGwsIG51bGwpO1xuICAgICAgICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xuICAgICAgICB3aWR0aDogcmVtKCRjYXJvdXNlbC1zaXplLXNtYWxsICogMik7XG4gICAgICAgIGhlaWdodDogcmVtKCRjYXJvdXNlbC1zaXplLXNtYWxsICogMik7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgtJGNhcm91c2VsLXNpemUtc21hbGwpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgtJGNhcm91c2VsLXNpemUtc21hbGwpO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoNTZkZWcpIHJvdGF0ZVkoMGRlZykgcm90YXRlWig0MS40ZGVnKTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG4gICAgICAgICAgICAmLmlzLXByZXZpb3VzLFxuICAgICAgICAgICAgJi5pcy1wcmV2aW91cy1wbHVzMSxcbiAgICAgICAgICAgICYuaXMtY3VycmVudCxcbiAgICAgICAgICAgICYuaXMtbmV4dCxcbiAgICAgICAgICAgICYuaXMtbmV4dC1wbHVzMSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmlzLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmlzLW5leHQge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oJGNhcm91c2VsLXNpemUtc21hbGwpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKCRjYXJvdXNlbC1zaXplLXNtYWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNHB4O1xuICAgICAgICAgICAgbGVmdDogLTQxcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgxMDBweCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhcnRpY2xlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzO1xuXG4gICAgICAgICAgICAmLmlzLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19uYXYge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oJGdyaWQgKiAzKTtcblxuICAgICAgICBAbWVkaWEgKG1pbi1oZWlnaHQ6IDcwMHB4KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIG51bGwsIG51bGwsIHJlbSgtNjBweCksIHJlbSgkZ3JpZCAqIDIpKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHhzKSB7XG4gICAgICAgICAgICBib3R0b206IHJlbSgtODBweCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBib3R0b206IHJlbSgtMTAwcHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX25leHQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDVweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcHJldiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jb3VudCB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0cHgpO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAmX19wbGF5LXBhdXNlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oJGdyaWQpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogeHMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fcGxheSxcbiAgICAmX19wYXVzZSB7XG4gICAgICAgIEBpbmNsdWRlIGFsaWduKHRydWUsIHRydWUsIGFic29sdXRlKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJl9fcGxheSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMnB4KTtcblxuICAgICAgICAuaXMtcGxheWluZyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmlzLXBhdXNlZCAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX3BhdXNlIHtcbiAgICAgICAgLmlzLXBsYXlpbmcgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAuaXMtcGF1c2VkICYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBpcGhvbmU2cGx1cykge1xuICAgICAgICAmX19jYXJvdXNlbCB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDI1MHB4ICogMik7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgyNTBweCAqIDIpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKC0yNTBweCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgtMjUwcHgpO1xuICAgICAgICAgICAgdG9wOiByZW0oMjUwcHggLSAxMDApO1xuXG4gICAgICAgICAgICBsaSBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMjUwcHgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDI1MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgJl9fY2Fyb3VzZWwge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgkY2Fyb3VzZWwtc2l6ZS1tZWRpdW0gKiAyKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKCRjYXJvdXNlbC1zaXplLW1lZGl1bSAqIDIpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKC0zMTBweCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgtNTQ1cHgpO1xuICAgICAgICAgICAgdG9wOiByZW0oJGNhcm91c2VsLXNpemUtbWVkaXVtIC0gMTAwKTtcblxuICAgICAgICAgICAgbGkgZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKCRjYXJvdXNlbC1zaXplLW1lZGl1bSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oJGNhcm91c2VsLXNpemUtbWVkaXVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyMDBweCk7XG5cbiAgICAgICAgJl9fY2Fyb3VzZWwge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgkY2Fyb3VzZWwtc2l6ZS1sYXJnZSAqIDIpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oJGNhcm91c2VsLXNpemUtbGFyZ2UgKiAyKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgtNTEwcHgpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oLTQwMHB4KTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuXG4gICAgICAgICAgICBsaSBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oJGNhcm91c2VsLXNpemUtbGFyZ2UpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKCRjYXJvdXNlbC1zaXplLWxhcmdlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtLCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJykge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAmX19jYXJvdXNlbCB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKCRjYXJvdXNlbC1zaXplLXNtYWxsICogMik7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgkY2Fyb3VzZWwtc2l6ZS1zbWFsbCAqIDIpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKC0kY2Fyb3VzZWwtc2l6ZS1zbWFsbCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgtJGNhcm91c2VsLXNpemUtc21hbGwpO1xuICAgICAgICAgICAgdG9wOiByZW0oJGNhcm91c2VsLXNpemUtc21hbGwgLSAxMDApO1xuXG4gICAgICAgICAgICBsaSBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oJGNhcm91c2VsLXNpemUtc21hbGwpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKCRjYXJvdXNlbC1zaXplLXNtYWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5wcm9qZWN0cyAuY2FyZC0tbmV3czpmaXJzdC1jaGlsZCAuY2FyZF9fbGluayxcbi5uZXdzIC5jYXJkLS1uZXdzOmZpcnN0LWNoaWxkIC5jYXJkX19saW5rIHtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgfVxufVxuIiwiLnNpbmdsZS1uZXdzIHtcbiAgICAmX19hdXRob3ItaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBtZCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG4iLCIubGlzdCB7XG4gICAgJl9fZmVhdHVyZXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOHB4KTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDQwcHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKCRncmlkICogNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIG51bGwsIG51bGwsIDApO1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oJGdyaWQgKiAzKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgkZ3JpZCAqIDMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMnB4KTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oJGdyaWQgKiA5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oJGdyaWQgKiA1KTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oJGdyaWQgKiA1KTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiByZW0oLTVweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtLWhvcml6b250YWwge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKCRncmlkICogNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoLS1hdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oJGdyaWQgKiA3KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgkZ3JpZCAqIDcpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgkZ3JpZCAqIDQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHhzKSB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSgkZ3JpZCAqIDMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gUHJvZHVjdCBtb2R1bGVcbi5wcm9kdWN0cyB7XG4gICAgJl9fbGlzdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1oYWxmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oJGdyaWQgKjQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19pY29uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oJGdyaWQgKiA1KTtcbiAgICB9XG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1heC13aWR0aDogcmVtKDUwMHB4KTtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAgZmxleDogMSAxIDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICAgICAgLy8gbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtKCRncmlkICogNik7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgICZfX2xpc3Qge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKCRncmlkICogMyk7XG4gICAgICAgIH1cbiAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKCRncmlkICogMyk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg5MHB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5hcnRpY2xlX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgbWluLWhlaWdodDogcmVtKDMwMHB4KTtcbiAgICB9XG59XG4iLCIuaW50cm8ge1xuICAgIDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmRyb3Age1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cbiIsIi50ZXh0LXJvdyB7XG4gICAgcGFkZGluZzogcmVtKCRncmlkICogNSkgMDtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKCRncmlkICogMTApO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKCRncmlkICogMTApO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNDAwcHgpO1xuICAgICAgICAgICAgLnNpdGUtZGV4ICYge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWJhY2tncm91bmQge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCAwLCAwLCAwLCAwKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBNb2RpZmllcnNcbiAgICAgICAgICAgICYtLWxlZnQsXG4gICAgICAgICAgICAmLS1yaWdodCB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkbygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCAwLCAwLCAwLCAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi0tbGVmdCBzcGFuOjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KC05MGRlZywgcmdiYSgkZGV4LCAwKSAwLCAkZGV4IDEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi0tcmlnaHQgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkZGV4LCAwKSAwLCAkZGV4IDEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLnRleHQge1xuICAgIEBpbmNsdWRlIHBvcyhyZWxhdGl2ZSwgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCwgMSk7XG59XG4iLCIkaW1hZ2UtdGV4dC1pLXNtYWxsOiA1NXB4O1xuXG4uaW1hZ2UtdGV4dCB7XG4gICAgJl9faWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKCRpbWFnZS10ZXh0LWktc21hbGwpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oJGltYWdlLXRleHQtaS1zbWFsbCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4uc2VjdGlvbi0tZGFya2lzaCAudGV4dC1yb3dfX2ltYWdlLXRleHQgLmljb25fX3NlY29uZGFyeSB7XG4gICAgZmlsbDogJHdoaXRlO1xufVxuXG4iLCIucGFydG5lcnMge1xuICAgIG1hcmdpbi10b3A6IHJlbSgkZ3JpZCAqIDE1KTtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgkZ3JpZCAqIDEwKTtcbiAgICB9XG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gICAgJl9fdGl0bGUge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmLS1pY29uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDY1cHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2ljb24ge1xuICAgICAgICBAaW5jbHVkZSBhbGlnbih0cnVlLCBmYWxzZSwgYWJzb2x1dGUpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICAmX19sb2dvcyB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDIwcHgpO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKDIwcHgpO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDEwMHB4KTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IHJlbSg2MHB4KTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogcmVtKDUwcHgpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbWQpIHtcbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgcmVtKDQwMHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNTBweCk7XG4gICAgICAgIH1cbiAgICAgICAgJl9fbG9nb3MgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKDUwcHgpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg0MHB4KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jYXNlLXN0dWR5IHtcbiAgICBwYWRkaW5nOiAwIDAgcmVtKCRncmlkICogNSk7XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgkZ3JpZCAqIDEwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgkZ3JpZCAqIDEwKTtcblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIG51bGwsIG51bGwsIDApO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg1MHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogbGcpIHtcbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxMDBweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkdGFicy1saW5rLWhlaWdodC1zbWFsbDogNTVweDtcbiR0YWJzLWxpbmstaGVpZ2h0LWxhcmdlOiAxMDVweDtcblxuLnRhYnMge1xuICAgICZfX21lbnUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICYtbGluayB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgkdGFicy1saW5rLWhlaWdodC1zbWFsbCk7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgbGluay1yZXNldChub25lKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDFweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgkZ3JpZCAqIDIpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oNjVweCk7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFja2dyb3VuZDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2cHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiByZW0oLSR0YWJzLWxpbmstaGVpZ2h0LXNtYWxsIC8gNCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHJlbSgkdGFicy1saW5rLWhlaWdodC1zbWFsbCAvIDQpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IHJlbSgkdGFicy1saW5rLWhlaWdodC1zbWFsbCAvIDIpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbSgkdGFicy1saW5rLWhlaWdodC1zbWFsbCAvIDIpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJvcmRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaXMtYWN0aXZlIC50YWJzX19tZW51LWxpbmsge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgICAgLmlzLWFjdGl2ZSAudGFic19fbWVudS1saW5rLFxuICAgICAgICAudGFic19fbWVudS1saW5rOmhvdmVyLFxuICAgICAgICAudGFic19fbWVudS1saW5rOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduKHRydWUsIGZhbHNlLCBhYnNvbHV0ZSk7XG4gICAgICAgICAgICBsZWZ0OiByZW0oJGdyaWQgKiAyKTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzBweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgzMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oNTYwcHgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICAgICAgJl9fbWVudSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg0NDBweCk7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuXG4gICAgICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKCR0YWJzLWxpbmstaGVpZ2h0LWxhcmdlKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg2NXB4KTtcblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHJlbSgtJHRhYnMtbGluay1oZWlnaHQtbGFyZ2UgLyA0KTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHJlbSgkdGFicy1saW5rLWhlaWdodC1sYXJnZSAvIDQpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiByZW0oJHRhYnMtbGluay1oZWlnaHQtbGFyZ2UgLyAyKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtKCR0YWJzLWxpbmstaGVpZ2h0LWxhcmdlIC8gMikgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDU1JTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgJl9fbWVudSB7XG4gICAgICAgICAgICB3aWR0aDogMzUlO1xuXG4gICAgICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgkZ3JpZCAqIDQpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDgwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiByZW0oMzBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4udGFiX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIG51bGwsIG51bGwsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgJi1pY29uIHtcbiAgICAgICAgd2lkdGg6IHJlbSg0MnB4KTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNDJweCk7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgkZ3JpZCAqIDMpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFN0YXRlc1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmJhbm5lciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblxuICAgICsgLmludHJvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKCRncmlkICogNSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHNtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oJGdyaWQgKiAxMCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9faW1nIHtcbiAgICAgICAgQGluY2x1ZGUgcG9zKGFic29sdXRlLCAwLCAwLCAwLCAwKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG5cbiAgICAvLyBNb2RpZmllcnNcbiAgICAmLS1sZWZ0LFxuICAgICYtLXJpZ2h0IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIDAsIDAsIDAsIDEpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYtLWxlZnQ6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KC05MGRlZywgcmdiYSgkZGV4LCAwKSAwLCAkZGV4IDEwMCUpO1xuICAgIH1cbiAgICAmLS1yaWdodDo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoJGRleCwgMCkgMCwgJGRleCAxMDAlKTtcbiAgICB9XG59XG4iLCIuY2FyZWVyIHtcbiAgICAmX19idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5wcm9kdWN0IHtcbiAgICAmX19iYW5uZXIge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbSg2MDBweCk7XG5cbiAgICAgICAgOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5zZWFyY2gtcmVzdWx0cyB7XG4gICAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcblxuICAgICZfX3RpdGxlIGEge1xuICAgICAgICBjb2xvcjogJGJhc2UtZm9udC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2l0ZS1ncmVlbnN5bmMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltZy9saW5lcy5zdmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xufVxuIiwiLmhlYWRlci0tZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMjBtcyBlYXNlLWluLW91dCxcbiAgICBvcGFjaXR5IDEyMG1zIGVhc2UtaW4tb3V0O1xuXG4gIGJvZHkubmF2LWlzLW9wZW4gJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uc2l0ZS1kZXgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWcvbGluZXMtZGV4LnBuZyk7XG4gIC8vIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbiAgLy8gYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgLy8gYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICBjb2xvcjogJG1hZGlzb247XG5cbiAgOjotbW96LXNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGRleDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICB9XG5cbiAgOjpzZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICRkZXg7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIGEge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGJvcmRlcjogMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIC5oMS0teGxhcmdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLmgyLFxuICAuaDMge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cblxuICAudGV4dCBwOm5vdCguaDEtLXhsYXJnZSk6bm90KC5oMSk6bm90KC5oMik6bm90KC5oMykge1xuICAgIGZvbnQtc2l6ZTogMC45MjVyZW07XG4gIH1cblxuICAudGV4dC1yb3dfX2NvbHVtbiB7XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQqNDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkKjI7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgIC50eXBlLXRleHQ6Zmlyc3QtY2hpbGQge1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgLnR5cGUtdGV4dCsudHlwZS1pbWFnZSB7XG4gICAgICBvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAubGlzdF9fZmVhdHVyZXMubGlzdF9fZmVhdHVyZXMtLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSxcbiAgbGFiZWwsXG4gIC5iYXNlIHtcbiAgICBjb2xvcjogJG1hZGlzb247XG4gIH1cblxuICAuYmFzZS5uby1tLWIge1xuICAgIHBhZGRpbmctdG9wOiAxMTFweDtcbiAgfVxuXG4gIC5pY29uLS1iYXNlICoge1xuICAgIGZpbGw6ICRtYWRpc29uO1xuICB9XG5cbiAgLmljb24tLXByaW1hcnkgKiB7XG4gICAgZmlsbDogJGRleC1saWdodDtcbiAgfVxuXG4gIC8vIFR5cG9ncmFwaHlcbiAgYSB7XG4gICAgY29sb3I6ICRtYWRpc29uO1xuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAkbWFkaXNvbjtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZGV4LWxpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIGJsb2NrcXVvdGUge1xuICAgIGNvbG9yOiAkZGV4LWxpZ2h0O1xuXG4gICAgY2l0ZSB7XG4gICAgICBjb2xvcjogJG1hZGlzb247XG4gICAgfVxuICB9XG5cbiAgLnByaW1hcnksXG4gIGEucHJpbWFyeTp2aXNpdGVkLFxuICBhLnByaW1hcnk6aG92ZXIsXG4gIGEucHJpbWFyeTpmb2N1cyB7XG4gICAgY29sb3I6ICRkZXgtbGlnaHQ7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAuaW5wdXQtdGV4dDpmb2N1cyxcbiAgLnRleHRhcmVhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRkZXgtbGlnaHQ7XG4gIH1cblxuICAuZHJvcGRvd246OmFmdGVyIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJG1hZGlzb247XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG1hZGlzb247XG4gIH1cblxuICAuZHJvcGRvd24tLWlubGluZSBzZWxlY3QsXG4gIC5kcm9wZG93bi0taW5saW5lIHNlbGVjdCBvcHRpb24ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAuZHJvcGRvd24tLWlubGluZTo6YWZ0ZXIge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgICBjb2xvcjogJGRleC1saWdodDtcbiAgfVxuXG4gIC5pbnB1dC1jaGVja2JveDpjaGVja2VkK2xhYmVsOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogJGRleC1saWdodDtcbiAgICBib3JkZXItY29sb3I6ICRkZXgtbGlnaHQ7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCBsaTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGV4LWxpZ2h0O1xuICB9XG5cbiAgLy8gSWNvbnNcbiAgLmljb25fX3ByaW1hcnkge1xuICAgIGZpbGw6ICRkZXgtbGlnaHQ7XG4gIH1cblxuICAvLyBCdXR0b25zXG4gIC5idXR0b24ge1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkbWFkaXNvbjtcbiAgICBjb2xvcjogJG1hZGlzb247XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGRleC1saWdodDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRtYWRpc29uO1xuICAgIH1cblxuICAgICYtLXJldmVyc2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRleC1yZXZlcnNlO1xuXG4gICAgICAmOnZpc2l0ZWQge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZGV4LXJldmVyc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tYXJyb3c6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi0taWNvbixcbiAgICAmLS1yZXNldCB7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLWRleCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZGV4LWxpZ2h0O1xuICAgICAgY29sb3I6ICRkZXg7XG4gICAgICBib3JkZXItY29sb3I6ICRkZXgtbGlnaHQ7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZGV4LWxpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLWxhcmdlIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0oMjRweCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDI0cHgpO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYgLmJ1dHRvbi0tZGV4IHtcbiAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIHJlbSgxMHB4KSwgcmVtKDEwMHB4KSwgbnVsbCwgbnVsbCk7XG4gIH1cblxuICAvLyBEcm9wXG4gIC5kcm9wOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRleC1saWdodDtcbiAgfVxuXG4gIC8vIE5hdlxuICAubmF2IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1nL2xpbmVzLWRleC1kYXJrLnBuZykgcmVwZWF0LXkgMTAwJSAwICRkZXg7XG5cbiAgICAmLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgfVxuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDIwcHgpO1xuICAgIH1cblxuICAgICZfX21lbnUge1xuICAgICAgbGkge1xuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogeHMsICR1bnRpbDogc20pIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmhpZ2hsaWdodCB7XG4gICAgZm9udC1zaXplOiByZW0oMjZweCk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeS1ib2xkO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGRleC1saWdodDtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRkZXgtbGlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2VhcmNoXG4gIC5zZWFyY2hfX2Zvcm0sXG4gIC5zZWFyY2hfX2NvbnRhaW5lci5pcy1vcGVuIHtcbiAgICBiYWNrZ3JvdW5kOiAkZGV4O1xuICB9XG5cbiAgLnNlYXJjaF9fcmVzdWx0cy1saW5rLFxuICAuc2VhcmNoX19yZXN1bHRzLWxpbms6dmlzaXRlZCxcbiAgLnNlYXJjaF9fcmVzdWx0cy1saW5rOmhvdmVyLFxuICAuc2VhcmNoX19yZXN1bHRzLWxpbms6Zm9jdXMsXG4gIC5zZWFyY2hfX3Rlcm0ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAuc2VhcmNoX190ZXJtIHtcbiAgICBAaW5jbHVkZSBpbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuNCk7XG4gICAgfVxuICB9XG5cblxuXG4gIC5ob21lLWRleCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuaG9tZSAuaG9tZS1kZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAmLmhvbWUgLnByb2R1Y3RzLFxuICAmLnBhcmVudC1wYWdlaWQtMTQ4ODMgLnByb2R1Y3RzIHtcbiAgICAucHJvZHVjdC1jYXJkcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtY2FyZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleDogMTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcblxuICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC41cmVtIDA7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkbygpO1xuICAgICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIDAsIDAsIDAsIDEpO1xuICAgICAgICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCByZ2JhKCRkZXgsIDAuMykgMCwgJGRleCAxMDAlKTtcbiAgICAgIH1cblxuICAgICAgPio6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICA+KjpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDM2cHg7XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgQGV4dGVuZCAuYnV0dG9uLS1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaDQsXG4gICAgICAgIC5wcm9kdWN0c19faWNvbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6bm90KC5wb3N0LXR5cGUtYXJjaGl2ZS1mYXEpOm5vdCgucG9zdC10eXBlLWFyY2hpdmUtbmV3cykgLmhlYWRlciB7XG4gICAgLy8gYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsIDAuMyk7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGRleCwgMC4zKSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyAuaWNvbl9fcHJpbWFyeSB7XG4gICAgLy8gICBmaWxsOiAkd2hpdGU7XG4gICAgLy8gfVxuICAgIC8vIGEge1xuICAgIC8vICAgY29sb3I6ICR3aGl0ZTtcbiAgICAvLyAgICY6aG92ZXIge1xuICAgIC8vICAgICBjb2xvcjogJGRleC1saWdodDtcbiAgICAvLyAgIH1cbiAgICAvLyB9XG4gIH1cblxuXG5cbiAgJi5zaG93LS1maXhlZC1oZWFkZXIgLmhlYWRlci0tZml4ZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgLmhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGRleCwgMC4zKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAmIC5oYW1idXJnZXJfX2lubmVyLFxuICAgICYgLmhhbWJ1cmdlcl9faW5uZXI6YmVmb3JlLFxuICAgICYgLmhhbWJ1cmdlcl9faW5uZXI6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRleCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICZfX2hhbWJ1cmdlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgJi5oZWFkZXItLWZpeGVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGRleCwgMC4zKSAhaW1wb3J0YW50O1xuICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgLmljb25fX3ByaW1hcnkge1xuICAgICAgICBmaWxsOiAkZGV4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGRleCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkZGV4LWxpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uLS1oZWFkZXItY29udGFjdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogOHJlbTtcbiAgICAgIGNvbG9yOiAkZGV4O1xuICAgICAgYmFja2dyb3VuZDogJGRleC1saWdodDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGRleC1saWdodDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRkZXg7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGRleC1saWdodDtcbiAgICAgICAgY29sb3I6ICRkZXgtbGlnaHQ7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhlYWRlci0tZml4ZWQgLmJ1dHRvbi0taGVhZGVyLWNvbnRhY3Qge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZGV4X3RvcF9fbWVudSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogMTNweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBncmVlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB6LWluZGV4OiAxMDAxO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uLS1kZXgge1xuICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBtZCkge1xuICAgICAgICBwYWRkaW5nOiByZW0oMTBweCkgcmVtKDE1cHgpO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICAgICAgdG9wOiByZW0oMTRweCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogeHMpIHtcbiAgICAgICAgdG9wOiByZW0oMjBweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlYWRlcl9fYnV0dG9uLWRleCB7XG4gICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIHJlbSg1NXB4KSwgbnVsbCwgbnVsbCk7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogeHMpIHtcbiAgICAgICAgdG9wOiByZW0oOHB4KTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IG1kKSB7XG4gICAgICAgIHRvcDogcmVtKDEzcHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24tLWRleCxcbiAgICAuaGVhZGVyX19idXR0b24tZGV4IHtcbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogeHMpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbSg4cHgpIHJlbSgxM3B4KSByZW0oNXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FyZF9fbGluay0tY2FzZS1zdHVkeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuY2FzZS1zdHVkeV9fZGV0YWlscyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA0cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICYrLnJhdGlvLS02NiB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYnV0dG9uLS1maWxsZWQge1xuICAgIGNvbG9yOiAkZGV4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRkZXgtbGlnaHQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuYnV0dG9uLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICB9XG5cbiAgLnByb2R1Y3RzX19saXN0IHtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RzX19pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBGb290ZXJcbiAgLmZvb3RlciB7XG5cbiAgICAmX19jb250YWluZXIsXG4gICAgJl9fY29udGFpbmVyIGEsXG4gICAgJl9fY29udGFpbmVyIGE6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogIzZkODI5YztcbiAgICB9XG5cbiAgICAmX19jb250YWluZXIgYTpob3ZlcixcbiAgICAmX19jb250YWluZXIgYTpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAmX19uYXYgbGk6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC5zZWN0aW9uLS1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZWJlZTtcbiAgICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1nL2xpbmVzLWRleC1saWdodC5wbmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbiAgfVxuXG4gIC5zZWN0aW9uLS1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTAyNTQ4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWcvbGluZXMtZGV4LWJsdWUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuICB9XG5cbiAgLnNlY3Rpb24tLWRhcmtpc2gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZXg7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kZXgtcmV2ZXJzZTtcbiAgICB9XG4gIH1cblxuICAuc2VjdGlvbi0tZGFya2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGV4O1xuICB9XG5cbiAgLnNlY3Rpb24tLXRhbGwge1xuICAgIG1pbi1oZWlnaHQ6IDkwdmg7XG4gIH1cblxuICAuc2VjdGlvbi0tdHVuYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRleDtcbiAgfVxuXG4gIC5zZWN0aW9uLS1pbWFnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgkZ3JpZCAqIDUpO1xuICAgIG1pbi1oZWlnaHQ6IDQ0LjVyZW07XG5cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogc20pIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oJGdyaWQgKiAxMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgbWluLWhlaWdodDogOHJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBCYW5uZXJcbiAgLmJhbm5lciB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gICAgJl9faW1nIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgfVxuXG4gICAgLmRyb3AgOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuYmFubmVyLS13aHktam9pbi1kZXggLmJhbm5lcl9faW1nLFxuICAuYmFubmVyLS13aG9zLWFscmVhZHktam9pbmVkIC5iYW5uZXJfX2ltZyB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAtMzE0cHg7XG5cbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FyZHNcbiAgLmNhcmQtLWxpbmtlZCAuY2FyZF9fbGluayB7XG4gICAgY29sb3I6ICRtYWRpc29uO1xuICB9XG5cbiAgLmNhcmQtLW5ld3Mge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLmNhcmRfX3dyYXAge1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgID5kaXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU29jaWFsXG4gIC5zb2NpYWwgYSB7XG4gICAgc3ZnICoge1xuICAgICAgZmlsbDogJGRleDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgc3ZnICoge1xuICAgICAgICBmaWxsOiAkZGV4LWxpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sYXRlc3QtbmV3cyB7XG4gICAgJl9fd3JhcHBlciB7XG4gICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAuNXJlbSAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRlYW0tY2FyZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgZmxleDogMCAwIDIwJTtcblxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXJnaW46IDAgMCAwLjVyZW0gMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAvLyBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX193cmFwcGVyIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiBzbSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWNhcmQ6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICA+KjpmaXJzdC1jaGlsZCB7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG5cbiAgICA+KjpsYXN0LWNoaWxkIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWNhcmQge1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgPio6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgPio6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIC8vIGRlWCBob21lXG4gIC5ob21lLWRleCB7XG4gICAgJisucGFnZS1tYWluIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vaW1nL2JnLWRleC5wbmcnKTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgcHNldWRvKCk7XG4gICAgICBAaW5jbHVkZSBwb3MoYWJzb2x1dGUsIDAsIDAsIDAsIDAsIDEpO1xuICAgICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KC05MGRlZywgcmdiYSgkZGV4LCAwKSAwLCAkZGV4IDEwMCUpO1xuICAgIH1cblxuICAgICZfX3Njcm9sbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIHBvcyhhYnNvbHV0ZSwgMCwgMCwgMCwgMCk7XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogeHMpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oNDBweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbSg1cHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDVweCk7XG4gICAgfVxuICB9XG5cbiAgLmgxIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICAgIC8vIGZvbnQtc2l6ZTogcmVtKDI0cHgpO1xuICAgIC8vICY6YWZ0ZXIge1xuICAgIC8vICAgZGlzcGxheTogbm9uZTtcbiAgICAvLyB9XG4gIH1cblxuICAvLyBSZWxhdGVkIGFydGljbGVzXG4gIC5yZWxhdGVkLWFydGljbGVzX19saW5rOmhvdmVyLFxuICAucmVsYXRlZC1hcnRpY2xlc19fbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJG1hZGlzb247XG4gIH1cblxuICAvLyBQYWdpbmF0aW9uXG4gIC53cC1wYWdlbmF2aSAuY3VycmVudCxcbiAgLndwLXBhZ2VuYXZpIC5jdXJyZW50OmhvdmVyLFxuICAud3AtcGFnZW5hdmkgLmN1cnJlbnQ6Zm9jdXMsXG4gIC53cC1wYWdlbmF2aSAucGFnZTpob3ZlcixcbiAgLndwLXBhZ2VuYXZpIC5wYWdlOmZvY3VzLFxuICAud3AtcGFnZW5hdmkgLm5leHRwb3N0c2xpbms6aG92ZXIsXG4gIC53cC1wYWdlbmF2aSAubmV4dHBvc3RzbGluazpmb2N1cyxcbiAgLndwLXBhZ2VuYXZpIC5wcmV2aW91c3Bvc3RzbGluazpob3ZlcixcbiAgLndwLXBhZ2VuYXZpIC5wcmV2aW91c3Bvc3RzbGluazpmb2N1cyB7XG4gICAgY29sb3I6ICRkZXgtbGlnaHQ7XG4gIH1cblxuICAud3AtcGFnZW5hdmkgLmN1cnJlbnQ6aG92ZXIsXG4gIC53cC1wYWdlbmF2aSAuY3VycmVudDpmb2N1cyxcbiAgLndwLXBhZ2VuYXZpIC5wYWdlOmhvdmVyLFxuICAud3AtcGFnZW5hdmkgLnBhZ2U6Zm9jdXMsXG4gIC53cC1wYWdlbmF2aSAubmV4dHBvc3RzbGluazpob3ZlcixcbiAgLndwLXBhZ2VuYXZpIC5uZXh0cG9zdHNsaW5rOmZvY3VzLFxuICAud3AtcGFnZW5hdmkgLnByZXZpb3VzcG9zdHNsaW5rOmhvdmVyLFxuICAud3AtcGFnZW5hdmkgLnByZXZpb3VzcG9zdHNsaW5rOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIH1cblxuICAuc3BlYWstdG8tZXhwZXJ0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDdyZW07XG4gIH1cblxuICAuYm9yZGVyLXRvcCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuXG4gIC5wYXJ0bmVycyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgfVxuXG4gIC5wYXJ0bmVycy0tZmVhdHVyZWQge1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgYm9yZGVyLXRvcDogMDtcblxuICAgIC8vIC5jb250YWluZXIge1xuICAgIC8vICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMmQyZDI7XG4gICAgLy8gfVxuXG4gICAgLnBhcnRuZXJzX190aXRsZSB7XG4gICAgICBAZXh0ZW5kIC5oMjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5wYXJ0bmVyc19fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAucGFydG5lcnNfX2xvZ29zIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgICAgbGk6bnRoLWNoaWxkKDFuKzkpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBzbSkge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogOC4yNXJlbTtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA1Ljc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhcnRuZXJzX19sb2dvcyB7XG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMS41cmVtO1xuXG4gICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHNtKSB7XG4gICAgICAgIG1pbi13aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wYXJ0bmVyc19fdGl0bGUge1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogc20pIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgfVxuICB9XG5cbiAgYS5ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn0iLCJAbWVkaWEgcHJpbnQge1xuICAgIC5zY3JlZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAucHJpbnQge1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIH1cbiAgICAuZHJvcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRiYXNlLW1hcmdpbjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICAgIC5kcm9wLS10b3Age1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBpbmhlcml0O1xuICAgIH1cbiAgICAuYnV0dG9uLFxuICAgIC5zZWN0aW9uLS1maXJzdCxcbiAgICAuc2VjdGlvbi0tY2VudGVyLFxuICAgIC5jYXNlLXN0dWR5X19jb250ZW50LFxuICAgIC5zZWN0aW9uLS1wYWQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAuanMuY3NzYW5pbWF0aW9ucyBbZGF0YS1hbmltYXRpb25dIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgLmhhcy1iYW5uZXIgLmxvZ28tLWdyZWVuc3luY19fdGV4dCxcbiAgICAuaGFzLWJhbm5lciAubG9nby0tZGV4IHBhdGguaWNvbl9fcHJpbWFyeSB7XG4gICAgICAgIGZpbGw6ICMwMDA7XG4gICAgfVxuICAgIC5zaXRlLWRleCAuYnV0dG9uIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgICAuY29udGFpbmVyLFxuICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5hdWRpZW5jZV9fY29udGVudCBhcnRpY2xlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG4gICAgLmhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgfVxuICAgIC5oZWFkZXItaXMtaGlkZGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgICAucGFnZS1tYWluIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICAgIC5zZWN0aW9uLS10YWxsIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAuanMuY3NzYW5pbWF0aW9ucyBbZGF0YS1hbmltYXRpb25dIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgLmNhcmQtLXRlYW0ge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmUhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudGV4dC1yb3csXG4gICAgLnNlY3Rpb24tLWF1ZGllbmNlIC5jb250YWluZXIsXG4gICAgLnNlY3Rpb24tLXByb2R1Y3QgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB9XG4gICAgLnNlY3Rpb24tLWltYWdlIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG4gICAgLnRleHQtcm93X19pbWFnZSBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbSgzMDBweCk7XG4gICAgfVxuICAgIC50ZXh0LXJvd19faW1hZ2UtdGV4dCB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG4gICAgLmhvbWVfX2Jhbm5lciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICBhcnRpY2xlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhvbWVfX3RhZ2xpbmUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5hdWRpZW5jZSBhcnRpY2xlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGJhc2UtbWFyZ2luO1xuICAgIH1cbiAgICAubG9jYXRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkYmFzZS1tYXJnaW47XG4gICAgfVxuICAgIC5qcyAuYWNjb3JkaW9uX19ib2R5IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgICoge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIC1tcy1maWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJztcbiAgICB9XG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgICAgcGFkZGluZzogMC41Y20gMWNtIDFjbSAxY207XG4gICAgfVxuXG5cblxuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAvKipcbiAgICAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgICAgKi9cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgICAgKi9cbiAgICBmaWd1cmUge1xuICAgICAgICBtYXJnaW46IDAgMCAyNHB4O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICAgICovXG4gICAgaHIge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgLyogMSAqL1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIC8qIDEgKi9cbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgICAgKi9cbiAgICBtYWluIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICAgICovXG4gICAgcHJlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAgICAgICAvKiAxICovXG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAvKiAyICovXG4gICAgfVxuXG4gICAgLyogTGlua3NcbiAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAvKipcbiAgICAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAgICAqL1xuICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgLyogMSAqL1xuICAgICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAgICAgICAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICAgICovXG4gICAgYTphY3RpdmUsXG4gICAgYTpob3ZlciB7XG4gICAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAvKipcbiAgICAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgICAgKi9cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIC8qIDEgKi9cbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAgICAqL1xuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgICAgKi9cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICAgICovXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICAgICAgLyogMSAqL1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgICAgKi9cbiAgICBkZm4ge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAgICAqL1xuICAgIG1hcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgICAgKi9cbiAgICBzbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgICAgKi9cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgICBib3R0b206IC0wLjI1ZW07XG4gICAgfVxuXG4gICAgc3VwIHtcbiAgICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuXG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAgIC8qKlxuICAgICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAgICAqL1xuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICAgICovXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAgICAqL1xuICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgICAgKi9cbiAgICBzdmc6bm90KDpyb290KSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLyogRm9ybXNcbiAgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAvKipcbiAgICAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgICAgKi9cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIC8qIDEgKi9cbiAgICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgICAvKiAxICovXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAgICAgICAvKiAxICovXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAgICAqL1xuICAgIGJ1dHRvbiB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgICAgKi9cbiAgICBidXR0b24sXG4gICAgc2VsZWN0IHtcbiAgICAgICAgLyogMSAqL1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgICAgKi9cbiAgICBidXR0b24sXG4gICAgaHRtbCBbdHlwZT0nYnV0dG9uJ10sXG4gICAgW3R5cGU9J3Jlc2V0J10sXG4gICAgW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gICAgLyogMiAqLyB9XG5cbiAgICBidXR0b24sXG4gICAgW3R5cGU9J2J1dHRvbiddLFxuICAgIFt0eXBlPSdyZXNldCddLFxuICAgIFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgLyoqXG4gICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAgKi9cbiAgICAvKipcbiAgICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgICovIH1cbiAgICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gICAgW3R5cGU9J2J1dHRvbiddOjotbW96LWZvY3VzLWlubmVyLFxuICAgIFt0eXBlPSdyZXNldCddOjotbW96LWZvY3VzLWlubmVyLFxuICAgIFt0eXBlPSdzdWJtaXQnXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICAgIFt0eXBlPSdidXR0b24nXTotbW96LWZvY3VzcmluZyxcbiAgICBbdHlwZT0ncmVzZXQnXTotbW96LWZvY3VzcmluZyxcbiAgICBbdHlwZT0nc3VibWl0J106LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgICAgKi9cbiAgICBpbnB1dCB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAgICAqL1xuICAgIFt0eXBlPSdjaGVja2JveCddLFxuICAgIFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAgICAqL1xuICAgIFt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT0nbnVtYmVyJ106Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICAgICovXG4gICAgW3R5cGU9J3NlYXJjaCddIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgICAgIC8qIDEgKi9cbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgICAgIC8qIDIgKi9cbiAgICAgICAgLyoqXG4gICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICAgICAgKi9cbiAgICB9XG4gICAgW3R5cGU9J3NlYXJjaCddOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuICAgIFt0eXBlPSdzZWFyY2gnXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgICAgKi9cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gICAgICAgIC8qIDEgKi9cbiAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAgICAqL1xuICAgIGZpZWxkc2V0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjRweDtcbiAgICAgICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgICAgKi9cbiAgICBsZWdlbmQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAvKiAxICovXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAvKiAxICovXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAvKiAzICovXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAvKiAyICovXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIC8qIDEgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAgICAqL1xuICAgIHByb2dyZXNzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvKiAxICovXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgICAgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICAgICovXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAgIC8qXG4gICAgICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAgICAqL1xuICAgIGRldGFpbHMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKlxuICAgICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgICAgKi9cbiAgICBzdW1tYXJ5IHtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC8qXG4gICAgICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICAgICovXG4gICAgbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qIFNjcmlwdGluZ1xuICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAgIC8qKlxuICAgICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAgICAqL1xuICAgIGNhbnZhcyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgICAgKi9cbiAgICB0ZW1wbGF0ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLyogSGlkZGVuXG4gICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICAgLyoqXG4gICAgICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAgICAqL1xuICAgIFtoaWRkZW5dIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAqIEdsb2JhbFxuICAgICovXG4gICAgKiB7XG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgICosXG4gICAgKjpiZWZvcmUsXG4gICAgKjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBodG1sIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgYm9keSB7XG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIH1cblxuICAgIHAsXG4gICAgYmxvY2txdW90ZSxcbiAgICB0YWJsZSxcbiAgICB1bCxcbiAgICBvbCxcbiAgICBkbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIH1cblxuICAgIHA6bGFzdC1jaGlsZCxcbiAgICB1bCB1bDpsYXN0LWNoaWxkLFxuICAgIG9sIHVsOmxhc3QtY2hpbGQsXG4gICAgdWwgb2w6bGFzdC1jaGlsZCxcbiAgICBvbCBvbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAqIEhlYWRlcnNcbiAgICAqL1xuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAqIExpbmtzXG4gICAgKi9cbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICogVGFibGVcbiAgICAqL1xuICAgIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0YWJsZSxcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO1xuICAgIH1cblxuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgKiBDb2RlLCBQcmVcbiAgICAqL1xuICAgIGNvZGUsXG4gICAgcHJlLFxuICAgIGtiZCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuICAgICAgICBmb250LXNpemU6IDg1JTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2JiYjtcbiAgICB9XG5cbiAgICBjb2RlLFxuICAgIGtiZCB7XG4gICAgICAgIHBhZGRpbmc6IDNweCAzcHg7XG4gICAgfVxuXG4gICAgcHJlIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICAgIHByZSBjb2RlLFxuICAgIHByZSBrYmQge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgKiBPdGhlcnNcbiAgICAqL1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgI2JiYjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcbiAgICAgICAgcGFkZGluZzogMTJweCAxLjVyZW07XG4gICAgfVxuICAgIGJsb2NrcXVvdGU6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBibG9ja3F1b3RlIHA6bGFzdC1jaGlsZCxcbiAgICBibG9ja3F1b3RlIHVsOmxhc3QtY2hpbGQsXG4gICAgYmxvY2txdW90ZSBvbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgYmxvY2txdW90ZSBmb290ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiA4MCU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byFpbXBvcnRhbnQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjYmJiO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMi4yNXJlbSAwO1xuICAgIH1cblxuICAgIGR0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgZGQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV0sXG4gICAgYWNyb255bVt0aXRsZV0ge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogMDtcbiAgICB9XG5cbiAgICB0YWJsZSxcbiAgICBibG9ja3F1b3RlLFxuICAgIHByZSxcbiAgICBjb2RlLFxuICAgIC8vIGZpZ3VyZSxcbiAgICBsaSxcbiAgICBocixcbiAgICAvLyB1bCxcbiAgICAvLyBvbCxcbiAgICBhLFxuICAgIHRyIHtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgcCxcbiAgICBhIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2IHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBoMSArIHAsXG4gICAgaDIgKyBwLFxuICAgIGgzICsgcCB7XG4gICAgICAgIHBhZ2UtYnJlYWstYmVmb3JlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBwYWdlLWJyZWFrLWJlZm9yZTogYXV0bztcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXV0bztcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgfVxuXG4gICAgYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNWNtIDFjbSAxY20gMWNtO1xuICAgIH1cblxuICAgIGFiYnJbdGl0bGVdOmFmdGVyLFxuICAgIGFjcm9ueW1bdGl0bGVdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7XG4gICAgfVxuXG4gICAgLnBhZ2UtYnJlYWsge1xuICAgICAgICBwYWdlLWJyZWFrLWJlZm9yZTogYWx3YXlzO1xuICAgIH1cblxuICAgIC5wYWdlLWJyZWFrLWFmdGVyIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYWx3YXlzO1xuICAgIH1cblxuICAgIC5uby1wcmludCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgYS5uby1yZWZvcm1hdDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cblxuICAgIGFiYnJbdGl0bGVdLm5vLXJlZm9ybWF0OmFmdGVyLFxuICAgIGFjcm9ueW1bdGl0bGVdLm5vLXJlZm9ybWF0OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgfVxuXG59XG4iXX0= */
