/*=============================================================================================	
    Company    : PT Web Architect Technology - webarq.com
    Document   : Stylesheet
    Author     : Andri Samsuri
==============================================================================================*/
/*=============================================================================================	
    Company    : PT Web Architect Technology - webarq.com
    Document   : Stylesheet
    Author     : FrontEnd Team  
==============================================================================================*/
/* import bourbon - http://bourbon.io/docs */
/* color global
----------------------------------------------------------------------------------------------*/

.row-my-account .nav-account ul li.training-dev a .icon {
  background-image: url("../images/material/edu-icon.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

body {
  color: #333;
  font-size: 12px;
  font-family: "Lato", sans-serif;
  position: relative;
  overflow-x: hidden;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body.lock {
  overflow-y: hidden;
}

figure {
  margin: 0;
  padding: 0;
}

figure img {
  vertical-align: middle;
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
}

p {
  margin: 1px 0 15px;
  line-height: 20px;
}

input, textarea, select {
  font-size: 12px;
  border: none;
  border: 1px solid #D8D8D8;
  padding: 10px;
  margin: 0;
  color: #666;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-family: "Lato";
}

input[type=checkbox], input[type=radio] {
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  opacity: 0;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

h1 {
  font-size: 32px;
}

h2 {
  font-size: 28px;
}

h3 {
  font-size: 24px;
}

h4 {
  font-size: 20px;
}

h5 {
  font-size: 16px;
}

h6 {
  font-size: 14px;
}

.heading-lg {
  font-size: 36px;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.11;
  letter-spacing: normal;
  color: #79531d;
  margin-bottom: 30px;
}

.heading-lg .note {
  display: block;
  padding: 10px 0 0 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.71;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.heading-lg.grey {
  color: #999;
}

.heading-lg.center {
  text-align: center;
}

.heading-lg.black {
  color: #111;
}

.heading-lg.sm-bottom {
  margin-bottom: 10px;
}

.heading-md {
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  color: #79531d;
  margin-bottom: 20px;
}

.heading-md.black {
  color: #333;
}

.heading-md.center {
  text-align: center;
}

.heading-md.has-bn {
  padding-right: 100px;
}

.heading-md.sm-bottom {
  margin-bottom: 10px;
}

.heading-md .btn-shop-again {
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: center;
  color: #79531d;
  position: absolute;
  top: 5px;
  right: 0;
  padding-right: 28px;
}

.heading-md .btn-shop-again:after {
  position: absolute;
  width: 19px;
  height: 15px;
  content: "";
  top: 0;
  right: 0;
  background: url("../images/material/ico-arr-lenght.png") no-repeat 0 0;
}

.heading-md .btn-shop-again:hover {
  opacity: 0.8;
}

.heading-sm {
  font-size: 18px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  color: #1fb25a;
  margin-bottom: 20px;
}

.heading-sm.center {
  text-align: center;
}

.heading-sm.black {
  color: #333;
}

.heading-sm.sm-bottom {
  margin-bottom: 10px;
}

.heading-xsm {
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  color: #666;
  margin-bottom: 15px;
}

.heading-xsm.md {
  font-size: 14px;
  margin-bottom: 5px;
}

.heading-xsm.center {
  text-align: center;
}

.heading-xsm.black {
  color: #333;
}

.heading-xsm.green {
  color: #1fb25a;
}

.heading-xsm.sm-bottom {
  margin-bottom: 10px;
}

.heading-xxsm {
  font-size: 12px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  color: #999;
  margin-bottom: 10px;
}

.heading-xxsm.center {
  text-align: center;
}

a {
  transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  -moz-transition: all 0.15s ease-in-out;
  -ms-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
}

.after_clear, header .box .sub-box .row:after, header .box .sub-box .row .col.dc-left a:after, .nav-mobile .mob-inner .head:after, .nav-mobile .mob-inner .search-mobile:after, .row-category .row:after, .row-best-seller h3.more:after, .product-list .row:after, .row-testimoni .row:after, .mid-content:after, .aside .sidebar-filter.is-range .range:after, .main-filter .filter-top:after, .main-filter .filter-bottom:after, .row-article .row:after, .grid-spread .row:after, .listing-event .row:after, .box-rate:after, .review-rate-md:after, .box-cm:after, .product-detail:after, .product-detail .product-text .row-box:after, .box-screen-rate:after, .row-discuss:after, .post-comment .list .row-comment .grid-pic:after, .row-reg:after, .opt-checkbox:after, .opt-checkbox.voucher .item label:after, .form-std .form-group:after, .form-std .form-child:after, .form-std .row-date:after, .form-std .row-st:after, .form-std .row-opt:after, .form-std .row-half:after, .form-std .row-radio:after, .row-form .row:after, .cart-overview.table-order-status table tfoot tr td.td-market .row-market, .row-address:after, .row-address .col .box-kurir:after, .row-my-account:after, .row-my-account .side-profile .box-poin:after, .row-my-account .account-content .filter-bottom:after, .row-my-account .listing-order-transaction .row-tdt, .row-my-account .listing-order-transaction .row-market, .account-overview .row:after, .upload-file-multiple .wrap-files:after, .listing-address .row:after, .tiramart-point-info .row:after, .listing-order .row:after, .order-status .row-head:after, .row-result-poin .row:after, .row-voucher .row:after, .mainslider-area:after, .form-testi .testimoni-area:after, .form-testi .peserta-area:after, .row-view:after, .box-card:after, .box-card .txt:after, .row-charts:after, footer .foot-top .row:after, footer .foot-top .row .col.col-4 .box-socialmedia:after, .box-tracking .head-track:after, .add-comment .list:after, .sc_content .headpop, .wrap-left-right:after, .sec-input-select-three:after {
  content: "";
  clear: both;
  display: block;
}

.after_clear:after, header .box .sub-box .row:after, header .box .sub-box .row .col.dc-left a:after, .nav-mobile .mob-inner .head:after, .nav-mobile .mob-inner .search-mobile:after, .row-category .row:after, .row-best-seller h3.more:after, .product-list .row:after, .row-testimoni .row:after, .mid-content:after, .aside .sidebar-filter.is-range .range:after, .main-filter .filter-top:after, .main-filter .filter-bottom:after, .row-article .row:after, .grid-spread .row:after, .listing-event .row:after, .box-rate:after, .review-rate-md:after, .box-cm:after, .product-detail:after, .product-detail .product-text .row-box:after, .box-screen-rate:after, .row-discuss:after, .post-comment .list .row-comment .grid-pic:after, .row-reg:after, .opt-checkbox:after, .opt-checkbox.voucher .item label:after, .form-std .form-group:after, .form-std .form-child:after, .form-std .row-date:after, .form-std .row-st:after, .form-std .row-opt:after, .form-std .row-half:after, .form-std .row-radio:after, .row-form .row:after, .cart-overview.table-order-status table tfoot tr td.td-market .row-market:after, .row-address:after, .row-address .col .box-kurir:after, .row-my-account:after, .row-my-account .side-profile .box-poin:after, .row-my-account .account-content .filter-bottom:after, .row-my-account .listing-order-transaction .row-tdt:after, .row-my-account .listing-order-transaction .row-market:after, .account-overview .row:after, .upload-file-multiple .wrap-files:after, .listing-address .row:after, .listing-order .row:after, .order-status .row-head:after, .row-result-poin .row:after, .row-voucher .row:after, .mainslider-area:after, .form-testi .testimoni-area:after, .form-testi .peserta-area:after, .row-view:after, .box-card:after, .box-card .txt:after, .row-charts:after, footer .foot-top .row:after, footer .foot-top .row .col.col-4 .box-socialmedia:after, .box-tracking .head-track:after, .add-comment .list:after, .sc_content .headpop:after, .wrap-left-right:after, .sec-input-select-three:after, .wrapper:after, section:after {
  clear: both;
  display: block;
  content: " ";
}

.flex-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
}

.homepage .middle {
  padding-top: 0;
}

body.cms h1 {
  font-size: 36px;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.11;
  letter-spacing: normal;
  color: #79531d;
  margin-bottom: 30px;
}

body.cms h2 {
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  color: #79531d;
  margin-bottom: 20px;
}

/* structure 
----------------------------------------------------------------------------------------------*/
section {
  position: relative;
}

.wrapper {
  width: 1170px;
  margin: 0 auto;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.wrapper.inner {
  padding: 0 100px;
}

.wrapper.inner-2 {
  padding: 0 70px 0 70px;
}

.btn {
  height: 50px;
  line-height: 50px;
  text-align: center;
  padding: 0 30px;
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  position: relative;
  border: 0;
  background: #1fb25a;
  cursor: pointer;
  transition: all 0.18s ease-in-out;
  -webkit-transition: all 0.18s ease-in-out;
  -moz-transition: all 0.18s ease-in-out;
  -ms-transition: all 0.18s ease-in-out;
  -o-transition: all 0.18s ease-in-out;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.btn span {
  position: relative;
  z-index: 3;
}

.btn span.ico-download {
  position: absolute;
  width: 24px;
  height: 24px;
  background: url(../images/material/ico-download.png) no-repeat;
  left: 10px;
  top: 10px;
}

.btn:hover {
  background: #11a74d;
  color: #fff;
}

.btn.btn-line {
  border: 2px solid #fff;
  text-transform: uppercase;
  line-height: 46px;
  background: none;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.btn.btn-line:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: #fff;
  opacity: 0;
  z-index: 1;
  transform: scale(0.98, 0.85);
  -webkit-transform: scale(0.98, 0.85);
  -moz-transform: scale(0.98, 0.85);
  -ms-transform: scale(0.98, 0.85);
  -o-transform: scale(0.98, 0.85);
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

.btn.btn-line:hover {
  color: #11a74d;
}

.btn.btn-line:hover:before {
  opacity: 1;
  transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -o-transform: scale(1, 1);
}

.btn.btn-line-2 {
  border: 2px solid #f4712e;
  text-transform: uppercase;
  color: #f4712e;
  line-height: 46px;
  background: none;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.btn.btn-line-2:hover {
  background: #f4712e;
  color: #fff;
}

.btn.btn-line-orange {
  border: 1px solid #f4712e;
  text-transform: uppercase;
  color: #f4712e;
  line-height: 46px;
  background: none;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.btn.btn-line-orange:hover {
  background: #f4712e;
  color: #fff;
}

.btn.btn-green {
  background: #1fb25a;
}

.btn.btn-green:hover {
  background: #11a74d;
  color: #fff;
}

.btn.btn-green-line {
  border: 1px solid #1fb25a;
  text-transform: uppercase;
  color: #1fb25a;
  line-height: 46px;
  background: none;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.btn.btn-green-line:hover {
  background: #1fb25a;
  color: #fff;
}

.btn.btn-orange {
  background: #f4712e;
}

.btn.btn-orange:hover {
  background: #ef6824;
  color: #fff;
}

.btn.btn-brown {
  background: #79531d;
  padding: 0 18px;
}

.btn.btn-brown:hover {
  background: #885917;
  color: #fff;
}

.btn.btn-grey {
  background: #ccc;
  color: #fff;
}

.btn.btn-grey:hover {
  background: #c0c0c0;
}

.btn.btn-grey-line {
  border: 1px solid #ccc;
  text-transform: uppercase;
  color: #666666;
  line-height: 46px;
  background: none;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.btn.btn-grey-line:hover {
  background: #ccc;
  color: #666666;
}

.btn.btn-large {
  padding: 0 63px;
}

.btn.btn-md-lg {
  padding: 0 43px;
}

.btn.btn-md2 {
  padding: 0 25px;
}

.btn.btn-shadow {
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -ms-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -o-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}

.btn.abs {
  position: absolute;
  z-index: 5;
}

.btn.abs.abs-right {
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.btn.no-radius {
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
}

.btn.sm-radius {
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.btn.length {
  padding: 0 90px;
}

.btn.btn-md {
  height: 40px;
  line-height: 40px;
  font-size: 14px;
  padding: 0 14px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.btn.btn-sm {
  height: 36px;
  line-height: 36px;
  font-size: 12px;
  padding: 0 14px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.btn.btn-xsm {
  height: 30px;
  line-height: 30px;
  font-size: 12px;
  padding: 0 14px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.btn.font-md {
  font-size: 14px;
}

.btn.font-sm {
  font-size: 12px;
}

.btn.btn-full {
  display: block;
  height: 60px;
  line-height: 60px;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  border: 0;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.btn.btn-ico {
  padding-left: 40px;
}

.btn-text {
  display: inline-block;
  color: #1fb25a;
  line-height: 1.25;
  position: relative;
}

.btn-text:hover {
  color: #149f4c;
}

.btn-text.edit {
  font-weight: bold;
  padding: 0 0 0 18px;
  margin-right: 32px;
}

.btn-text.edit:before {
  position: absolute;
  width: 15px;
  height: 15px;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/ico-edit.png") no-repeat 0 0;
}

.btn-text.place {
  font-weight: bold;
  padding: 0 0 0 18px;
}

.btn-text.place:before {
  position: absolute;
  width: 15px;
  height: 15px;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/ico-map.png") no-repeat 0 0;
}

.btn-text.voucher {
  font-weight: bold;
  padding: 0 0 0 25px;
  color: #cb4646;
}

.btn-text.voucher:before {
  position: absolute;
  width: 19px;
  height: 15px;
  content: "";
  left: 0;
  top: 2px;
  background: url("../images/material/ico-notes.png") no-repeat center center;
}

.btn-back {
  display: inline-block;
  position: relative;
  padding: 0 0 0 28px;
  color: #79531d;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: center;
}

.btn-back:before {
  position: absolute;
  width: 19px;
  height: 15px;
  content: "";
  left: 0;
  top: 1px;
  background: url("../images/material/iconfinder-arrow-prev.png") no-repeat center center;
  background-size: 19px 15px;
}

.btn-back.space-bottom {
  margin-bottom: 20px;
}

.btn-back:hover {
  opacity: 0.8;
  color: #79531d;
}

.wrp-btn {
  margin-top: 20px;
}

.wrp-btn.center {
  text-align: center;
}

.wrp-btn .btn {
  min-width: 150px;
  height: 32px;
  line-height: 32px;
}

.box-voucher {
  max-height: 510px;
  overflow: auto;
}

.selectbox {
  display: inline-block;
  min-width: 140px;
  height: 30px;
  line-height: 30px;
  position: relative;
  border: 1px solid #ccc;
  box-shadow: 0 0 1px #ccc inset;
  -webkit-box-shadow: 0 0 1px #ccc inset;
  -moz-box-shadow: 0 0 1px #ccc inset;
  -ms-box-shadow: 0 0 1px #ccc inset;
  -o-box-shadow: 0 0 1px #ccc inset;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.selectbox:after {
  position: absolute;
  width: 10px;
  height: 10px;
  content: "";
  right: 7px;
  top: 50%;
  z-index: 2;
  background: url("../images/material/arr-drop-sm.png") no-repeat center center;
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.selectbox select {
  width: 100%;
  height: 100%;
  line-height: 100%;
  padding: 0 20px 0 9px;
  position: relative;
  z-index: 3;
  background: none;
  cursor: pointer;
  border: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.selectbox select:focus {
  box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -webkit-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -moz-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -ms-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -o-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
}

.selectbox.md {
  min-width: 180px;
}

.selectbox.md select {
  font-size: 14px;
}

.selectbox.v2 {
  height: 50px;
  line-height: 50px;
  min-width: 100%;
}

.selectbox.v2 select {
  padding-left: 15px;
  font-size: 14px;
  color: #999;
}

/* header
----------------------------------------------------------------------------------------------*/
header {
  height: 80px;
  background: #fff;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 8787;
  border-bottom: 1px solid #1fb25a;
}

header .wrapper {
  height: 100%;
}

header .burger-menu {
  float: left;
  width: 60px;
  height: 60px;
  background: #1fb25a;
  cursor: pointer;
  margin: 0 20px 0 0;
  position: relative;
  display: none;
}

header .burger-menu span {
  position: absolute;
  width: 18px;
  height: 3px;
  background: #fff;
  left: 22px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

header .burger-menu span:nth-child(1) {
  top: 20px;
}

header .burger-menu span:nth-child(2) {
  top: 26px;
}

header .burger-menu span:nth-child(3) {
  top: 32px;
}

header .logo {
  float: left;
  margin: 17px 0 0 0;
  width: 200px;
  height: 47px;
}

header .head-order {
  position: relative;
  float: left;
  margin: 17px 0 0 0;
  width: 500px;
  height: 47px;
}

header .head-order .back {
  position: relative;
  height: 80px;
  width: 80px;
}

header .head-order .back span:first-child {
  height: 80px;
  width: 80px;
  background: url(../images/material/ico-back.png) no-repeat center;
  position: absolute;
  top: -17px;
  left: 0;
}

header .head-order .back span:first-child:before {
  content: "";
  position: absolute;
  border: 1px solid rgba(255, 255, 255, 0.58);
  border-top: 0;
  border-bottom: 0;
  height: 100%;
  width: 100%;
  opacity: 0.58;
}

header .head-order .back span:last-child {
  position: absolute;
  top: -17px;
  left: 0;
  font-size: 12px;
  line-height: 15px;
  color: #fff;
  opacity: 0.52;
  height: 80px;
  width: 80px;
  padding: 55px 30px;
  box-sizing: border-box;
  padding-bottom: 0;
}

header .head-order .box-order {
  position: absolute;
  left: 100px;
  padding-top: 5px;
  box-sizing: border-box;
}

header .head-order .box-order h5 {
  font-size: 12px;
  line-height: 15px;
  opacity: 0.52;
}

header .head-order .box-order h4 {
  font-size: 18px;
  line-height: 22px;
}

header .head-order .box-order h3 {
  font-size: 24px;
  line-height: 35px;
  font-weight: bold;
}

header .right {
  float: right;
  padding: 17px 0 0 0;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .right #accordian, header .right #accordian2 {
  width: 100%;
}

header .right #accordian h3, header .right #accordian2 h3 {
  position: relative;
}

header .right #accordian h3 a, header .right #accordian2 h3 a {
  padding: 0 10px;
  font-size: 16px;
  line-height: 28px;
  font-weight: bold;
  display: block;
  color: #fff;
  text-decoration: none;
  padding-right: 30px;
  box-sizing: border-box;
}

header .right #accordian ul li, header .right #accordian2 ul li {
  list-style-type: none;
  margin: 0;
  color: #f00;
}

header .right #accordian li, header .right #accordian2 li {
  list-style-type: none;
  margin: 0;
}

header .right #accordian .have-child.active h3 a:after, header .right #accordian2 .have-child.active h3 a:after {
  transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  -moz-transition: all 0.15s ease-in-out;
  -ms-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
}

header .right #accordian .have-child h3 a:after, header .right #accordian2 .have-child h3 a:after {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  background: url(../images/material/ico-arr-circ.png);
  right: 0px;
  top: 15px;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  -moz-transition: all 0.15s ease-in-out;
  -ms-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
}

header .right #accordian .have-child > ul, header .right #accordian2 .have-child > ul {
  display: none;
}

header .right #accordian .cart-overview, header .right #accordian2 .cart-overview {
  background: #fff;
  position: absolute;
  top: 81px;
  left: 0;
  width: 100%;
}

header .right #accordian .cart-overview .table-cart, header .right #accordian2 .cart-overview .table-cart {
  overflow-y: auto;
  max-height: 540px;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
}

header .right #accordian .cart-overview .table-cart table tbody, header .right #accordian2 .cart-overview .table-cart table tbody {
  background: #fff;
}

header .right #accordian .cart-overview.arisan .product-cart .product-md, header .right #accordian2 .cart-overview.arisan .product-cart .product-md {
  width: 19%;
  height: 45px;
}

header .right #accordian .cart-overview.arisan .col-select select, header .right #accordian2 .cart-overview.arisan .col-select select {
  padding-right: 20px;
  background: url(../images/material/arr-drop-sm.png) no-repeat 95% center;
}

header .left-head {
  float: left;
  padding: 17px 0 0 45px;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .nav {
  float: left;
  margin: 0 10px 0 0;
}

header .nav ul li {
  display: inline-block;
  margin: 0 10px 0 10px;
}

header .nav ul li a {
  display: block;
  padding: 15px 0 32px 0;
  font-size: 14px;
  line-height: 1.21;
  color: #111;
  text-transform: uppercase;
  font-weight: bold;
  position: relative;
}

header .nav ul li a:after {
  position: absolute;
  width: 0;
  height: 3px;
  content: "";
  left: 50%;
  right: 0;
  bottom: 0;
  background: #1fb25a;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transition: all 0.18s ease-in-out;
  -webkit-transition: all 0.18s ease-in-out;
  -moz-transition: all 0.18s ease-in-out;
  -ms-transition: all 0.18s ease-in-out;
  -o-transition: all 0.18s ease-in-out;
}

header .nav ul li a:hover, header .nav ul li a.active {
  color: #1fb25a;
}

header .nav ul li a:hover:after, header .nav ul li a.active:after {
  width: 100%;
}

header .box {
  float: left;
  position: relative;
}

header .box .fa-ico {
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

header .box .sub-box {
  position: absolute;
  width: 230px;
  background: #fff;
  z-index: 3;
  top: 100%;
  right: 28px;
  border: 1px solid #1fb25a;
  padding: 0 10px;
  margin-top: 20px;
  min-height: 100px;
  display: none;
  opacity: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 0 0 4px 4px;
  -webkit-border-radius: 0 0 4px 4px;
  -moz-border-radius: 0 0 4px 4px;
  -ms-border-radius: 0 0 4px 4px;
  -o-border-radius: 0 0 4px 4px;
}

header .box .sub-box:before {
  position: absolute;
  width: 14px;
  height: 14px;
  content: "";
  right: 7px;
  top: -9px;
  background: url("../images/material/ic-arr-tool.png") no-repeat 0 0;
}

header .box .sub-box ul li {
  border-bottom: 1px solid #d8d8d8;
}

header .box .sub-box ul li a {
  display: block;
  padding: 10px 0 10px 28px;
  position: relative;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  color: #666;
}

header .box .sub-box ul li a .icon {
  position: absolute;
  width: 18px;
  height: 23px;
  content: "";
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

header .box .sub-box ul li.my-profile .icon {
  background: url("../images/material/my-account-profile.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-mitra .icon {
  background: url("../images/material/my-account-mitra.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-order .icon {
  background: url("../images/material/my-account-order.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-voucher .icon {
  background: url("../images/material/my-account-voucher.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-trip .icon {
  background: url("../images/material/my-account-trip.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-poin .icon {
  background: url("../images/material/my-account-poin.png") no-repeat center center;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 20px;
  letter-spacing: normal;
  text-align: center;
  color: #49cbd6;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-tracking-err .icon {
  background: url("../images/material/PngItem_29139.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-account-mp .icon {
  background: url("../images/material/mp-24.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-account-wa .icon {
  background: url("../images/material/ico-wa.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-helpdesk .icon {
  background: url("../images/material/my-account-helpdesk.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.my-notif .icon {
  background: url("../images/material/my-account-notif.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box ul li.logout .icon {
  background: url("../images/material/logout.png") no-repeat center center;
  background-size: 100% auto;
}

header .box .sub-box .row {
  padding: 0 0 11px 0;
  margin: 0 0 11px 0;
  border-bottom: 1px solid #eaeaea;
}

header .box .sub-box .row .col {
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .box .sub-box .row .col.dc-left {
  width: 70%;
  padding-right: 25px;
}

header .box .sub-box .row .col.dc-left a {
  display: block;
}

header .box .sub-box .row .col.dc-right {
  width: 30%;
  text-align: right;
}

header .box .sub-box .row .col .subtotal {
  line-height: 1.25;
  margin: 0;
}

header .box .sub-box .row .col .product-small {
  float: left;
  width: 50px;
  height: 35px;
  border: 1px solid #eaeaea;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .box .sub-box .row .col .product-small figure {
  height: 100%;
  text-align: center;
  padding: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .box .sub-box .row .col .product-small figure img {
  height: 100%;
}

header .box .sub-box .row .col .product-title {
  margin-left: 60px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.86;
  letter-spacing: normal;
  text-align: left;
  color: #333333;
}

header .box .sub-box .row .col .price {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  color: #cb4646;
}

header .box .sub-box .row .col .qty {
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.2;
  letter-spacing: normal;
  color: #999;
}

header .box .sub-box .row.total .dc-left {
  width: 50%;
}

header .box .sub-box .row.total .dc-right {
  width: 50%;
}

header .box .sub-box.dropdown-cart {
  width: 370px;
  right: -5px;
  padding: 10px;
}

header .box .sub-box.dropdown-search {
  width: 640px;
  height: 65px;
  right: 20px;
  padding: 0;
  min-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .box .sub-box.dropdown-search form {
  height: 100%;
  position: relative;
}

header .box .sub-box.dropdown-search form ::-webkit-input-placeholder {
  color: #999;
}

header .box .sub-box.dropdown-search form :-moz-placeholder {
  color: #999;
}

header .box .sub-box.dropdown-search form ::-moz-placeholder {
  color: #999;
}

header .box .sub-box.dropdown-search form :-ms-input-placeholder {
  color: #999;
}

header .box .sub-box.dropdown-search form input[type="text"] {
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  line-height: 100%;
  padding: 0 75px 0 25px;
  font-size: 14px;
  color: #999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

header .box .sub-box.dropdown-search form input[type="submit"] {
  position: absolute;
  width: 65px;
  height: 100%;
  top: 0;
  right: 0;
  background: none;
  border: 0;
  font-size: 18px;
  color: #1fb25a;
  cursor: pointer;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

header .box .sub-box.dropdown-search form input[type="submit"]:hover {
  font-weight: 550;
}

header .box-lang {
  margin: 15px 0 0 0;
  padding: 0 24px 0 0;
}

header .box-lang a {
  display: inline-block;
  line-height: 1.21;
  font-size: 14px;
  font-weight: bold;
  color: #999;
  border-right: 1.5px solid #999;
  text-align: center;
  letter-spacing: normal;
  margin: 0 -3px 0 0;
  padding: 0 4px 0 5px;
}

header .box-lang a:last-child {
  border-right: 0;
}

header .box-lang a:hover, header .box-lang a.active {
  color: #1fb25a;
}

header .box-search {
  margin: 12px 0 0 0;
  width: 34px;
  padding: 0 17px 0 15px;
}

header .box-search .fa-ico {
  width: 100%;
  height: 51px;
  background: url("../images/material/ico-search.png") no-repeat 0 0;
}

header .box-search.act .fa-ico {
  background: url("../images/material/ico-search-act.png") no-repeat 0 0;
}

header .box-account {
  margin: 12px 0 0 0;
  width: 32px;
  padding: 0 22px 0 15px;
}

header .box-account .fa-ico {
  width: 100%;
  height: 51px;
  background: url("../images/material/ico-account.png") no-repeat 0 0;
  display: block;
}

header .box-account.act .fa-ico {
  background: url("../images/material/ico-account-act.png") no-repeat 0 0;
}

header .box-cart {
  margin: 12px 0 0 0;
  padding: 0 0 0 10px;
}

header .box-cart .fa-ico {
  width: 24px;
  height: 51px;
  background: url("../images/material/ico-cart.png") no-repeat center 0;
  position: relative;
  display: block;
}

header .box-cart .fa-ico span {
  position: absolute;
  width: 16px;
  height: 16px;
  background: #dd1e31;
  color: #fff;
  font-size: 10px;
  top: -5px;
  right: -5px;
  line-height: 16px;
  text-align: center;
  font-weight: bold;
  line-height: 1.4;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

header .box-cart.act .fa-ico {
  background: url("../images/material/ico-cart-act.png") no-repeat 0 0;
}

.body-payment header {
  background: #1fb25a;
  color: #fff;
}

.body-payment header .title-checkout {
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  position: relative;
  padding: 5px 0 5px 30px;
}

.body-payment header .title-checkout:before {
  position: absolute;
  width: 1px;
  height: 100%;
  background: #fff;
  content: "";
  opacity: 0.3;
  left: 0;
  top: 0;
}

.bg-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 55;
  background: rgba(0, 0, 0, 0.7);
  display: none;
}

.side-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 8888;
  background: rgba(0, 0, 0, 0.7);
  display: none;
}

.overlay-transparent {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 55;
  background: transparent;
}

.nav-mobile {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 8888;
  display: none;
}

.nav-mobile .mob-inner {
  position: absolute;
  width: 384px;
  height: 100%;
  background: #fff;
  top: 0;
  left: -384px;
  z-index: 56;
  display: none;
  opacity: 0;
}

.nav-mobile .mob-inner .head {
  background: #1fb25a;
  height: 60px;
}

.nav-mobile .mob-inner .head .logo {
  width: 135px;
  height: auto;
  margin: 14px 0 0 30px;
  float: left;
}

.nav-mobile .mob-inner .head .logo img {
  width: 100%;
}

.nav-mobile .mob-inner .head .btn-close {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 20px;
  right: 15px;
  z-index: 5;
  margin-top: -55px;
}

.nav-mobile .mob-inner .head .btn-close span {
  position: absolute;
  width: 100%;
  height: 2px;
  background: #fff;
  left: 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.nav-mobile .mob-inner .head .btn-close span:nth-child(1) {
  top: 0;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}

.nav-mobile .mob-inner .head .btn-close span:nth-child(2) {
  top: 17px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
}

.nav-mobile .mob-inner .search-mobile {
  position: relative;
  border-bottom: 1px solid #eaeaea;
  display: none;
}

.nav-mobile .mob-inner .search-mobile ::-webkit-input-placeholder {
  color: #999;
}

.nav-mobile .mob-inner .search-mobile :-moz-placeholder {
  color: #999;
}

.nav-mobile .mob-inner .search-mobile ::-moz-placeholder {
  color: #999;
}

.nav-mobile .mob-inner .search-mobile :-ms-input-placeholder {
  color: #999;
}

.nav-mobile .mob-inner .search-mobile input[type="text"] {
  float: left;
  width: 100%;
  padding: 20px 50px 20px 30px;
  border: none;
  position: relative;
  z-index: 2;
  font-size: 12px;
  color: #999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.nav-mobile .mob-inner .search-mobile input[type="submit"] {
  position: absolute;
  width: 50px;
  height: 100%;
  top: 0;
  right: 0;
  padding: 0 10px 0 0;
  border: 0;
  line-height: 100%;
  color: #1fb25a;
  z-index: 5;
  font-weight: bold;
  font-size: 12px;
  background: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.nav-mobile .mob-inner .menu ul li {
  border-bottom: 1px solid #eaeaea;
}

.nav-mobile .mob-inner .menu ul li a {
  display: block;
  padding: 20px 30px;
  font-size: 12px;
  color: #333;
}

.nav-mobile .mob-inner .lang-mob {
  margin: 20px 0 0 25px;
  padding: 0;
}

.nav-mobile .mob-inner .lang-mob a {
  display: inline-block;
  line-height: 1.21;
  font-size: 12px;
  font-weight: bold;
  color: #999;
  border-right: 1px solid #999;
  text-align: center;
  letter-spacing: normal;
  margin: 0 -3px 0 0;
  padding: 0 4px 0 5px;
}

.nav-mobile .mob-inner .lang-mob a:last-child {
  border-right: 0;
}

.nav-mobile .mob-inner .lang-mob a:hover, .nav-mobile .mob-inner .lang-mob a.active {
  color: #1fb25a;
}

.nav-mobile .mob-overlay {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 55;
  position: absolute;
  background: rgba(0, 0, 0, 0.7);
  display: none;
}

/* middle
----------------------------------------------------------------------------------------------*/
.middle {
  min-height: 450px;
  padding-top: 80px;
}

.btn-scroll {
  position: absolute;
  width: 22px;
  height: 40px;
  border: 2px solid #fff;
  left: 50%;
  bottom: 30px;
  z-index: 17;
  cursor: pointer;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  -ms-border-radius: 30px;
  -o-border-radius: 30px;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.btn-scroll:before {
  position: absolute;
  width: 2px;
  height: 7px;
  content: "";
  left: 50%;
  top: 9px;
  background: #fff;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
}

.parallax_box {
  position: fixed;
  top: 0;
  left: 0;
  padding: 0 0 0 0;
  width: 100%;
  height: auto;
}

.homeslider {
  position: relative;
  height: 100vh;
  z-index: 1;
}

.homeslider .slide {
  position: relative;
}

.homeslider figure {
  line-height: 0;
  position: relative;
  height: 100vh;
  /*padding-top: 80px;*/
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.homeslider figure:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.2);
  z-index: 2;
}

.homeslider figure:after {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  z-index: 3;
  background: url("../images/material/bg-dotted.png") repeat center center;
}

.homeslider figure img {
  width: 100%;
  position: relative;
  z-index: 1;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.homeslider .caption {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 15;
  margin: auto;
  text-align: center;
  color: #fff;
}

.homeslider .caption .wrapper {
  height: 100%;
  display: table;
  width: 600px;
  padding: 80px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.homeslider .caption .tagline {
  display: table-cell;
  vertical-align: middle;
}

.homeslider .caption .icon-logo {
  text-align: center;
  padding-bottom: 15px;
}

.homeslider .caption .icon-logo img {
  display: inline-block;
}

.homeslider .caption .title-small {
  font-size: 34px;
  font-weight: bold;
  line-height: 38px;
  text-transform: uppercase;
  margin-bottom: 10px;
  position: relative;
  padding-top: 0;
  letter-spacing: 3.5px;
  /*&:before {
                position:absolute; width: 30px; height: 37px; content: ""; left: 50%; top: 0;
                background: url('../images/material/ico-tagline.png') no-repeat center center;
                @include transform(translate(-50%,0));   
            }*/
}

.homeslider .caption .title-large {
  font-size: 90px;
  font-weight: 550;
  line-height: 72px;
  text-transform: uppercase;
  margin-bottom: 20px;
  position: relative;
}

.homeslider .caption .descrip {
  font-size: 18px;
  line-height: 30px;
  margin-bottom: 25px;
  position: relative;
}

.homeslider .caption .btn {
  position: relative;
}

.homeslider .slick-slider {
  height: 100%;
}

.homeslider .slick-list {
  line-height: 0;
  height: 100%;
}

.homeslider .slick-slider .slick-track, .homeslider .slick-slider .slick-list {
  height: 100%;
}

.homeslider .slick-slider .slick-track div, .homeslider .slick-slider .slick-list div {
  height: 100vh;
}

.homeslider .slick-slider .slick-track div div, .homeslider .slick-slider .slick-list div div {
  height: auto;
}

.homeslider .slick-slider .slick-track div div .wrapper, .homeslider .slick-slider .slick-list div div .wrapper {
  height: 100%;
}

.homeslider .slick-slider .slick-track div div .tagline, .homeslider .slick-slider .slick-list div div .tagline {
  height: 100%;
}

.homeslider .slick-arrow {
  position: absolute;
  width: 60px;
  height: 60px;
  border: 2px solid #fff;
  z-index: 16;
  top: 50%;
  background: none;
  cursor: pointer;
  text-indent: -999999px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.homeslider .slick-arrow.slick-prev {
  left: 50px;
}

.homeslider .slick-arrow.slick-prev:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/arrow-small-prev.png") no-repeat center center;
  transition: all 0.18s ease-in-out;
  -webkit-transition: all 0.18s ease-in-out;
  -moz-transition: all 0.18s ease-in-out;
  -ms-transition: all 0.18s ease-in-out;
  -o-transition: all 0.18s ease-in-out;
}

.homeslider .slick-arrow.slick-prev:hover:before {
  background-position: 40% center;
}

.homeslider .slick-arrow.slick-next {
  right: 50px;
}

.homeslider .slick-arrow.slick-next:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/arrow-small-next.png") no-repeat center center;
  transition: all 0.18s ease-in-out;
  -webkit-transition: all 0.18s ease-in-out;
  -moz-transition: all 0.18s ease-in-out;
  -ms-transition: all 0.18s ease-in-out;
  -o-transition: all 0.18s ease-in-out;
}

.homeslider .slick-arrow.slick-next:hover:before {
  background-position: 60% center;
}

.trigger-scroll {
  position: absolute;
  width: 100%;
  height: 100%;
}

.banner-large-home {
  position: relative;
  z-index: 15;
}

.banner-large-home .caption {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 5;
  font-size: 36px;
  color: #79531d;
}

.banner-large-home .caption .wrapper {
  height: 100%;
  display: table;
}

.banner-large-home .caption .tagline {
  display: table-cell;
  vertical-align: middle;
  width: 599px;
  line-height: 40px;
}

.banner-large-home figure {
  line-height: 0;
}

.banner-large-home figure img {
  width: 100%;
}

.banner-page {
  position: relative;
}

.banner-page figure {
  line-height: 0;
  position: relative;
}

.banner-page figure:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.2);
  z-index: 2;
}

.banner-page figure:after {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  z-index: 3;
  background: url("../images/material/bg-dotted.png") repeat center center;
}

.banner-page figure img {
  width: 100%;
  position: relative;
  z-index: 1;
}

.banner-page .caption {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 15;
  margin: auto;
  text-align: center;
  color: #fff;
}

.banner-page .caption .wrapper {
  height: 100%;
  display: table;
  width: 600px;
}

.banner-page .caption .tagline {
  display: table-cell;
  vertical-align: middle;
}

.banner-page .caption .title-small {
  font-size: 30px;
  font-weight: normal;
  line-height: 0.8;
  text-transform: uppercase;
  margin-bottom: 15px;
  position: relative;
  letter-spacing: 1.5px;
}

.banner-page .caption .title-large {
  font-size: 90px;
  font-weight: bold;
  line-height: 0.9;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.row-category {
  padding: 55px 0;
  position: relative;
  z-index: 5;
  background: #fff;
}

.row-category .row {
  position: relative;
}

.row-category .row .col {
  float: left;
  line-height: 0;
  width: 60%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-category .row .col a {
  display: block;
  line-height: 0;
  height: 100%;
  overflow: hidden;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.row-category .row .col a img {
  width: 100%;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.row-category .row .col:first-child {
  width: 40%;
}

.row-category .row .col.col-2 {
  padding-left: 20px;
  height: 50%;
  position: absolute;
  right: 0;
}

.row-category .row .col.col-2.top {
  top: 0;
  padding-bottom: 10px;
}

.row-category .row .col.col-2.bottom {
  bottom: 0;
  padding-top: 10px;
}

.row-category .row .col:hover a {
  box-shadow: 0px 0px 15px 0px #a1a0a0;
  -webkit-box-shadow: 0px 0px 15px 0px #a1a0a0;
  -moz-box-shadow: 0px 0px 15px 0px #a1a0a0;
  -ms-box-shadow: 0px 0px 15px 0px #a1a0a0;
  -o-box-shadow: 0px 0px 15px 0px #a1a0a0;
}

.row-category .row .col:hover a img {
  transform: scale(1.03);
  -webkit-transform: scale(1.03);
  -moz-transform: scale(1.03);
  -ms-transform: scale(1.03);
  -o-transform: scale(1.03);
}

.row-best-seller {
  padding: 50px 0;
  position: relative;
  z-index: 5;
  background: #fff url("../images/material/shadow-gradient.png") repeat-x center 0;
}

.row-best-seller h3 {
  margin-bottom: 40px;
  font-weight: bold;
  color: #79531d;
}

.row-best-seller h3.more {
  position: relative;
}

.row-best-seller h3.more a {
  float: right;
  color: #1fb25a;
  font-size: 14px;
  font-weight: bold;
  margin-top: 10px;
}

.row-best-seller .row {
  position: relative;
}

.row-best-seller .slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 12;
  width: 36px;
  height: 40px;
  background: #dfc298;
  padding: 0;
  border: 0;
  text-indent: -999999px;
  cursor: pointer;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.row-best-seller .slick-arrow:before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
}

.row-best-seller .slick-arrow.slick-prev {
  left: -40px;
  border-radius: 4px 0 0 4px;
  -webkit-border-radius: 4px 0 0 4px;
  -moz-border-radius: 4px 0 0 4px;
  -ms-border-radius: 4px 0 0 4px;
  -o-border-radius: 4px 0 0 4px;
}

.row-best-seller .slick-arrow.slick-prev:before {
  background: url("../images/material/arrow-md-prev.png") no-repeat center center;
}

.row-best-seller .slick-arrow.slick-next {
  right: -40px;
  border-radius: 0 4px 4px 0;
  -webkit-border-radius: 0 4px 4px 0;
  -moz-border-radius: 0 4px 4px 0;
  -ms-border-radius: 0 4px 4px 0;
  -o-border-radius: 0 4px 4px 0;
}

.row-best-seller .slick-arrow.slick-next:before {
  background: url("../images/material/arrow-md-next.png") no-repeat center center;
}

.row-best-seller .slick-arrow:hover {
  background: #1fb25a;
}

.btn-abs {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 8;
}

.product-list .row .col {
  float: left;
  text-align: left;
  position: relative;
  width: 270px;
  margin: 0 30px 50px 0;
  padding: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.product-list .row .col .ribbon {
  position: absolute;
  width: 43px;
  height: 43px;
  top: 5px;
  right: 5px;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  z-index: 5;
  text-align: center;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.product-list .row .col .ribbon.new {
  background: #1c8fa5;
  line-height: 43px;
}

.product-list .row .col .ribbon.sale {
  background: #f4712e;
  line-height: 43px;
}

.product-list .row .col .ribbon.disc {
  background: #f4712e;
  line-height: 12px;
}

.product-list .row .col .ribbon.disc span {
  padding: 10px 0 0 0;
  display: block;
}

.product-list .row .col figure {
  height: 192px;
  line-height: 0;
  position: relative;
  margin-bottom: 30px;
  overflow: hidden;
}

.product-list .row .col figure img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.product-list .row .col .title {
  font-size: 16px;
  line-height: 18px;
  margin-bottom: 10px;
}

.product-list .row .col .des {
  font-size: 12px;
  line-height: 14px;
  color: #707070;
}

.product-list .row .col .price {
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.13;
  letter-spacing: normal;
  text-align: left;
  color: #cb4646;
}

.product-list .row .col .price-disc {
  font-size: 12px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.product-list .row .col .price-disc .disc {
  background: #cb4646;
  color: #fff;
  display: inline-block;
  padding: 0 5px;
  margin-left: 7px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.product-list .row .col:nth-child(3n+3) {
  margin-right: 0;
}

.product-list .row .col:hover {
  box-shadow: 0px 0px 15px 0px #a1a0a0;
  -webkit-box-shadow: 0px 0px 15px 0px #a1a0a0;
  -moz-box-shadow: 0px 0px 15px 0px #a1a0a0;
  -ms-box-shadow: 0px 0px 15px 0px #a1a0a0;
  -o-box-shadow: 0px 0px 15px 0px #a1a0a0;
}

.product-list .row .col:hover figure img {
  transform: scale(0.95);
  -webkit-transform: scale(0.95);
  -moz-transform: scale(0.95);
  -ms-transform: scale(0.95);
  -o-transform: scale(0.95);
}

.product-list.col-4 .row .col {
  text-align: center;
  width: 272px;
  margin: 0 0 30px 0;
  padding: 15px;
}

.product-list.col-4 .row .col .des {
  color: #333;
}

.product-list.other .row .col {
  margin-bottom: 0;
}

.product-list.other .row .col:nth-child(3n+3) {
  margin-right: 30px;
}

.product-list.other .row .col:last-child {
  margin-right: 0;
}

.product-list .slider-best-seller .slick-slide {
  padding: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.product-list.list-promo .row .col {
  width: 277px;
}

.product-list.list-promo .row .col:nth-child(4n+4) {
  margin-right: 0;
}

.product-list .checkbox {
  position: absolute;
  margin: 0px 0 13px 0;
  background: none;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

.product-list .checkbox input {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 0;
  cursor: pointer;
  z-index: 2;
  background: none;
  bottom: 0;
  left: 0;
}

.product-list .checkbox input + label {
  position: relative;
  cursor: pointer;
  padding: 0;
  height: 100%;
  border: 0;
}

.product-list .checkbox input + label:before {
  position: absolute;
  width: 100%;
  height: auto;
  content: "";
  background: 0;
}

.product-list .checkbox input:disabled + label:before {
  background-position: 0 0;
}

.product-list .checkbox input:checked + label:before {
  bottom: -15px;
  right: 0;
  top: 0;
  left: 0;
  border: 1px solid #1FB25A;
  background: url(../images/material/icon-check-green.png) no-repeat;
  background-position: bottom right;
}

.product-list .checkbox .label {
  display: block;
  position: relative;
  z-index: 1;
  color: #777;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: left;
  color: #333333;
  padding-left: 28px;
}

.row-other {
  border-top: 1px solid #d8d8d8;
  padding: 50px 0 0 0;
}

.row-testimoni {
  padding: 50px 0;
  position: relative;
  z-index: 5;
  background: #fff url("../images/material/bg-testi.png") repeat-x center 0;
}

.row-testimoni h3 {
  margin-bottom: 35px;
  font-weight: bold;
  color: #79531d;
  text-align: center;
  padding-right: 30px;
}

.row-testimoni h3 span {
  position: relative;
  padding: 0 0 20px 0;
  display: block;
}

.row-testimoni h3 span:before {
  position: absolute;
  width: 40px;
  height: 2px;
  content: "";
  left: 50%;
  bottom: 0;
  background: #dfc298;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
}

.row-testimoni .row {
  padding-bottom: 70px;
}

.row-testimoni .row .col {
  float: left;
  width: 369px;
  padding: 0 30px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-testimoni .row .col figure {
  width: 80px;
  height: 80px;
  margin: 0 auto -30px auto;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.row-testimoni .row .col figure img {
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.row-testimoni .row .col .box {
  /*height: 210px; */
  padding: 50px 22px 22px 22px;
  text-align: center;
  color: #fff;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-testimoni .row .col .box .ts-top {
  margin-bottom: 20px;
}

.row-testimoni .row .col .box .ts-top .name {
  font-size: 16px;
  margin-bottom: 5px;
}

.row-testimoni .row .col .box .ts-top .position {
  font-size: 12px;
}

.row-testimoni .row .col .box .des {
  font-size: 12px;
  line-height: 16px;
}

.row-testimoni .slick-dots {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  z-index: 15;
  text-align: center;
}

.row-testimoni .slick-dots li {
  display: inline-block;
  cursor: pointer;
  padding: 5px 0;
  margin: 0 8px;
}

.row-testimoni .slick-dots li button {
  padding: 0;
  width: 20px;
  height: 5px;
  line-height: 5px;
  background: #ccc;
  text-indent: -999999px;
  border: 0;
  cursor: pointer;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

.row-testimoni .slick-dots li.slick-active button {
  width: 40px;
  background: #dfc298;
}

.row-spread {
  padding: 20px 0 90px 0;
  position: relative;
  z-index: 5;
  background: #fff;
}

.row-spread .wrapper {
  background: url("../images/material/bg-spread.jpg") no-repeat center center;
  height: 220px;
}

.row-spread figure {
  position: absolute;
  width: 351px;
  height: 284px;
  top: -30px;
  left: -40px;
}

.row-spread .text {
  padding: 0 350px 0 350px;
  font-size: 36px;
  color: #79531d;
  line-height: 40px;
  display: table;
  height: 100%;
}

.row-spread .text p {
  line-height: 40px;
  display: table-cell;
  vertical-align: middle;
}

.row-spread .btn.abs.abs-right {
  right: 38px;
}

.content-page header {
  border-bottom: 1px solid #1fb25a;
}

.mid-content {
  position: relative;
  padding: 65px 0 85px 0;
}

.mid-content.product {
  padding: 35px 0 85px 0;
}

.mid-content.product:before {
  position: absolute;
  width: 1px;
  height: 100%;
  top: 0;
  left: 270px;
  content: "";
  background: #eaeaea;
}

.mid-content.promo:before {
  display: none;
}

.mid-content p {
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  color: #666;
  margin: 0 0 35px 0;
}

.mid-content ul {
  margin: 0 0 30px 0;
}

.mid-content ul li {
  list-style: disc;
  margin: 0 0 0 20px;
  padding: 0 0 5px 0;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.mid-content ol {
  margin: 0 0 30px 0;
  font-size: 16px;
  color: #666;
}

.mid-content ol li {
  list-style: decimal;
  margin: 0 0 0 20px;
  padding: 0 0 5px 0;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.mid-content .paging {
  text-align: right;
}

.mid-content .paging ul li {
  display: inline-block;
  margin-right: 7px;
  margin-bottom: 7px;
  margin-left: 0;
  padding: 0;
}

.mid-content .paging ul li a {
  display: block;
  width: 34px;
  height: 34px;
  background: #f0f0f0;
  line-height: 34px;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: center;
  color: #666666;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.mid-content .paging ul li a:hover, .mid-content .paging ul li a.active {
  background: #1fb25a;
  color: #fff;
}

.mid-content .paging ul li:last-child {
  margin-right: 0;
}

.mid-content .paging.center {
  text-align: center;
}

.mid-content .sub-nav {
  text-align: left;
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 30px;
}

.mid-content .sub-nav ul {
  margin: 0;
}

.mid-content .sub-nav ul li {
  display: inline-block;
  margin: 0 -3px 0 0;
  padding: 0;
}

.mid-content .sub-nav ul li a {
  display: block;
  padding: 10px 17px;
  position: relative;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.mid-content .sub-nav ul li a:before {
  position: absolute;
  width: 0;
  height: 2px;
  content: "";
  left: 50%;
  bottom: -1px;
  background: #79531d;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

.mid-content .sub-nav ul li:hover a, .mid-content .sub-nav ul li.active a {
  font-weight: bold;
  color: #79531d;
}

.mid-content .sub-nav ul li:hover a:before, .mid-content .sub-nav ul li.active a:before {
  width: 100%;
}

.mid-content .sub-nav .subNavMobile {
  display: none;
}

.mid-content .row-description {
  padding-bottom: 40px;
}

.mid-content .nav-tab {
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 40px;
}

.mid-content .nav-tab ul {
  margin: 0;
}

.mid-content .nav-tab ul li {
  list-style: none;
  margin: 0 -3px 0 0;
  padding: 0;
  display: inline-block;
}

.mid-content .nav-tab ul li a {
  display: block;
  padding: 0 20px 9px 18px;
  position: relative;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  color: #999;
}

.mid-content .nav-tab ul li a .txt {
  position: relative;
  padding: 1px 0 1px 27px;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

.mid-content .nav-tab ul li a .txt.info {
  background: url("../images/material/ic-box.png") no-repeat 0 center;
}

.mid-content .nav-tab ul li a .txt.review {
  background: url("../images/material/ic-rate-review.png") no-repeat 0 0;
}

.mid-content .nav-tab ul li a .txt.discuss {
  background: url("../images/material/ic-chat.png") no-repeat 0 center;
}

.mid-content .nav-tab ul li a:after {
  position: absolute;
  width: 0;
  height: 1px;
  background: #79531d;
  content: "";
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

.mid-content .nav-tab ul li a span.value {
  display: inline-block;
  background: #cb4646;
  color: #fff;
  padding: 0px 6px;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 17px;
  letter-spacing: normal;
  text-align: center;
  margin: -1px 0 0 2px;
  vertical-align: top;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.mid-content .nav-tab ul li:hover a, .mid-content .nav-tab ul li.active a {
  color: #79531d;
}

.box-poin .nav-tab ul li:hover a, .box-poin .nav-tab ul li.active a {
  color: #FBEF39;
}

.box-poin .nav-tab ul li a {
  display: block;
  padding: 0 20px 9px 18px;
  position: relative;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  color: white;
}

.box-poin .nav-tab ul li a:after {
  position: absolute;
  width: 0;
  height: 1px;
  background: white;
  content: "";
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

.mid-content .nav-tab ul li:hover a .txt.info, .mid-content .nav-tab ul li.active a .txt.info {
  background: url("../images/material/ic-box-act.png") no-repeat 0 center;
}

.mid-content .nav-tab ul li:hover a .txt.review, .mid-content .nav-tab ul li.active a .txt.review {
  background: url("../images/material/ic-rate-review-act.png") no-repeat 0 0;
}

.mid-content .nav-tab ul li:hover a .txt.discuss, .mid-content .nav-tab ul li.active a .txt.discuss {
  background: url("../images/material/ic-chat-act.png") no-repeat 0 center;
}

.mid-content .nav-tab ul li:hover a:after, .mid-content .nav-tab ul li.active a:after {
  width: 100%;
}

.mid-content .nav-tab.v2 ul li a:after {
  height: 2px;
}

.mid-content .nav-tab .navTabMobile {
  display: none;
}

.checkbox {
  position: relative;
  margin: 0px 0 13px 0;
  background: none;
}

.checkbox input {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 0;
  cursor: pointer;
  z-index: 2;
  background: none;
}

.checkbox input + label {
  position: relative;
  cursor: pointer;
  padding: 0;
}

.checkbox input + label:before {
  position: absolute;
  width: 15px;
  height: 16px;
  content: "";
  top: 3px;
  left: 0;
  background: url("../images/material/ico-checkbox-2.png") no-repeat 0 0;
  background-size: 15px 32px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.checkbox input:disabled + label:before {
  background-position: 0 0;
}

.checkbox input:checked + label:before {
  background-position: 0 bottom;
}

.checkbox .label {
  display: block;
  position: relative;
  z-index: 1;
  color: #777;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: left;
  color: #333333;
  padding-left: 28px;
}

.checkbox-2 {
  position: relative;
  width: 18px;
  height: 18px;
  margin: auto;
  display: inline-block;
  vertical-align: middle;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.checkbox-2 input {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 0;
  cursor: pointer;
  z-index: 2;
  background: none;
  top: 0;
  left: 0;
  padding: 0;
  border: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.checkbox-2 input + label {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  cursor: pointer;
  padding: 0;
}

.checkbox-2 input + label:before {
  position: absolute;
  width: 18px;
  height: 18px;
  content: "";
  top: 0;
  left: 0;
  background: url("../images/material/ico-checkbox.png") no-repeat 0 0;
  background-size: 18px 36px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.checkbox-2 input:disabled + label:before {
  background-position: 0 0;
}

.checkbox-2 input:checked + label:before {
  background-position: 0 bottom;
}

.checkbox-2 .label {
  display: block;
  position: relative;
  z-index: 1;
  padding: 0 0 0 28px;
  color: #666;
  line-height: 20px;
}

.aside {
  float: left;
  width: 270px;
  padding: 0 30px 30px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.aside .filter-close {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 25px;
  right: 15px;
  z-index: 555;
  margin-top: -55px;
}

.aside .filter-close span {
  position: absolute;
  width: 100%;
  height: 2px;
  background: #f4712e;
  left: 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.aside .filter-close span:nth-child(1) {
  top: 0;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}

.aside .filter-close span:nth-child(2) {
  top: 17px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
}

.aside .sidebar-filter {
  padding-bottom: 35px;
  margin-bottom: 40px;
  border-bottom: 1px solid #eaeaea;
}

.aside .sidebar-filter .filter-title {
  font-size: 18px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  text-align: left;
  color: #333333;
  margin-bottom: 7px;
}

.aside .sidebar-filter .filter-title-small {
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  text-align: left;
  color: #f4712e;
  margin-bottom: 20px;
  display: none;
}

.aside .sidebar-filter .filter-list a {
  display: block;
  position: relative;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: left;
  color: #333333;
  padding: 6.5px 35px 6.5px 0;
}

.aside .sidebar-filter .filter-list a .count {
  position: absolute;
  top: 8px;
  right: 0;
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.25;
  letter-spacing: normal;
  text-align: right;
  color: #999999;
}

.aside .sidebar-filter .filter-list a:hover {
  color: #10532b;
  font-weight: 550;
}

.aside .sidebar-filter .filter-check {
  padding-top: 6px;
}

.aside .sidebar-filter .filter-search {
  height: 40px;
  line-height: 40px;
  border: 1px solid #ccc;
  position: relative;
  box-shadow: 0 0 1px #ccc inset;
  -webkit-box-shadow: 0 0 1px #ccc inset;
  -moz-box-shadow: 0 0 1px #ccc inset;
  -ms-box-shadow: 0 0 1px #ccc inset;
  -o-box-shadow: 0 0 1px #ccc inset;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.aside .sidebar-filter .filter-search ::-webkit-input-placeholder {
  color: #999;
}

.aside .sidebar-filter .filter-search :-moz-placeholder {
  color: #999;
}

.aside .sidebar-filter .filter-search ::-moz-placeholder {
  color: #999;
}

.aside .sidebar-filter .filter-search :-ms-input-placeholder {
  color: #999;
}

.aside .sidebar-filter .filter-search form {
  height: 100%;
}

.aside .sidebar-filter .filter-search input[type="text"] {
  display: block;
  background: none;
  width: 100%;
  height: 100%;
  line-height: 100%;
  border: 0;
  padding: 0 30px 0 11px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: left;
  color: #999999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.aside .sidebar-filter .filter-search input[type="submit"] {
  position: absolute;
  width: 30px;
  height: 100%;
  top: 0;
  right: 0;
  text-indent: -999999px;
  border: 0;
  padding: 0;
  cursor: pointer;
  background: url("../images/material/ico-search-small.png") no-repeat center center;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.aside .sidebar-filter .filter-search input[type="submit"]:hover {
  opacity: 0.8;
}

.aside .sidebar-filter.is-range .filter-range {
  padding-top: 5px;
}

.aside .sidebar-filter.is-range .range {
  margin-bottom: 40px;
}

.aside .sidebar-filter.is-range .range .input-range {
  float: left;
  width: 46%;
  margin-right: 8%;
  position: relative;
}

.aside .sidebar-filter.is-range .range .input-range:last-child {
  margin-right: 0;
}

.aside .sidebar-filter.is-range .range .input-range label {
  display: block;
  margin-bottom: 2px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #666666;
}

.aside .sidebar-filter.is-range .range .input-range input[type="text"] {
  width: 100%;
  height: 30px;
  line-height: 30px;
  border: 1px solid #ccc;
  position: relative;
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: right;
  color: #999999;
  padding: 0 8px 0 24px;
  box-shadow: 0 0 1px #ccc inset;
  -webkit-box-shadow: 0 0 1px #ccc inset;
  -moz-box-shadow: 0 0 1px #ccc inset;
  -ms-box-shadow: 0 0 1px #ccc inset;
  -o-box-shadow: 0 0 1px #ccc inset;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.aside .sidebar-filter.is-range .range .input-range input[type="text"] ::-webkit-input-placeholder {
  color: #999;
}

.aside .sidebar-filter.is-range .range .input-range input[type="text"] :-moz-placeholder {
  color: #999;
}

.aside .sidebar-filter.is-range .range .input-range input[type="text"] ::-moz-placeholder {
  color: #999;
}

.aside .sidebar-filter.is-range .range .input-range input[type="text"] :-ms-input-placeholder {
  color: #999;
}

.aside .sidebar-filter.is-range .range .input-range .field {
  position: relative;
}

.aside .sidebar-filter.is-range .range .input-range .field:after {
  position: absolute;
  width: 7px;
  height: 1px;
  top: 13px;
  right: -13px;
  content: "";
  box-shadow: 0 0 10px #707070 inset;
  -webkit-box-shadow: 0 0 10px #707070 inset;
  -moz-box-shadow: 0 0 10px #707070 inset;
  -ms-box-shadow: 0 0 10px #707070 inset;
  -o-box-shadow: 0 0 10px #707070 inset;
}

.aside .sidebar-filter.is-range .range .input-range .rp {
  position: absolute;
  top: 0;
  left: 7px;
  height: 30px;
  line-height: 30px;
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: left;
  color: #999999;
}

.aside .sidebar-filter.is-range .range .input-range:last-child .field:after {
  display: none;
}

.aside .sidebar-filter.is-range #range-slide {
  width: 220px;
}

.aside .sidebar-filter.is-range #range-slide:after {
  position: absolute;
  width: 30px;
  height: 6px;
  background: #ccc;
  position: absolute;
  bottom: 0;
  right: -20px;
  content: "";
  border-radius: 0px 2px 2px 0px;
  -webkit-border-radius: 0px 2px 2px 0px;
  -moz-border-radius: 0px 2px 2px 0px;
  -ms-border-radius: 0px 2px 2px 0px;
  -o-border-radius: 0px 2px 2px 0px;
}

.aside .sidebar-filter.is-range #range-slide .dot-range {
  position: absolute;
  width: 100%;
  height: 5px;
  top: -18px;
  left: 0;
}

.aside .sidebar-filter.is-range #range-slide .dot-range span {
  float: left;
  height: 5px;
  display: block;
  position: relative;
}

.aside .sidebar-filter.is-range #range-slide .dot-range span:before {
  position: absolute;
  width: 1px;
  height: 100%;
  background: #ccc;
  content: "";
  top: 0;
  left: 7px;
}

.aside .sidebar-filter.is-range #range-slide .dot-range span:first-child:before {
  left: 8px;
}

.aside .sidebar-filter.is-range #range-slide .dot-range span:last-child:after {
  position: absolute;
  width: 1px;
  height: 100%;
  background: #ccc;
  content: "";
  top: 0;
  right: -10px;
}

.aside .sidebar-filter.is-range #range-slide .ui-state-default, .aside .sidebar-filter.is-range #range-slide .ui-widget-content .ui-state-default, .aside .sidebar-filter.is-range #range-slide .ui-widget-header .ui-state-default {
  background: #cb4646;
  width: 20px;
  height: 20px;
  border: 0;
  border: 1px solid #fff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.aside .sidebar-filter.is-range #range-slide .ui-widget-header {
  background: #cb4646;
}

.aside .sidebar-filter.is-range #range-slide.ui-slider-horizontal {
  height: 6px;
  background-color: #ccc;
  border: 0;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.aside .sidebar-filter.is-range #range-slide.ui-slider-horizontal .ui-slider-handle {
  top: -0.5em;
  margin-left: -.1em;
}

.aside .sidebar-filter.is-range #range-slide.ui-widget-content {
  background: #ccc;
}

.aside .sidebar-filter:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.right-content {
  float: left;
  width: 900px;
  padding: 0 0 0 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.right-content.full {
  width: 100%;
  padding: 0;
  width: 100%;
}

.banner-product {
  margin-bottom: 20px;
}

.banner-product figure {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.banner-product figure img {
  width: 100%;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}

.banner-product figure:hover img {
  opacity: 0.9;
}

.main-filter {
  margin-bottom: 35px;
}

.main-filter .filter-top {
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px solid #eaeaea;
}

.main-filter .filter-top h3 {
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  color: #79531d;
}

.main-filter .filter-top .small {
  padding-top: 7px;
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.25;
  letter-spacing: normal;
  color: #999;
}

.main-filter .filter-bottom label {
  display: inline-block;
  padding: 0 8px 0 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.main-filter .filter-bottom .filter-rate {
  display: inline-block;
  vertical-align: middle;
  padding-left: 15px;
}

.main-filter .filter-bottom .filter-rate a {
  display: inline-block;
  height: 30px;
  padding: 0 9px;
  border: 1px solid #eaeaea;
  line-height: 28px;
  color: #999;
  margin: 0 6px 0 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: center;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.main-filter .filter-bottom .filter-rate a span {
  vertical-align: middle;
  padding-left: 3px;
}

.main-filter .filter-bottom .filter-rate a.active {
  border-color: #1fb25a;
  color: #1fb25a;
}

.main-filter .filter-bottom .filter-mobile {
  float: right;
  display: none;
}

.main-filter .filter-bottom .filter-mobile button {
  float: left;
  padding: 0;
  border: 0;
  margin: 0;
  width: 211px;
  height: 30px;
  line-height: 30px;
  background: #f4712e;
  color: #fff;
  position: relative;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.main-filter .filter-bottom .filter-mobile button label {
  font-size: 13px;
  padding: 0px 10px 0 10px;
  float: left;
  color: #fff;
}

.main-filter .filter-bottom .filter-mobile button .ico {
  width: 14px;
  height: 14px;
  float: right;
  margin: 0 15px 0 0;
  background: url("../images/material/ico-filter.png") no-repeat center center;
}

.main-filter .showtext {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #999;
  padding-top: 7px;
  display: inline-block;
}

.main-filter.bottom {
  margin-bottom: 20px;
}

.row-article .row {
  display: table;
  width: 100%;
  margin-bottom: 80px;
}

.row-article .row .col {
  display: table-cell;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-article .row .col.text {
  width: 51.28%;
  padding-right: 100px;
}

.row-article .row .col.text .des {
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.row-article .row .col.img {
  width: 48.72%;
}

.row-article .row .col.img figure {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.row-article .row .col.img figure img {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.1);
  -o-box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.1);
}

.row-article .row .col.img figure .box-play {
  display: block;
}

.row-article .row .col.img figure .box-play svg {
  position: absolute;
  margin: auto;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 86px;
  height: 86px;
}

.row-article .row .col.img .ex-video {
  display: none;
}

.row-article .row .col.img .video {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}

.row-article .row .col.img .video iframe {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}

.row-article .row.rtl {
  direction: rtl;
}

.row-article .row.rtl .col {
  direction: ltr;
}

.row-article .row.rtl .col.text {
  padding-left: 100px;
  padding-right: 0;
}

.grid-spread {
  text-align: center;
}

.grid-spread h2 {
  margin-bottom: 40px;
}

.grid-spread .row {
  text-align: center;
}

.grid-spread .row .col {
  /*float: left; */
  display: inline-block;
  vertical-align: top;
  width: 31.625%;
  margin: 0 2.3% 2.3% 0;
  padding: 48px 29px 44px 26px;
  background-image: linear-gradient(to bottom, #e5e5e5, rgba(255, 255, 255, 0.7));
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.grid-spread .row .col:nth-child(3n+3) {
  margin-right: 0;
}

.grid-spread .row .col figure {
  width: 150px;
  height: 150px;
  background: #fff;
  margin: 0 auto 12px auto;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -ms-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -o-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}

.grid-spread .row .col figure img {
  position: absolute;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.grid-spread .row .col h3 {
  margin-bottom: 20px;
}

.grid-spread .row .col .des {
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: center;
  color: #666;
  margin-bottom: 30px;
}

.listing-event {
  padding-bottom: 10px;
}

.listing-event .row .col {
  position: relative;
  float: left;
  width: 30.93%;
  margin: 0 3.6% 50px 0;
}

.listing-event .row .col:nth-child(3n+3) {
  margin-right: 0;
}

.listing-event .row .col .img {
  position: relative;
  margin-bottom: 15px;
}

.listing-event .row .col figure {
  line-height: 0;
  position: relative;
  overflow: hidden;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.listing-event .row .col figure img {
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.listing-event .row .col .e-title {
  font-size: 18px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.33;
  letter-spacing: normal;
  text-align: left;
  color: #111111;
  margin-bottom: 10px;
}

.listing-event .row .col .e-note {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.71;
  letter-spacing: normal;
  text-align: left;
  color: #999999;
}

.listing-event .row .col:hover figure img {
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
}

.listing-event.gallery .col .img {
  padding: 10px 10px 10px 10px;
  background: #fff;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-event.gallery .col .img:before {
  position: absolute;
  width: 100%;
  height: 100%;
  border: 1px solid #ddd;
  content: "";
  top: 0;
  left: 0;
  background: #fff;
  z-index: 2;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-event.gallery .col .img:after {
  position: absolute;
  width: 100%;
  height: 100%;
  border: 1px solid #ddd;
  content: "";
  top: -10px;
  left: 10px;
  background: #fff;
  z-index: 1;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-event.gallery .col figure {
  overflow: hidden;
  height: 180px;
  z-index: 3;
}

.listing-event.gallery .col figure img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}

.event-gallery-slider .slider-for {
  margin-bottom: 15px;
}

.event-gallery-slider .slider-for figure {
  line-height: 0;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.event-gallery-slider .slider-for figure img {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.event-gallery-slider .slider-for .slick-arrow {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 50%;
  z-index: 5;
  cursor: pointer;
  text-indent: -999999px;
  background: none;
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.event-gallery-slider .slider-for .slick-arrow:before {
  position: absolute;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
}

.event-gallery-slider .slider-for .slick-arrow.slick-prev {
  left: 40px;
}

.event-gallery-slider .slider-for .slick-arrow.slick-prev:before {
  background: url("../images/material/arrow-small-prev.png") no-repeat center center;
}

.event-gallery-slider .slider-for .slick-arrow.slick-next {
  right: 40px;
}

.event-gallery-slider .slider-for .slick-arrow.slick-next:before {
  background: url("../images/material/arrow-small-next.png") no-repeat center center;
}

.event-gallery-slider .slider-thumb .slick-slide {
  width: 180px;
  height: 100px;
  border: 2px solid #fff;
  cursor: pointer;
  margin: 0 15px 0 0;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.event-gallery-slider .slider-thumb .slick-slide.slick-current {
  border-color: #1fb25a;
}

.event-gallery-slider .slider-thumb .slick-slide figure img {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.ribbon-lg {
  position: absolute;
  width: 60px;
  height: 60px;
  top: 15px;
  left: 15px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  z-index: 5;
  text-align: center;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.ribbon-lg.new {
  background: #1c8fa5;
  line-height: 60px;
}

.ribbon-lg.sale {
  background: #f4712e;
  line-height: 60px;
}

.ribbon-lg.disc {
  background: #f4712e;
  line-height: 14px;
}

.ribbon-lg.disc span {
  padding: 10px 0 0 0;
  display: block;
}

.rate {
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: top;
  background: url("../images/material/ic-star-unfilled.png") no-repeat center center;
}

.rate.filled {
  background: url("../images/material/ic-star-filled.png") no-repeat center center;
}

.rate.disabled {
  background: url("../images/material/ic-star-disabled.png") no-repeat center center;
}

.box-rate .rate {
  width: 20px;
  height: 20px;
  float: left;
  background: url("../images/material/ic-star-unfilled.png") no-repeat center center;
}

.box-rate .rate.filled {
  background: url("../images/material/ic-star-filled.png") no-repeat center center;
}

.box-rate .count {
  float: left;
  line-height: 20px;
  color: #f4712e;
  margin: 0 0 0 5px;
}

.box-rate .count.gray {
  color: #999;
}

.box-rate .date {
  float: left;
  line-height: 20px;
  color: #999;
  margin: 0 0 0 5px;
}

.review-rate-md {
  margin-bottom: 15px;
}

.review-rate-md .rate-md {
  width: 26px;
  height: 26px;
  float: left;
  cursor: pointer;
}

.review-rate-md .rate-md .ico {
  display: block;
  width: 26px;
  height: 26px;
  background: url("../images/material/ic-star-md-unfilled.png") no-repeat center center;
}

.review-rate-md .rate-md.hover .ico, .review-rate-md .rate-md.selected .ico {
  background: url("../images/material/ic-star-md-filled.png") no-repeat center center;
}

.box-cm .seller {
  margin: 1px 5px 0 0;
}

.box-cm .seller span {
  display: inline-block;
  border: 1px solid #cb4646;
  line-height: 16px;
  padding: 0 6px;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: center;
  color: #cb4646;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.box-cm .date {
  float: left;
  line-height: 20px;
  color: #999;
  margin: 2px 0 0 0;
}

.tooltip-cart {
  position: absolute;
  left: 50%;
  bottom: 160px;
  z-index: 15;
  display: none;
  width: 630px;
  padding: 30px;
  background: rgba(0, 0, 0, 0.8);
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.43;
  letter-spacing: normal;
  text-align: left;
  color: #fff;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.tooltip-cart .left {
  width: 72%;
}

.tooltip-cart .right {
  width: 28%;
  text-align: right;
}

.tooltip-cart .txt {
  line-height: 40px;
  padding: 0 0 0 42px;
  position: relative;
  display: block;
}

.tooltip-cart .txt:before {
  position: absolute;
  width: 32px;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/checkmark-success.png") no-repeat center center;
}

.input-qty {
  float: left;
  border: 1px solid #eaeaea;
  line-height: 0.75;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.input-qty .btn-minus {
  float: left;
  width: 40px;
  height: 40px;
  position: relative;
  cursor: pointer;
  border-right: 1px solid #eaeaea;
}

.input-qty .btn-minus:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "-";
  top: -2px;
  left: 0;
  line-height: 34px;
  font-size: 30px;
  text-align: center;
  color: #999;
}

.input-qty input {
  float: left;
  width: 70px;
  height: 40px;
  line-height: 14px;
  border: 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  color: #666;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.input-qty .btn-plus {
  float: left;
  width: 40px;
  height: 40px;
  position: relative;
  cursor: pointer;
  border-left: 1px solid #eaeaea;
}

.input-qty .btn-plus:before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "+";
  top: 0;
  left: 0;
  line-height: 34px;
  font-size: 20px;
  text-align: center;
  color: #999;
  font-weight: bold;
}

.input-qty.qty-md {
  height: 30px;
  line-height: 30px;
  float: none;
  display: inline-block;
}

.input-qty.qty-md input {
  float: none;
  display: inline-block;
  vertical-align: top;
  height: 30px;
  line-height: 30px;
  width: 55px;
}

.input-qty.qty-md .btn-plus {
  float: none;
  display: inline-block;
  vertical-align: top;
  height: 30px;
  line-height: 30px;
  width: 30px;
}

.input-qty.qty-md .btn-plus:before {
  line-height: 30px;
}

.input-qty.qty-md .btn-minus {
  float: none;
  display: inline-block;
  vertical-align: top;
  height: 30px;
  line-height: 30px;
  width: 30px;
}

.input-qty.qty-md .btn-minus:before {
  line-height: 30px;
}

.box-btn a {
  margin-right: 17px;
}

.box-btn a:last-child {
  margin-right: 0;
}

.product-detail {
  margin-bottom: 50px;
  position: relative;
}

.product-detail .product-gallery {
  float: left;
  width: 42.75%;
  padding: 0 0 0 0;
}

.product-detail .product-gallery .images-lg {
  margin: 0 0 5px 0;
  position: relative;
}

.product-detail .product-gallery .images-lg figure {
  position: relative;
  text-align: center;
}

.product-detail .product-gallery .images-lg figure img {
  display: inline-block;
}

.product-detail .product-gallery .images-sm .slick-list {
  height: 86px !important;
}

.product-detail .product-gallery .images-sm .slick-slide {
  width: 119px;
  height: 86px;
  border: 1px solid #eaeaea;
  margin: 0 7px 0 0;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.product-detail .product-gallery .images-sm .slick-slide figure {
  padding: 7px;
  height: 100%;
  overflow: hidden;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.product-detail .product-gallery .images-sm .slick-slide figure img {
  height: 100%;
  object-fit: contain;
  object-position: center center;
  display: inline-block;
}

.product-detail .product-gallery .images-sm .slick-slide div {
  height: 100%;
}

.product-detail .product-gallery .images-sm .slick-slide .slick-slide {
  height: 100%;
  overflow: hidden;
}

.product-detail .product-gallery .images-sm .slick-slide.slick-current {
  border-color: #1fb25a;
}

.product-detail .product-text {
  float: left;
  width: 57.25%;
  padding: 10px 0 0 70px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.product-detail .product-text .row-box {
  padding: 0 0 20px 0;
  margin: 0 0 20px 0;
  border-bottom: 1px solid #eaeaea;
}

.product-detail .product-text .row-box .col {
  display: inline-block;
  vertical-align: middle;
  margin: 0 12px 0 0;
}

.product-detail .product-text .row-box .col.right {
  float: right;
}

.product-detail .product-text .row-box .col.border-left {
  border-left: 1px solid #eaeaea;
  padding-left: 15px;
}

.product-detail .product-text .row-box .col.label {
  width: 75px;
  padding-right: 20px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  color: #666;
}

.product-detail .product-text .row-box .price {
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 0.75;
  letter-spacing: normal;
  color: #cb4646;
}

.product-detail .product-text .row-box .price-disc {
  font-size: 12px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  color: #999;
  text-decoration: line-through;
}

.product-detail .product-text .row-box .price-disc .disc {
  background: #cb4646;
  color: #fff;
  display: inline-block;
  padding: 0 5px;
  margin-left: 7px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.product-detail .product-text .row-box.no-border {
  border-bottom: 0;
  padding-bottom: 0;
}

.product-detail .product-text .row-box.wbutton {
  padding-top: 15px;
}

.product-detail .product-text .row-box .btn {
  margin-right: 15px;
  font-size: 14px;
  padding: 0 47px;
}

.product-detail .product-text .row-box .tooltip-cart .btn {
  padding: 0 14px;
  margin-right: 0;
}

.product-detail .product-text .box-discuss {
  line-height: 20px;
  color: #666;
  padding: 0 0 0 26px;
  background: url("../images/material/ic-chat.png") no-repeat 0 center;
}

.product-detail .product-text .box-share .ico-share {
  line-height: 20px;
  color: #666;
  padding: 0 0 0 23px;
  display: block;
  cursor: pointer;
  background: url("../images/material/ic-share.png") no-repeat 0 center;
}

.product-detail .product-text .box-color .item {
  float: left;
  margin: 0 8px 0 0;
}

.product-detail .product-text .box-color .item label {
  float: left;
  height: 30px;
  line-height: 30px;
  color: #666;
  text-align: center;
  position: relative;
  min-width: 60px;
}

.product-detail .product-text .box-color .item label input {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  padding: 0;
  cursor: pointer;
  border: 1px solid #eaeaea;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.product-detail .product-text .box-color .item label input:checked {
  background: url("../images/material/icon-check.png") no-repeat 102% 102%;
  border-color: #f4712e;
}

.product-detail .product-text .stock.available {
  position: relative;
}

.product-detail .product-text .stock.available span {
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.6;
  height: 20px;
  letter-spacing: normal;
  color: #1fb25a;
  display: block;
  padding: 0 0 0 25px;
  background: url("../images/material/icon-checkmark.png") no-repeat 0 0;
}

.product-detail .product-text .stock.unavailable {
  color: #999;
  font-weight: bold;
}

.box-screen-rate {
  border: 1px solid #eaeaea;
  padding: 54px 120px 70px 102px;
  margin-bottom: 30px;
}

.box-screen-rate .left {
  width: 200px;
}

.box-screen-rate .right {
  width: 655px;
}

.box-screen-rate .value {
  font-size: 100px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.2;
  letter-spacing: normal;
  text-align: center;
  color: #f4712e;
}

.box-screen-rate .value span {
  font-size: 16px;
  line-height: 1.19;
  color: #999;
}

.screen-rate .histogram-summary {
  position: relative;
  height: 20px;
  margin-bottom: 16px;
}

.screen-rate .histogram-summary div {
  line-height: 17px;
  color: #333;
  font-size: 13px;
}

.screen-rate .histogram-summary .txt {
  position: absolute;
  left: 0;
  top: -7px;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.screen-rate .histogram-summary .histogram-bar {
  margin: 0 43px 0 45px;
  position: relative;
  background: #ccc;
  height: 6px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.screen-rate .histogram-summary .histogram-bar .value {
  position: absolute;
  height: 6px;
  content: "";
  left: 0;
  top: 0;
  z-index: 1;
  background: #f4712e;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.screen-rate .histogram-summary .count {
  position: absolute;
  right: 0;
  top: 0;
}

.screen-rate .histogram-summary:last-child {
  margin-bottom: 0;
}

.not-review {
  border: 1px solid #eaeaea;
  padding: 65px;
  margin-bottom: 10px;
  text-align: center;
}

.not-review h5 {
  font-size: 18px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  text-align: center;
  color: #666666;
  margin-bottom: 5px;
}

.not-review p {
  text-align: center;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: center;
  color: #999999;
}

.row-discuss {
  margin-bottom: 40px;
  border: 1px solid #eaeaea;
  padding: 40px 70px 30px 70px;
}

.row-discuss .col {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-discuss .col.left {
  width: 55%;
  padding-right: 50px;
  margin-top: 11px;
}

.row-discuss .col.right {
  width: 45%;
  text-align: right;
}

.row-discuss .txt {
  position: relative;
  margin: 0;
  padding: 2px 0 0 57px;
  font-size: 14px;
  color: #999;
  line-height: 17px;
}

.row-discuss .txt:before {
  position: absolute;
  width: 40px;
  height: 29px;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/ico-chat-md.png") no-repeat center center;
  background-size: 100%;
}

.row-discuss .btn {
  width: 200px;
  vertical-align: top;
  margin: 0 0 0 10px;
  font-size: 14px;
  padding: 0 10px 0 0;
  line-height: 50px;
}

.row-discuss .btn.btn-wa span {
  padding-left: 40px;
}

.row-discuss .btn.btn-wa span:before {
  position: absolute;
  width: 20px;
  height: 20px;
  content: "";
  left: 13px;
  top: 50%;
  background: url("../images/material/ico-whatsapp-md.png") no-repeat center center;
  background-size: 20px 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}

.row-discuss .btn.btn-wa:hover span:before {
  background: url("../images/material/ico-whatsapp-md-fff.png") no-repeat center center;
  background-size: 20px 20px;
}

.post-comment {
  padding-bottom: 20px;
}

.post-comment .list {
  border: 1px solid #eaeaea;
  padding: 40px 170px 20px 70px;
  margin-bottom: 10px;
}

.post-comment .list .row-comment h4 {
  font-size: 18px;
  margin: 8px 0 15px 0;
}

.post-comment .list .row-comment p {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.43;
  letter-spacing: normal;
  color: #666;
  margin-bottom: 20px;
}

.post-comment .list .row-comment .grid-pic .item {
  float: left;
  margin: 0 10px 0 0;
}

.post-comment .list .row-comment .grid-pic .item img {
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.post-comment .list.sub {
  background: #f5f5f5;
}

.post-comment .list.sub .row-comment h4 {
  margin-right: 10px;
}

.post-comment .list.sub .in {
  padding-bottom: 5px;
}

.post-comment .list.sub .sublist .list {
  padding: 20px 28px 10px 28px;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}

.post-comment .list.sub .sublist .list:last-child {
  margin-bottom: 0;
}

.post-comment.discuss .row-comment h4 {
  margin: 0 15px 10px 0;
}

.row-reg .col {
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-reg .col.img {
  width: 430px;
  margin-right: 100px;
}

.row-reg .col.img .box-img {
  margin: 50px 0 0 0;
}

.row-reg .col.img .box-img.success {
  margin-top: 85px;
}

.row-reg .col.img figure {
  line-height: 0;
}

.row-reg .col.img p {
  color: #999;
  margin: 0 45px;
  text-align: center;
  line-height: 1.43;
  font-size: 14px;
}

.row-reg .col.text {
  width: 470px;
}

.row-reg .col.text p {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.43;
  letter-spacing: normal;
}

.row-reg .col.text .bank-account {
  padding: 40px;
  border: 1px solid #eaeaea;
  text-align: center;
  margin-bottom: 18px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.row-reg .col.text .bank-account figure {
  margin-bottom: 20px;
}

.row-reg .col.text .bank-account p.name {
  color: #666;
  margin: 0 0 5px 0;
  text-align: center;
}

.row-reg .col.text .bank-account p.number {
  color: #333;
  margin: 0;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.17;
}

.row-reg .col .slider-goodness .box-img {
  margin: 0 0 45px 0;
  height: 430px;
}

.row-reg .col.center {
  margin: 0 auto;
  float: none;
  text-align: center;
}

.row-reg .col.center p {
  text-align: center;
}

.row-reg .col.center label {
  text-align: center;
}

.row-reg .col.center .btn {
  margin: 0;
}

.row-reg.result .col.img {
  width: 465px;
  margin-right: 80px;
  margin-left: -20px;
}

.row-reg.result .col.text {
  width: 500px;
}

.row-reg.result.auto-center {
  float: none;
  margin: auto;
  text-align: center;
}

.row-reg.result.auto-center .box-img {
  padding: 20px 0 50px 0;
}

.price {
  color: #cb4646;
}

.price.white {
  color: #fff;
}

.price.large {
  font-size: 20px;
  font-weight: bold;
}

.list-payment {
  margin-bottom: 20px;
  border: 1px solid #eaeaea;
}

.list-payment .list {
  margin: 0;
  padding: 20px;
  position: relative;
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.75;
  letter-spacing: normal;
  color: #666;
}

.list-payment .acclist {
  border-top: 1px solid #eaeaea;
}

.list-payment .acclist:first-child {
  border-top: 0;
}

.list-payment .acc-title {
  cursor: pointer;
}

.list-payment .acc-title:after {
  position: absolute;
  width: 24px;
  height: 24px;
  content: "";
  right: 13px;
  top: 20px;
  background: url("../images/material/ic-arrow-right.png") no-repeat center center;
  transition: all 0.15s ease-out;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  -ms-transition: all 0.15s ease-out;
  -o-transition: all 0.15s ease-out;
}

.list-payment .acc-title.open {
  border-bottom: 1px solid #eaeaea;
  font-weight: bold;
}

.list-payment .acc-title.open:after {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}

.list-payment .acc-descrip {
  padding: 15px 30px;
  font-size: 13px;
}

.list-payment .acc-descrip ul {
  margin-bottom: 0;
}

.list-payment .acc-descrip ul li {
  font-size: 13px;
}

.list-payment .acc-descrip ol {
  margin-bottom: 0;
}

.list-payment .acc-descrip ol li {
  font-size: 13px;
}

.slider-goodness {
  position: relative;
}

.slider-goodness .slick-dots {
  position: absolute;
  width: 100%;
  text-align: center;
  margin: 0;
}

.slider-goodness .slick-dots li {
  display: inline-block;
  margin: 0 2px;
  width: 10px;
  height: 15px;
  padding: 0;
  position: relative;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
}

.slider-goodness .slick-dots li button {
  padding: 0;
  border: 0;
  text-indent: -999999px;
  cursor: pointer;
  width: 100%;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  background: #ccc;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.slider-goodness .slick-dots li.slick-active {
  width: 20px;
}

.slider-goodness .slick-dots li.slick-active button {
  background: #dfc298;
}

.opt-checkbox .item {
  float: left;
  margin: 0 25px 0 0;
}

.opt-checkbox .item.col-4 {
  width: 23%;
  margin-right: 2.5%;
}

.opt-checkbox .item:last-child {
  margin-right: 0;
}

.opt-checkbox .item label {
  float: none;
  height: auto;
  color: #666;
  display: block;
  text-align: center;
  position: relative;
  min-width: 60px;
  padding: 20px 30px;
}

.opt-checkbox .item label input {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  padding: 0;
  cursor: pointer;
  border: 1px solid #eaeaea;
  top: 0;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.opt-checkbox .item label input:checked {
  background: url("../images/material/icon-check-lg.png") no-repeat 102% 102%;
  border-color: #f4712e;
  background-size: 25px 25px;
}

.opt-checkbox .item label p {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 20px;
  letter-spacing: normal;
  text-align: center;
  color: #666;
  margin: 0;
}

.opt-checkbox .item label.error {
  position: absolute;
  bottom: -24px;
  padding: 0;
  left: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.opt-checkbox.md .item {
  margin-right: 20px;
}

.opt-checkbox.md .item label {
  padding: 17px 30px;
}

.opt-checkbox.md .item label label.error {
  padding: 0;
}

.opt-checkbox.sm .item {
  margin-right: 20px;
  margin-bottom: 20px;
  min-width: 180px;
}

.opt-checkbox.sm .item label {
  padding: 7px 35px 7px 8px;
  vertical-align: middle;
}

.opt-checkbox.sm .item .logo-bank {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  height: 36px;
}

.opt-checkbox.sm .item p {
  display: inline-block;
  vertical-align: middle;
  height: auto;
}

.opt-checkbox.sm.has-error .item {
  margin-bottom: 30px;
}

.opt-checkbox.sm.has-error .item label.error {
  padding: 0;
}

.opt-checkbox.lg .item {
  width: 50%;
  padding: 0 10px 0 0;
  margin: 0 0 20px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.opt-checkbox.lg .item label {
  padding: 20px;
}

.opt-checkbox.voucher .item {
  width: 50%;
  padding: 0 10px 0 0;
  margin: 0 0 20px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.opt-checkbox.voucher .item label {
  padding: 0;
  min-height: 65px;
}

.opt-checkbox.voucher .item label input {
  border-left: 0;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
}

.opt-checkbox.voucher .item label input:checked {
  border-color: #cb4646;
  border-left: 0;
  background: url(../images/material/icon-check-md-red.png) no-repeat 100% 100%;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
}

.opt-checkbox.voucher .item label .box-disc {
  background: url("../images/material/bg-red-kupon.png") no-repeat 0 0;
  float: left;
  width: 70px;
  height: 100%;
  padding: 17px 0 0 0;
  background-size: 220% auto;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.opt-checkbox.voucher .item label .box-disc .small {
  font-size: 8px;
  display: block;
  margin: 0;
}

.opt-checkbox.voucher .item label .box-disc .percent {
  font-size: 20px;
  display: block;
  margin: 0;
}

.opt-checkbox.voucher .item label .text {
  float: right;
  width: 100%;
  padding: 12px 30px 0 80px;
  text-align: left;
  line-height: 12px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.opt-checkbox.voucher .item label .text .vdate {
  font-size: 8px;
  color: #999;
  display: block;
}

.opt-checkbox.voucher .item label .text .vdescrip {
  font-size: 10px;
  display: block;
  color: #333;
}

.opt-checkbox.voucher .item:nth-child(2n+2) {
  padding: 0 0 0 10px;
}

.opt-checkbox.has-error .item {
  margin-bottom: 30px;
}

.form-std .add-form {
  width: 100%;
  height: 120px;
  line-height: 50px;
  border: 1px solid #d8d8d8;
  padding: 0 15px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  color: #999;
  text-align: center;
  box-sizing: border-box;
  position: relative;
}

.form-std .add-form span {
  position: absolute;
  background: url(../images/material/add-red.png) no-repeat;
  width: 32px;
  height: 32px;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 35%;
}

.form-std .add-form h5 {
  position: absolute;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 65%;
}

.form-std .form-group {
  margin-bottom: 15px;
}

.form-std .form-group ::-webkit-input-placeholder {
  color: #999;
}

.form-std .form-group :-moz-placeholder {
  color: #999;
}

.form-std .form-group ::-moz-placeholder {
  color: #999;
}

.form-std .form-group :-ms-input-placeholder {
  color: #999;
}

.form-std .form-group.input-file {
  margin-bottom: 20px;
}

.form-std .form-group.button {
  padding-top: 10px;
}

.form-std .form-child {
  padding: 0 10px 0 28px;
  margin: 5px 0 10px 0;
}

.form-std .form-child ::-webkit-input-placeholder {
  color: #999;
}

.form-std .form-child :-moz-placeholder {
  color: #999;
}

.form-std .form-child ::-moz-placeholder {
  color: #999;
}

.form-std .form-child :-ms-input-placeholder {
  color: #999;
}

.form-std .input {
  position: relative;
}

.form-std .btn {
  margin-right: 20px;
}

.form-std .forgot {
  font-size: 14px;
  color: #1fb25a;
  display: inline-block;
}

.form-std button {
  border: 0;
  cursor: pointer;
  margin-right: 25px;
}

.form-std label {
  display: block;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 2;
  letter-spacing: normal;
  text-align: left;
  color: #333;
}

.form-std label.error {
  display: block;
  color: red;
  font-size: 12px;
  padding: 2px 0 0 0;
}

.form-std input, .form-std textarea {
  width: 100%;
  height: 50px;
  line-height: 50px;
  border: 1px solid #d8d8d8;
  padding: 0 15px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: left;
  color: #999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.form-std input:focus, .form-std textarea:focus {
  box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -webkit-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -moz-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -ms-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -o-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
}

.form-std select {
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.form-std select:focus {
  box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -webkit-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -moz-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -ms-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -o-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
}

.form-std input[type="radio"] {
  transition: ease 0.25s ease-in-out;
  -webkit-transition: ease 0.25s ease-in-out;
  -moz-transition: ease 0.25s ease-in-out;
  -ms-transition: ease 0.25s ease-in-out;
  -o-transition: ease 0.25s ease-in-out;
}

.form-std input[type="radio"]:focus {
  box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -webkit-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -moz-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -ms-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -o-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
}

.form-std input[type="checkbox"] {
  border: 0;
  transition: ease 0.25s ease-in-out;
  -webkit-transition: ease 0.25s ease-in-out;
  -moz-transition: ease 0.25s ease-in-out;
  -ms-transition: ease 0.25s ease-in-out;
  -o-transition: ease 0.25s ease-in-out;
}

.form-std input[type="checkbox"]:focus {
  box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -webkit-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -moz-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -ms-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
  -o-box-shadow: 0px 0px 0 0px rgba(31, 178, 92, 0.8);
}

.form-std input.sm {
  height: 30px;
  line-height: 30px;
  padding: 0 8px;
}

.form-std .readonly {
  background: #eee;
  color: #999;
}

.form-std textarea {
  height: 140px;
  resize: none;
  line-height: 16px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.form-std .txt-login {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
  color: #666;
}

.form-std .row-date .col-dt {
  float: left;
  width: 17%;
  margin-right: 4%;
}

.form-std .row-date .col-dt:last-child {
  margin-right: 0;
}

.form-std .row-date .col-dt.birth {
  width: 34%;
}

.form-std .row-date .col-dt.date {
  width: 62%;
}

.form-std .row-date .col-dt.year {
  width: 20%;
}

.form-std .row-st .col-st {
  float: left;
}

.form-std .row-st .col-st.lf {
  width: 58%;
  margin-right: 4%;
}

.form-std .row-st .col-st.rf {
  width: 38%;
}

.form-std .row-st .col-st .btn {
  display: block;
  margin: 0;
}

.form-std .row-opt .col-opt {
  float: left;
  width: 50%;
  padding-right: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-std .row-opt .col-opt:last-child {
  padding-left: 15px;
  padding-right: 0;
}

.form-std .row-half .col-half {
  float: left;
  width: 50%;
  padding-right: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-std .row-half .col-half:last-child {
  padding-left: 15px;
  padding-right: 0;
}

.form-std .row-half .col-half label {
  color: #666;
}

.form-std .input_file {
  width: 100%;
  height: 50px;
  line-height: 50px;
  border: 1px solid #d8d8d8;
  padding: 0 15px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: left;
  color: #999;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.form-std .input_file input {
  padding: 0 55px 0 15px;
  z-index: 5;
  cursor: pointer;
}

.form-std .input_file:before {
  position: absolute;
  width: 24px;
  height: 100%;
  content: "";
  right: 16px;
  top: 0;
  background: url("../images/material/ico-file.png") no-repeat center center;
  background-size: 100%;
}

.form-std .input_file span {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 0 55px 0 15px;
  z-index: 1;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-std .input_file label.error {
  position: absolute;
  bottom: -24px;
  padding: 0;
  left: 0;
  width: 100%;
}

.form-std .row-radio {
  padding: 5px 0 0 0;
}

.form-std .row-radio .radio {
  float: left;
  width: 25%;
}

.form-std .control-radio {
  position: relative;
  margin: 0 75px 0 0;
  float: left;
}

.form-std .control-radio input {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 0;
  cursor: pointer;
  z-index: 2;
  background: none;
  padding: 0;
  border: 0;
}

.form-std .control-radio input + label {
  position: relative;
  cursor: pointer;
  padding: 0;
}

.form-std .control-radio input + label:before {
  position: absolute;
  width: 18px;
  height: 18px;
  content: "";
  top: 2px;
  left: 0;
  background: url("../images/material/ico-radio.png") no-repeat 0 0;
  background-size: 18px 36px;
}

.form-std .control-radio input:disabled + label:before {
  background-position: 0 0;
}

.form-std .control-radio input:checked + label:before {
  background-position: 0 bottom;
}

.form-std .control-radio .label {
  display: block;
  position: relative;
  z-index: 1;
  padding: 0 0 0 28px;
  color: #666;
  line-height: 20px;
}

.form-std .box-disclaimer {
  position: relative;
  padding: 28px 17px 28px 48px;
  border: 1px solid #d8d8d8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-std .box-disclaimer .inner-box {
  height: 220px;
  overflow: auto;
}

.form-std .box-disclaimer p {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.43;
  letter-spacing: normal;
  text-align: left;
  color: #666;
  margin-bottom: 18px;
}

.form-std .send-code input {
  padding-right: 50%;
}

.form-std .send-code a.btn-send-code {
  position: absolute;
  width: 45%;
  height: 50px;
  top: 0;
  right: 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 50px;
  letter-spacing: normal;
  text-align: center;
  color: #999;
  border-left: 1px solid #d8d8d8;
  border-radius: 0 2px 2px 0;
  -webkit-border-radius: 0 2px 2px 0;
  -moz-border-radius: 0 2px 2px 0;
  -ms-border-radius: 0 2px 2px 0;
  -o-border-radius: 0 2px 2px 0;
}

.form-std .send-code a.btn-send-code:hover {
  background: #d8d8d8;
  color: #333;
}

.form-std fieldset {
  border-bottom: 1px solid #eaeaea;
  margin-bottom: 30px;
}

.box-step {
  text-align: center;
  position: relative;
  margin-bottom: 50px;
}

.box-step .step {
  display: inline-block;
  vertical-align: top;
  position: relative;
  padding: 35px 225px 0 0;
}

.box-step .step:after {
  position: absolute;
  width: 100%;
  height: 2px;
  background: #d8d8d8;
  top: 13px;
  right: -10px;
  content: "";
  z-index: -1;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.box-step .step .ico {
  position: absolute;
  width: 30px;
  height: 30px;
  top: 0;
  left: 0;
  z-index: 5;
  display: block;
}

.box-step .step .ico:before {
  position: absolute;
  width: 20px;
  height: 20px;
  content: "";
  left: 50%;
  top: 50%;
  background: #d8d8d8;
  z-index: 3;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
}

.box-step .step span {
  display: block;
  margin-left: -50%;
  color: #999;
}

.box-step .step:last-child {
  padding-right: 0;
}

.box-step .step:last-child:after {
  display: none;
}

.box-step .step.past:after {
  background: #cb4646;
}

.box-step .step.past .ico {
  background: #fff;
}

.box-step .step.past .ico:before {
  width: 100%;
  height: 100%;
  background: url("../images/material/checkmark-red-lg.png") no-repeat center center;
  background-size: 100%;
}

.box-step .step.past span {
  color: #cb4646;
}

.box-step .step.current .ico:before {
  background: #cb4646;
}

.box-step .step.current span {
  color: #cb4646;
}

.row-form .row.w-hr {
  border-bottom: 1px solid #D8D8D8;
  padding: 10px 0;
  margin-bottom: 20px;
  box-sizing: border-box;
}

.row-form .row .col {
  float: left;
  width: 50%;
  padding: 0 15px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-form .row .col:nth-child(2n+2) {
  padding: 0 0 0 15px;
}

.row-form .row .col.col-right {
  padding: 0 0 0 15px;
}

.row-form .row .col.full {
  padding: 20px 0 0 0;
  width: 100%;
}

.row-form .row .col.space-top {
  padding: 40px 0 0 0;
  width: 100%;
}

.row-form .row .col.profil-left {
  width: 70%;
  padding-right: 60px;
}

.row-form .row .col.profil-right {
  width: 30%;
  padding-left: 0;
}

.row-form .row .col.no-space {
  padding: 0;
}

.row-form .row .col.col-3 {
  width: 31.55%;
  padding: 0;
  margin: 0 2.67% 3.7% 0;
}

.row-form .row .col.col-3:nth-child(3n+3) {
  margin-right: 0;
}

.row-form .row .col.col-3.space-left {
  margin-left: 2.65%;
  margin-right: 0;
  margin-bottom: 0;
}

.row-form .row .col.col-4 {
  width: 65.78%;
  padding: 0;
}

.row-form .row .col.col-4.space-right {
  margin-right: 2.67%;
}

.price-large {
  display: inline-block;
  font-size: 24px;
  font-weight: 900;
  color: #cb4646;
}

.price-large.white {
  color: #fff;
}

.price-large.white {
  color: #fff;
}

.box-total {
  padding: 9px 0 0 0;
}

.box-total .txt-total {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
  line-height: 1.21;
  text-align: right;
  padding-right: 55px;
  opacity: 0.7;
}

.box-total .txt-total.arisan {
  opacity: 1;
  padding-right: 10px;
}

.box-total span {
  display: inline-block;
  vertical-align: middle;
}

.cart-overview .table-cart {
  border: 1px solid #eaeaea;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.cart-overview .product-cart {
  color: #333;
  display: block;
  min-height: 56px;
}

.cart-overview .product-cart.green-text span {
  color: #1FB25A;
  font-weight: bold;
}

.cart-overview .product-cart .product-md {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  width: 20%;
  height: 56px;
  border: 1px solid #eaeaea;
  margin-right: -4px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.cart-overview .product-cart .product-md figure {
  padding: 5px;
  position: relative;
  width: 100%;
  height: 100%;
  position: absolute;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.cart-overview .product-cart .product-md figure img {
  height: 100%;
}

.cart-overview .product-cart .product-title {
  display: inline-block;
  vertical-align: middle;
  padding: 0 0 0 16px;
  font-size: 16px;
  width: 79.8%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.cart-overview .btn-remove {
  display: inline-block;
  position: relative;
  padding: 0 0 0 20px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 2.86;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.cart-overview .btn-remove:before {
  position: absolute;
  width: 12px;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/ico-remove.png") no-repeat center center;
}

.cart-overview table {
  width: 100%;
}

.cart-overview table thead th {
  background: #eaeaea;
  padding: 26px 9px;
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.cart-overview table thead th:first-child {
  padding-left: 28px;
  padding-right: 0;
}

.cart-overview table thead th:last-child {
  padding-right: 28px;
}

.cart-overview table thead th.w-check {
  width: 3%;
  line-height: 14px;
}

.cart-overview table thead th.w-product {
  width: 34%;
  text-align: left;
}

.cart-overview table thead th.w-price {
  width: 17%;
  text-align: right;
}

.cart-overview table thead th.w-qty {
  width: 21%;
}

.cart-overview table thead th.w-subtotal {
  width: 11%;
  text-align: right;
}

.cart-overview table thead th.w-action {
  width: 8%;
}

.cart-overview table tbody tr td {
  padding: 19px 16px;
  border-bottom: 1px solid #eaeaea;
  position: relative;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.cart-overview table tbody tr td:first-child {
  padding-left: 20px;
  padding-right: 0;
}

.cart-overview table tbody tr td:last-child {
  padding-right: 28px;
}

.cart-overview table tbody tr td.td-check {
  line-height: 14px;
}

.cart-overview table tbody tr td.td-product {
  text-align: left;
  padding-right: 35px;
}

.cart-overview table tbody tr td.td-price {
  text-align: right;
}

.cart-overview table tbody tr td.td-subtotal {
  text-align: right;
}

.cart-overview table tbody .note {
  font-size: 14px;
  margin: 5px 0;
  font-style: italic;
  color: #999;
}

.cart-overview table tfoot tr td {
  padding: 19px 16px;
  vertical-align: middle;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.cart-overview table tfoot tr td .txt-total {
  position: absolute;
  width: 100%;
  top: 8px;
  left: -100%;
  padding-right: 95px;
  margin-left: -80px;
}

.cart-overview table tfoot tr td:first-child {
  padding-left: 28px;
  padding-right: 0;
}

.cart-overview table tfoot tr td:last-child {
  padding-right: 28px;
}

.cart-overview table tfoot tr td.tf-check {
  line-height: 14px;
}

.cart-overview table tfoot tr td.tf-product {
  text-align: left;
  padding-right: 35px;
  font-size: 16px;
}

.cart-overview table tfoot tr td.tf-subtotal {
  text-align: right;
}

.cart-overview table tfoot tr td.tf-total-price {
  text-align: right;
  vertical-align: middle;
}

.cart-overview table tfoot tr td .total {
  display: inline-block;
  vertical-align: middle;
  padding-right: 55px;
  position: relative;
}

.cart-overview table tfoot tr:last-child td {
  border-bottom: 0;
}

.cart-overview.history {
  margin-bottom: 20px;
}

.cart-overview.history .price {
  color: #666;
}

.cart-overview.history .price.md {
  font-size: 16px;
  color: #333;
}

.cart-overview.history table thead th {
  background: #999;
  color: #fff;
}

.cart-overview.history table thead th.w-product {
  width: 61%;
}

.cart-overview.history table thead th.w-price {
  width: 12%;
}

.cart-overview.history table thead th.w-qty {
  width: 15%;
}

.cart-overview.history table thead th.w-subtotal {
  width: 12%;
}

.cart-overview.history table tbody td .product-cart {
  width: 72%;
  display: inline-block;
  padding: 0 50px 0 0;
  min-height: 10px;
  -webkit-box-sizing: boder-box;
  -moz-box-sizing: boder-box;
  box-sizing: boder-box;
}

.cart-overview.history table tbody td.have-voucher a.voucher {
  width: 125px;
  position: absolute;
  top: 45%;
  right: 0;
  -webkit-box-sizing: boder-box;
  -moz-box-sizing: boder-box;
  box-sizing: boder-box;
  transform: translate(0, -45%);
  -webkit-transform: translate(0, -45%);
  -moz-transform: translate(0, -45%);
  -ms-transform: translate(0, -45%);
  -o-transform: translate(0, -45%);
}

.cart-overview.history table tbody tr.tr-child .product-cart {
  color: #666;
}

.cart-overview.history table tfoot .price {
  color: #cb4646;
}

.cart-overview.history table tfoot tr:last-child td {
  background: #eaeaea;
}

.cart-overview.history.list-info .table-cart {
  margin-bottom: 40px;
  overflow-x: auto;
}

.cart-overview.history.list-info table thead tr th:first-child {
  text-align: left;
}

.cart-overview.history.list-info table thead tr th:last-child {
  text-align: right;
}

.cart-overview.history.list-info table tbody tr td:first-child {
  text-align: left;
}

.cart-overview.history.list-info table tbody tr td:last-child {
  text-align: right;
}

.cart-overview.history.list-info table tbody tr td a {
  position: relative;
}

.cart-overview.history.list-info table tbody tr td a .ico-download-orange {
  position: absolute;
  background: url(../images/material/ico-download-orange.png) no-repeat;
  width: 20px;
  height: 20px;
}

.cart-overview.history.list-info table tfoot tr:last-child td {
  background: #1FB25A;
  color: #fff;
  font-weight: bold;
}

.cart-overview.history.list-info table tfoot tr:last-child td:first-child {
  text-align: left;
}

.cart-overview.history.list-info table tfoot tr:last-child td:last-child {
  text-align: right;
}

.cart-overview.table-order-status .table-cart {
  border: 0;
}

.cart-overview.table-order-status table tbody tr td {
  border-bottom: 1px dashed #d8d8d8;
}

.cart-overview.table-order-status table tbody tr td.td-product {
  padding-left: 0;
  padding-right: 20px;
  width: 50%;
}

.cart-overview.table-order-status table tbody tr td.td-product .product-cart {
  width: 100%;
  padding-right: 0;
}

.cart-overview.table-order-status table tbody tr td.td-product .product-cart .product-title {
  padding-right: 0px;
}

.cart-overview.table-order-status table tbody tr td.td-price {
  width: 22%;
}

.cart-overview.table-order-status table tbody tr td.td-subtotal {
  width: 28%;
}

.cart-overview.table-order-status table tbody tr:last-child td {
  border-bottom: 0px;
}

.cart-overview.table-order-status table tfoot tr td {
  background: #fff;
  border-top: 1px solid #d8d8d8;
  text-align: right;
  color: #999;
  padding-top: 12px;
  padding-bottom: 12px;
}

.cart-overview.table-order-status table tfoot tr td .price.black {
  color: #333;
}

.cart-overview.table-order-status table tfoot tr td .info-transfer {
  font-size: 16px;
  color: #333;
}

.cart-overview.table-order-status table tfoot tr td.td-market {
  padding: 0;
}

.cart-overview.table-order-status table tfoot tr td.td-market .row-market {
  margin-top: 30px;
}

.cart-overview.table-order-status table tfoot tr td.td-market .row-market .heading-md {
  width: auto;
}

.cart-overview.table-order-status table tfoot tr td.td-market .row-market .custom-radio {
  float: right;
}

.cart-overview.table-order-status table tfoot tr td.td-market .row-market .custom-radio label {
  line-height: 20px;
}

.cart-overview.table-order-status table tfoot tr td.td-market .box-payment {
  padding: 30px;
}

.cart-overview.table-order-status table tfoot tr td.td-market .box-payment h4 {
  text-align: left;
}

.cart-overview.table-order-status table tfoot tr td.td-market .box-payment .opt-checkbox.sm .item {
  min-width: 145px;
}

.cart-overview.table-order-status table tfoot tr td.td-market .box-payment .opt-checkbox.sm .item label {
  padding: 7px;
}

.cart-overview.table-order-status table tfoot tr td.td-market .box-payment .label-check {
  border: 1px solid #eaeaea;
  width: auto;
  height: auto;
  text-align: center;
  min-width: 60px;
  padding: 10px 40px;
  background: url("../images/material/icon-check-lg.png") no-repeat 102% 102%;
  border-color: #f4712e;
  background-size: 25px 25px;
  font-size: 16px;
  font-weight: bold;
  color: #F4712E;
}

.cart-overview.table-order-status table tfoot tr td.box-btn {
  padding: 0;
  border: 0;
}

.cart-overview.table-order-status table tfoot tr:last-child td {
  background: #fff;
}

.row-address {
  border: 1px solid #d8d8d8;
  margin-bottom: 20px;
  padding: 16px 27px 16px 20px;
  position: relative;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.row-address:before {
  position: absolute;
  width: 1px;
  height: 100%;
  content: "";
  left: 49.5%;
  top: 0;
  background: #d8d8d8;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
}

.row-address .col {
  float: left;
  width: 50%;
  padding: 0 26px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-address .col:last-child {
  padding: 0 0 0 26px;
}

.row-address .col h3 {
  margin: 0 0 3px 0;
}

.row-address .col .name-order {
  color: #f4712e;
  margin: 0 0 4px 0;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
}

.row-address .col .address {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  margin: 0 0 12px 0;
}

.row-address .col .box-kurir {
  margin: 16px 0 0 0;
  border: 1px solid #d8d8d8;
  position: relative;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.row-address .col .box-kurir label {
  float: left;
  padding: 17px 0 17px 17px;
  position: absolute;
  left: 0;
  bottom: 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.row-address .col .box-kurir label.error {
  position: absolute;
  bottom: -24px;
  padding: 0;
  left: 0;
  width: 100%;
  display: block;
  color: red;
  font-size: 12px;
  padding: 2px 0 0 0;
}

.row-address .col .box-kurir .selectbox {
  float: right;
  height: 50px;
  line-height: 50px;
  border: 0;
  display: block;
  width: 100%;
  position: relative;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  -o-box-shadow: none;
}

.row-address .col .box-kurir .selectbox select {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: right;
  color: #666;
  padding-left: 120px;
  padding-right: 25px;
  text-align-last: right;
  text-align: right;
  -ms-text-align-last: right;
  -moz-text-align-last: right;
}

.row-address .col .box-kurir .selectbox select option {
  text-align: right;
}

.row-address .col .box-kurir .select2-container {
  height: 100%;
  width: 100% !important;
  vertical-align: top;
}

.row-address .col .box-kurir .select2-container .select2-selection--single {
  height: 100%;
  line-height: 50px;
  border: 0;
  background: none;
  text-align: right;
}

.row-address .col .box-kurir .select2-container .select2-selection--single .select2-selection__rendered {
  height: 100%;
  line-height: 50px;
  padding-right: 25px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: right;
  color: #666;
}

.row-address .col .box-kurir .select2-container--default .select2-selection--single .select2-selection__arrow {
  display: none;
}

.row-address .col .box-kurir.has-error {
  margin-bottom: 30px;
}

.select2-container {
  padding: 0;
  height: 100%;
  border: 0;
  vertical-align: top;
}

.select2-container--default .select2-selection--single {
  border: 0;
  padding: 0;
  height: 100%;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  border: 0;
  height: 100%;
  line-height: 48px;
  padding-left: 15px;
  font-size: 14px;
  color: #999;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  display: none;
}

.select2-dropdown {
  border-color: #ccc;
}

.select2-container--open .select2-dropdown--below {
  border-top: 1px solid #ccc;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  padding: 10px;
}

.select2-results__option {
  padding: 10px;
  font-size: 14px;
}

.select2-dropdown.select2-karir {
  border-color: #ccc;
}

.select2-karir .select2-results__option {
  padding: 6px 7px;
  font-size: 14px;
  text-align: right;
}

.select2-container--open .select2-karir.select2-dropdown--below {
  border-top: 1px solid #ccc;
}

.box-payment {
  margin-bottom: 20px;
  border: 1px solid #d8d8d8;
  padding: 29px 200px 18px 28px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.box-payment .row {
  margin-bottom: 30px;
}

.box-payment .row:last-child {
  margin-bottom: 0;
}

.row-notfound {
  text-align: center;
}

.row-notfound figure {
  line-height: 0;
  margin-bottom: 30px;
}

.row-notfound h3 {
  margin-bottom: 15px;
}

.row-notfound p {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.43;
  letter-spacing: normal;
  text-align: center;
  color: #999999;
}

.row-my-account .col {
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .col.left-account {
  width: 25.65%;
}

.row-my-account .col.right-account {
  width: 74.35%;
  padding: 0 0 0 70px;
}

.row-my-account .side-profile {
  background: #f3f3f3;
  margin-bottom: 20px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.row-my-account .side-profile .photo-profile {
  width: auto;
  margin: auto;
  padding: 30px 30px;
}

.row-my-account .side-profile .photo-profile figure {
  width: 120px;
  height: 120px;
  border: 7px solid #fff;
  margin: 0 auto 10px auto;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -ms-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -o-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.row-my-account .side-profile .photo-profile figure img {
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.row-my-account .side-profile .photo-profile p {
  margin: 0;
  text-align: center;
}

.row-my-account .side-profile .photo-profile .name {
  font-size: 18px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.11;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.row-my-account .side-profile .photo-profile .small {
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 2;
  letter-spacing: normal;
  text-align: center;
  color: #999;
}

.row-my-account .side-profile .box-poin {
  background: #1fb25a;
  padding: 21px 15px;
  color: #fff;
  border-radius: 0 0 4px 4px;
  -webkit-border-radius: 0 0 4px 4px;
  -moz-border-radius: 0 0 4px 4px;
  -ms-border-radius: 0 0 4px 4px;
  -o-border-radius: 0 0 4px 4px;
}

.row-my-account .side-profile .box-poin .txt {
  float: left;
  width: 40%;
  padding: 0 15px 0 35px;
  position: relative;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1;
  letter-spacing: normal;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .side-profile .box-poin .txt:before {
  position: absolute;
  width: 23px;
  height: 27px;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/icon-tirapoin.png") no-repeat center center;
}

.row-my-account .side-profile .box-poin .total {
  float: left;
  width: 60%;
  padding: 0 48px 0 15px;
  position: relative;
  font-size: 30px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 28px;
  letter-spacing: normal;
  text-align: right;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .side-profile .box-poin .total .redeem {
  position: absolute;
  width: 43px;
  height: 43px;
  top: -4px;
  right: -10px;
  background: url("../images/material/icon-redeem.png") no-repeat center center;
  cursor: pointer;
}

.row-my-account .side-profile.epc {
  background: #4d4945;
}

.row-my-account .side-profile.epc .photo-profile .name {
  color: #fff;
}

.row-my-account .side-profile.epc .photo-profile .name .account-type {
  display: inline-block;
  border: 1px solid #cb4646;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 16px;
  letter-spacing: normal;
  text-align: center;
  color: #cb4646;
  padding: 0 6px;
  vertical-align: middle;
  margin: 0 0 0 4px;
}

.row-my-account .nav-account {
  border: 1px solid #d8d8d8;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.row-my-account .nav-account .selectFilter {
  display: none;
}

.row-my-account .nav-account ul {
  margin: 0;
}

.row-my-account .nav-account ul li {
  list-style: none;
  padding: 0;
  margin: 0;
  border-bottom: 1px solid #d8d8d8;
}

.row-my-account .nav-account ul li a {
  display: block;
  padding: 20px 25px 17px 65px;
  position: relative;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.row-my-account .nav-account ul li a .icon {
  position: absolute;
  top: 17px;
  left: 20px;
  content: "";
  width: 27px;
  height: 29px;
}

.row-my-account .nav-account ul li a:hover, .row-my-account .nav-account ul li a.active {
  color: #f4712e;
  font-weight: bold;
}

.row-my-account .nav-account ul li.my-dashboard a .icon {
  background: url("../images/material/my-account-dash.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-profile a .icon {
  background: url("../images/material/my-account-profile.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-mitra a .icon {
  background: url("../images/material/my-account-mitra.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-info a .icon {
  background: url("../images/material/my-account-info.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-trip a .icon {
  background: url("../images/material/my-account-trip.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-arisan a .icon {
  background: url("../images/material/my-account-arisan.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-order a .icon {
  background: url("../images/material/my-account-order.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-voucher a .icon {
  background: url("../images/material/my-account-voucher.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-poin a .icon {
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 25px;
  letter-spacing: normal;
  text-align: center;
  color: #49cbd6;
  background: url("../images/material/my-account-poin.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-toko a .icon {
  background: url("../images/material/my-account-toko.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-digital-marketing a .icon {
  background: url("../images/material/digital-marketing.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-member a .icon {
  background: url("../images/material/my-account-member.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-tracking-err a .icon {
  background: url("../images/material/PngItem_29139.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-account-mp a .icon {
  background: url("../images/material/mp-24.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-account-wa a .icon {
  background: url("../images/material/ico-wa.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-helpdesk a .icon {
  background: url("../images/material/my-account-helpdesk.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-subscription a .icon {
  background: url("../images/material/subscription.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.my-notif a .icon {
  background: url("../images/material/my-account-notif.png") no-repeat center 0;
}

.row-my-account .nav-account ul li.logout a .icon {
  background: url("../images/material/logout.png") no-repeat center 0;
}

.row-my-account .nav-account ul li:last-child {
  border-bottom: 0;
}

.row-my-account .nav-account ul li ul {
  margin-top: -8px;
  margin-left: 65px;
  padding-bottom: 20px;
  display: none;
}

.row-my-account .nav-account ul li ul li {
  border: 0;
}

.row-my-account .nav-account ul li ul li a {
  padding: 4px 25px 4px 12px;
  position: relative;
}

.row-my-account .nav-account ul li ul li a:before {
  position: absolute;
  width: 4px;
  height: 4px;
  content: "";
  background: #ccc;
  left: 0;
  top: 10px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.row-my-account .nav-account ul li.act ul {
  display: block;
}

.row-my-account .account-content .filter-bottom {
  margin-bottom: 20px;
}

.row-my-account .account-content .filter-bottom label {
  display: inline-block;
  padding: 0 8px 0 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.row-my-account .account-content .filter-bottom .selectbox {
  height: 40px;
}

.row-my-account .account-content .filter-bottom .filter-rate {
  display: inline-block;
  vertical-align: middle;
  padding-left: 15px;
}

.row-my-account .account-content .filter-bottom .filter-rate a {
  display: inline-block;
  height: 40px;
  padding: 0 9px;
  border: 1px solid #eaeaea;
  line-height: 28px;
  color: #999;
  margin: 0 6px 0 0;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: center;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .account-content .filter-bottom .filter-rate a span {
  vertical-align: middle;
  padding-left: 3px;
}

.row-my-account .account-content .filter-bottom .filter-rate a.active {
  border-color: #1fb25a;
  color: #1fb25a;
}

.row-my-account .account-content .filter-bottom .filter-mobile {
  float: right;
  display: none;
}

.row-my-account .account-content .filter-bottom .filter-mobile button {
  float: left;
  padding: 0;
  border: 0;
  margin: 0;
  width: 211px;
  height: 30px;
  line-height: 30px;
  background: #f4712e;
  color: #fff;
  position: relative;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.row-my-account .account-content .filter-bottom .filter-mobile button label {
  font-size: 13px;
  padding: 0px 10px 0 10px;
  float: left;
  color: #fff;
}

.row-my-account .account-content .filter-bottom .filter-mobile button .ico {
  width: 14px;
  height: 14px;
  float: right;
  margin: 0 15px 0 0;
  background: url("../images/material/ico-filter.png") no-repeat center center;
}

.row-my-account .account-content .filter-search {
  height: 40px;
  line-height: 40px;
  border: 1px solid #ccc;
  position: relative;
  box-shadow: 0 0 1px #ccc inset;
  -webkit-box-shadow: 0 0 1px #ccc inset;
  -moz-box-shadow: 0 0 1px #ccc inset;
  -ms-box-shadow: 0 0 1px #ccc inset;
  -o-box-shadow: 0 0 1px #ccc inset;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .account-content .filter-search ::-webkit-input-placeholder {
  color: #999;
}

.row-my-account .account-content .filter-search :-moz-placeholder {
  color: #999;
}

.row-my-account .account-content .filter-search ::-moz-placeholder {
  color: #999;
}

.row-my-account .account-content .filter-search :-ms-input-placeholder {
  color: #999;
}

.row-my-account .account-content .filter-search form {
  height: 100%;
}

.row-my-account .account-content .filter-search input[type="text"] {
  display: block;
  background: none;
  width: 100%;
  height: 100%;
  line-height: 100%;
  border: 0;
  padding: 0 30px 0 11px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: left;
  color: #999999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .account-content .filter-search input[type="submit"] {
  position: absolute;
  width: 30px;
  height: 100%;
  top: 0;
  right: 0;
  text-indent: -999999px;
  border: 0;
  padding: 0;
  cursor: pointer;
  background: url("../images/material/ico-search-small.png") no-repeat center center;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.row-my-account .account-content .filter-search input[type="submit"]:hover {
  opacity: 0.8;
}

.row-my-account .account-content .box-photo {
  border: 1px solid #d8d8d8;
  padding: 10px;
  width: 215px;
  height: 215px;
  float: right;
  margin-top: 25px;
  /*@include boxSizing(border-box);*/
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.row-my-account .account-content .box-photo .inner-photo {
  border: 1px dashed #d8d8d8;
  width: 215px;
  height: 215px;
  position: relative;
  cursor: pointer;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .account-content .box-photo .inner-photo .ic-txt {
  position: absolute;
  width: 100%;
  height: 75px;
  padding: 45px 20px 0 20px;
  top: 60%;
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.2;
  letter-spacing: normal;
  text-align: center;
  color: #999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.row-my-account .account-content .box-photo .inner-photo .ic-txt:before {
  position: absolute;
  width: 100%;
  height: 32px;
  content: "";
  top: 0;
  left: 0;
  background: url("../images/material/image-picture.png") no-repeat center 0;
}

.row-my-account .account-content .box-photo.v2 {
  margin: 0;
  width: 100%;
  height: 140px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .account-content .box-photo.v2 .inner-photo {
  width: 100%;
  height: 100%;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.row-my-account .account-content .box-photo.v2 .ic-txt {
  top: 50%;
}

.row-my-account .account-content .box-photo.v3 {
  margin-top: 0;
  width: 100%;
  height: 235px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-my-account .account-content .box-photo.v3 .inner-photo {
  width: 100%;
  height: 100%;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.row-my-account .account-content .box-photo.v3 .ic-txt {
  top: 50%;
}

.row-my-account .account-content .upload-file {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: none;
  top: 0;
  left: 0;
}

.row-my-account .account-content .upload-file .wrap-files {
  position: absolute;
  width: 100%;
  height: 100%;
}

.row-my-account .account-content .upload-file .wrap-files .input-list {
  position: absolute;
  width: 100%;
  height: 100%;
}

.row-my-account .account-content .upload-file .wrap-files .input-list input {
  width: 100%;
  height: 100%;
  border: 0;
  background: none;
  cursor: pointer;
  opacity: 0;
}

.row-my-account .account-content .upload-file .wrap-files .list-box .box {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #fff;
  overflow: hidden;
}

.row-my-account .account-content .upload-file .wrap-files .list-box .box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.row-my-account .account-content .upload-file .wrap-files .list-box .box .remove {
  position: absolute;
  width: 24px;
  height: 24px;
  bottom: 8px;
  right: 8px;
  z-index: 5;
  text-indent: -999999px;
  background: #fff url("../images/material/trash-ico.png") no-repeat center center;
  box-shadow: 0px 1px 4px -1px #000;
  -webkit-box-shadow: 0px 1px 4px -1px #000;
  -moz-box-shadow: 0px 1px 4px -1px #000;
  -ms-box-shadow: 0px 1px 4px -1px #000;
  -o-box-shadow: 0px 1px 4px -1px #000;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.row-my-account .account-content .upload-file-testi {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: none;
  top: 0;
  left: 0;
}

.row-my-account .account-content .upload-file-testi .wrap-files {
  position: absolute;
  width: 100%;
  height: 100%;
}

.row-my-account .account-content .upload-file-testi .wrap-files .input-list {
  position: absolute;
  width: 100%;
  height: 100%;
}

.row-my-account .account-content .upload-file-testi .wrap-files .input-list input {
  width: 100%;
  height: 100%;
  border: 0;
  background: none;
  cursor: pointer;
  opacity: 0;
}

.row-my-account .account-content .upload-file-testi .wrap-files .list-box .box {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #fff;
  overflow: hidden;
}

.row-my-account .account-content .upload-file-testi .wrap-files .list-box .box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.row-my-account .account-content .upload-file-testi .wrap-files .list-box .box .remove {
  position: absolute;
  width: 24px;
  height: 24px;
  bottom: 8px;
  right: 8px;
  z-index: 5;
  text-indent: -999999px;
  background: #fff url("../images/material/trash-ico.png") no-repeat center center;
  box-shadow: 0px 1px 4px -1px #000;
  -webkit-box-shadow: 0px 1px 4px -1px #000;
  -moz-box-shadow: 0px 1px 4px -1px #000;
  -ms-box-shadow: 0px 1px 4px -1px #000;
  -o-box-shadow: 0px 1px 4px -1px #000;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.row-my-account .account-content #accordian {
  width: 100%;
}

.row-my-account .account-content #accordian h3 {
  border: 1px solid #D8D8D8;
  margin-bottom: 10px;
  padding: 20px 40px;
  box-sizing: border-box;
  position: relative;
}

.row-my-account .account-content #accordian h3 a {
  padding: 0 10px;
  font-size: 16px;
  line-height: 28px;
  font-weight: bold;
  display: block;
  color: #79531D;
  text-decoration: none;
}

.row-my-account .account-content #accordian .ico-branch {
  position: absolute;
  background: url(../images/material/ico-branch.png) center no-repeat;
  width: 24px;
  height: 24px;
  left: 15px;
}

.row-my-account .account-content #accordian .ico-chart {
  position: absolute;
  background: url(../images/material/ico-chart.png) center no-repeat;
  width: 24px;
  height: 24px;
  left: 15px;
}

.row-my-account .account-content #accordian ul li {
  list-style-type: none;
  margin: 0;
}

.row-my-account .account-content #accordian ul ul li a {
  color: #79531D;
  text-decoration: none;
  display: block;
  padding: 0 15px;
  transition: all 0.15s;
  position: relative;
}

.row-my-account .account-content #accordian ul li.active ul {
  margin-left: 50px;
  margin-bottom: 0;
}

.row-my-account .account-content #accordian ul ul {
  display: none;
}

.row-my-account .account-content #accordian ul ul ul {
  margin-left: 15px;
}

.row-my-account .account-content #accordian li.active > ul {
  display: block;
}

.row-my-account .account-content #accordian ul li.active ul li a {
  border: 1px solid #D8D8D8;
  margin-bottom: 10px;
  padding: 20px 40px;
  box-sizing: border-box;
  font-weight: bold;
  position: relative;
}

.row-my-account .account-content #accordian ul li.active ul li.active ul li a {
  color: #666;
  font-weight: normal;
}

.row-my-account .account-content #accordian ul li.active ul li.active ul li a:after {
  display: none;
}

.row-my-account .account-content #accordian .have-child.active h3:after, .row-my-account .account-content #accordian .have-child.active > a:after {
  transform: rotate(0);
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  -moz-transition: all 0.15s ease-in-out;
  -ms-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
}

.row-my-account .account-content #accordian .have-child h3:after, .row-my-account .account-content #accordian .have-child > a:after {
  content: "";
  position: absolute;
  width: 35px;
  height: 35px;
  background: url(../images/material/ico-full-black.png);
  right: 10px;
  top: 15px;
  transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  -moz-transition: all 0.15s ease-in-out;
  -ms-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
}

.row-my-account .listing-order-transaction .row-tdt {
  border-bottom: 1px solid #D8D8D8;
  padding-bottom: 30px;
  box-sizing: border-box;
  margin-bottom: 25px;
}

.row-my-account .listing-order-transaction .row-tdt .heading-md {
  font-size: 16px;
}

.row-my-account .listing-order-transaction .row-tdt .col {
  width: 50%;
}

.row-my-account .listing-order-transaction .row-tdt .col .label {
  font-size: 14px;
  margin-bottom: 5px;
}

.row-my-account .listing-order-transaction .row-tdt .col-select {
  border: 1px solid #D8D8D8;
  height: 50px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.row-my-account .listing-order-transaction .row-tdt .col-select select {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 50px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  font-size: 14px;
  color: #333;
  border: none;
  font-weight: bold;
  background: url(../images/material/arr-drop-sm.png) no-repeat 95% center;
}

.row-my-account .listing-order-transaction .row-tdt .box-payment {
  border: 0;
  padding: 0;
}

.row-my-account .listing-order-transaction .row-address:before {
  display: none;
}

.row-my-account .listing-order-transaction .row-address .col:nth-child(1) {
  width: 70%;
}

.row-my-account .listing-order-transaction .row-address .col:nth-child(2) {
  width: 30%;
  float: right;
  text-align: right;
}

.row-my-account .listing-order-transaction .row-address .col .label {
  font-family: "Lato";
  font-size: 10px;
  line-height: 20px;
  font-weight: bold;
  color: #F4712E;
  border: 1px solid #F4712E;
  width: fit-content;
  border-radius: 5px;
  text-align: center;
  padding: 5px 10px;
  box-sizing: border-box;
  float: right;
}

.row-my-account .listing-order-transaction .row-address .col .inline-btn {
  position: absolute;
  bottom: 30px;
}

.row-my-account .listing-order-transaction .row-address .col .inline-btn .link-text {
  font-family: "Lato";
  font-size: 13px;
  line-height: 16px;
  color: #666666;
  border: 1px solid #D8D8D8;
  border-radius: 5px;
  padding: 5px 25px;
  box-sizing: border-box;
}

.row-my-account .listing-order-transaction .row-address .col .inline-btn .link-ico .edit {
  background: url(../images/material/ico-edit.png) no-repeat;
  width: 15px;
  height: 15px;
  position: absolute;
  right: -30px;
  top: 0;
}

.row-my-account .listing-order-transaction .row-address .col .inline-btn .link-ico .delete {
  background: url(../images/material/ico-remove-small.png) no-repeat;
  width: 15px;
  height: 15px;
  position: absolute;
  right: -60px;
  top: 0;
}

.row-my-account .listing-order-transaction .row-market .heading-md {
  width: 70%;
}

.row-my-account .listing-order-transaction .row-market .custom-radio label {
  line-height: 20px;
}

.row-my-account .listing-order-transaction .box-payment {
  padding: 30px;
}

.row-my-account .listing-order-transaction .box-payment .opt-checkbox.sm .item {
  min-width: 164px;
}

.row-my-account .listing-order-transaction .box-payment .opt-checkbox.sm .item label {
  padding: 7px;
}

.row-my-account .listing-order-transaction .box-payment .label-check {
  border: 1px solid #eaeaea;
  width: auto;
  height: auto;
  text-align: center;
  min-width: 60px;
  padding: 10px 40px;
  background: url("../images/material/icon-check-lg.png") no-repeat 102% 102%;
  border-color: #f4712e;
  background-size: 25px 25px;
  font-size: 16px;
  font-weight: bold;
  color: #F4712E;
}

.row-my-account .listing-order-transaction .cart-overview .product-cart .product-title {
  width: 60%;
}

.row-my-account .listing-order-transaction .cart-overview table tbody tr td.td-price {
  padding: 19px 5px;
}

.row-my-account .listing-order-transaction .cart-overview table tbody tr td.td-price {
  padding: 19px 5px;
}

.row-my-account .listing-order-transaction .cart-overview table tbody tr td.td-price span {
  display: inline-block;
  color: #F4712E;
  margin-top: 5px;
}

.row-my-account .listing-order-transaction .cart-overview table tbody tr td.td-subtotal {
  padding: 19px 5px;
  padding-right: 15px;
}

.row-my-account .listing-order-transaction .cart-overview table tfoot tr td.tf-total-price {
  padding-right: 15px;
}

.row-my-account .listing-order-transaction .no-pad {
  padding: 30px 0;
  padding-top: 0;
}

.account-overview {
  border: 1px solid #d8d8d8;
  padding: 30px 30px 10px 30px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.account-overview .photo {
  margin: 0 0 20px 0;
  text-align: center;
}

.account-overview .photo figure {
  width: 90px;
  height: 90px;
  border: 4px solid #fff;
  margin: 0 auto 10px auto;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -ms-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -o-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.account-overview .photo figure img {
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.account-overview .row {
  border-bottom: 1px solid #d8d8d8;
  padding: 12px;
}

.account-overview .row .col {
  float: left;
  width: 43%;
  text-align: left;
  font-size: 14px;
  padding: 0 10px 0 0;
  color: #666;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.account-overview .row .col:nth-child(2n+2) {
  width: 57%;
  padding: 0 0 0 10px;
  color: #333;
}

.account-overview .row:last-child {
  border-bottom: 0;
}

.upload-file-multiple {
  margin: 0 0 30px 0;
}

.upload-file-multiple .wrap-files .input-list {
  float: left;
  display: none;
}

.upload-file-multiple .wrap-files .list-box {
  float: left;
  width: 100%;
}

.upload-file-multiple .wrap-files .list-box .box {
  float: left;
  border: 1px solid #d8d8d8;
  width: 31.555%;
  padding: 10px;
  margin: 0 2.67% 3.7% 0;
  height: 140px;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.upload-file-multiple .wrap-files .list-box .box .inbox {
  border: 1px dashed #d8d8d8;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.upload-file-multiple .wrap-files .list-box .box .remove {
  position: absolute;
  width: 24px;
  height: 24px;
  bottom: 8px;
  right: 8px;
  z-index: 5;
  text-indent: -999999px;
  background: #fff url("../images/material/trash-ico.png") no-repeat center center;
  box-shadow: 0px 1px 4px -1px #000;
  -webkit-box-shadow: 0px 1px 4px -1px #000;
  -moz-box-shadow: 0px 1px 4px -1px #000;
  -ms-box-shadow: 0px 1px 4px -1px #000;
  -o-box-shadow: 0px 1px 4px -1px #000;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.upload-file-multiple .wrap-files .list-box .box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.upload-file-multiple .wrap-files .list-box .box:nth-child(3n+3) {
  margin-right: 0;
}

.upload-file-multiple .wrap-files .list-box .button {
  float: left;
  border: 1px solid #d8d8d8;
  width: 140px;
  height: 140px;
  margin-top: 0;
  padding: 10px;
  position: relative;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.upload-file-multiple .wrap-files .list-box .button .in {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  border: 1px dashed #d8d8d8;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.upload-file-multiple .wrap-files .list-box .button .ic-text {
  position: absolute;
  width: 100%;
  height: 65px;
  padding: 42px 10px 0 10px;
  top: 50%;
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.2;
  letter-spacing: normal;
  text-align: center;
  color: #999;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.upload-file-multiple .wrap-files .list-box .button .ic-text:before {
  position: absolute;
  width: 32px;
  height: 32px;
  content: "";
  left: 50%;
  top: 0;
  margin: auto;
  background: url("../images/material/add.png") no-repeat center center;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
}

.upload-file-multiple .wrap-files .list-box .button input.toggle {
  position: absolute;
  width: 100%;
  height: 100%;
  background: none;
  border: 0;
  top: 0;
  left: 0;
  cursor: pointer;
}

.upload-file-multiple .wrap-files .list-box .button input.toggle:focus {
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  -o-box-shadow: none;
}

.box-newsletter {
  padding: 0 0 10px 0;
}

.box-newsletter .checkbox {
  display: inline-block;
}

.box-newsletter .checkbox label {
  color: #999;
}

.listing-address .row {
  position: relative;
  padding: 16px 20px;
  margin-bottom: 20px;
  border: 2px solid #d8d8d8;
  cursor: default;
  transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  -moz-transition: all 0.15s ease-in-out;
  -ms-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.listing-address .row:hover {
  border-color: #f4712e;
}

.listing-address .row .col {
  float: left;
  width: 65%;
  padding-right: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-address .row .col.col-right {
  position: absolute;
  width: 35%;
  height: 100%;
  padding: 0;
  top: 0;
  right: 0;
  padding: 16px 20px 16px 0;
}

.listing-address .row .col.col-right .box {
  position: relative;
  height: 100%;
}

.listing-address .row .col h3 {
  margin: 0 0 3px 0;
}

.listing-address .row .col .name-order {
  color: #f4712e;
  margin: 0 0 4px 0;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
}

.listing-address .row .col .address {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  margin: 0 0 0 0;
}

.listing-address .row .col .address-main {
  position: absolute;
  top: 0;
  right: 0;
  border: 1px solid #f4712e;
  padding: 2px 7px;
  font-size: 10px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: center;
  color: #f4712e;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.listing-address .row .col .wrap-btn {
  position: absolute;
  width: 100%;
  bottom: 0;
  right: -5px;
  padding: 0 0 0 0;
  text-align: right;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-address .row .col .wrap-btn a {
  display: inline-block;
  position: relative;
  padding: 0 0 0 7px;
}

.listing-address .row .col .wrap-btn a.edit {
  width: 24px;
  height: 24px;
  text-indent: 999999px;
}

.listing-address .row .col .wrap-btn a.edit:before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  background: url("../images/material/ico-edit-md.png") no-repeat center center;
  background-size: 22px 22px;
}

.listing-address .row .col .wrap-btn a.remove {
  width: 24px;
  height: 24px;
  text-indent: 999999px;
}

.listing-address .row .col .wrap-btn a.remove:before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  background: url("../images/material/ico-remove-md.png") no-repeat center center;
  background-size: 17px 21px;
}

.listing-address .row.add-new {
  padding: 0;
}

.listing-address .row.add-new:hover {
  border-color: #d8d8d8;
}

.listing-address .row.add-new a {
  display: block;
  padding: 20px;
  text-align: center;
}

.listing-address .row.add-new a p {
  display: block;
  margin: 0;
  height: 80px;
  border: 1px dashed #d8d8d8;
  text-align: center;
  padding: 12px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.listing-address .row.add-new a span {
  text-align: center;
  position: relative;
  display: inline-block;
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 2.8;
  letter-spacing: normal;
  text-align: center;
  color: #999;
  padding: 32px 0 0 0;
}

.listing-address .row.add-new a span:before {
  position: absolute;
  width: 32px;
  height: 32px;
  content: "";
  left: 50%;
  top: 0;
  background: url("../images/material/ico-plus-md.png") no-repeat 0 0;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
}

.listing-address.v2 .row {
  border: 0;
  padding: 0;
}

.listing-address.v2 .row .col {
  width: 63%;
  padding-right: 130px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.listing-address.v2 .row .col.col-right {
  width: 37%;
  padding: 0;
  position: relative;
}

.listing-address.v2 .row .col .label {
  margin: 0 0 5px 0;
}

.listing-address.v2 .row .col .name-order {
  color: #333;
  margin-bottom: 10px;
}

.listing-address.v2 .row .col .title-status {
  color: #f4712e;
  margin: 0 0 15px 0;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
}

.listing-address.v2 .row .col .row-btn a {
  margin-right: 5px;
}

.listing-notif {
  padding-bottom: 5px;
}

.listing-notif .row {
  border: 1px solid #d8d8d8;
  background: #f5f5f5;
  margin-bottom: 20px;
  padding: 18px 190px 18px 20px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.listing-notif .row .date {
  color: #999;
}

.listing-notif .row h4 {
  margin: 0 0 3px 0;
}

.listing-notif .row .notif-descrip {
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.33;
  letter-spacing: normal;
  text-align: left;
  color: #666;
  margin: 0;
}

.id-order {
  font-size: 18px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  text-align: left;
  color: #333;
  margin-bottom: 3px;
}

.id-order.white {
  color: #fff;
}

.name-order {
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 24px;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.date-order {
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.row-total-history {
  float: left;
  width: 100%;
}

.row-total-history label {
  display: block;
  margin-bottom: 3px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.row-total-history .box-price {
  display: table;
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  text-align: right;
  color: #cb4646;
}

.row-total-history .box-price .price {
  display: table-cell;
  vertical-align: top;
}

.row-total-history .box-price .currency {
  text-align: left;
  display: table-cell;
  vertical-align: top;
}

.row-total-history.v2 label {
  color: #999;
}

.row-total-history.v2 .box-price {
  color: #fff;
}

.row-status {
  float: right;
}

.row-status label {
  display: block;
  margin-bottom: 3px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: right;
  color: #666;
}

.row-status span {
  display: table;
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.22;
  letter-spacing: normal;
  text-align: right;
}

.row-status span.complete {
  color: #1FB25A;
}

.row-status span.incomplete {
  color: #cb4646;
}

.green-text {
  color: #1FB25A;
  font-weight: bold;
  line-height: 28px;
}

.listing-order {
  padding-bottom: 20px;
}

.listing-order .row {
  background: #f5f5f5;
  border: 1px solid #d8d8d8;
  margin-bottom: 10px;
  position: relative;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.listing-order .row:nth-child(even) {
  background: #fff;
}

.listing-order .row .col {
  float: left;
  padding: 18px 20px;
  position: relative;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-order .row .col.left {
  width: 61%;
}

.listing-order .row .col.right {
  width: 39%;
  padding-right: 95px;
  position: absolute;
}

.listing-order .row .col .box-circle {
  position: absolute;
  width: 75px;
  height: 100%;
  top: 0;
  right: 0;
  text-align: center;
  border-left: 1px solid #d8d8d8;
}

.listing-order .row .col .box-circle .col-select {
  height: 80px;
}

.listing-order .row .col .box-circle .col-select select {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 80px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  font-size: 18px;
  color: #333;
  border: none;
  background: url(../images/material/arr-drop-sm.png) no-repeat 95% center;
  padding-left: 30px;
}

.listing-order .row .col .box-circle .box {
  position: absolute;
  height: 8px;
  width: 100%;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.listing-order .row .col .box-circle .circle {
  display: inline-block;
  width: 8px;
  height: 8px;
  border: 2px solid #1fb25a;
  text-indent: -999999px;
  vertical-align: top;
  margin: 0 1px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-order .row .col .box-circle .dropdown-circle [data-toggle="dropdown-circle"] {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  line-height: 0;
}

.listing-order .row .col .box-circle .dropdown-circle {
  list-style: none;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list {
  max-height: 0;
  overflow: hidden;
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 70px;
  background: #fff;
  z-index: 999;
  display: block;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li {
  padding: 0;
  list-style: none;
  margin: 0;
  border-bottom: 1px solid #D8D8D8;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li:nth-child(3) {
  border: 0;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li a {
  display: block;
  font-size: 14px;
  color: #666666;
  position: relative;
  line-height: 40px;
  padding-left: 50px;
  box-sizing: border-box;
  width: 100%;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li a span {
  width: 18px;
  height: 18px;
  position: absolute;
  left: 0;
  width: 100%;
  top: 10px;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li a span.download {
  background: url("../images/material/ico-pdf.png") no-repeat;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li a span.detail {
  background: url("../images/material/ico-search-small.png") no-repeat;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li a span.edit {
  background: url("../images/material/ico-edit-green.png") no-repeat;
}

.listing-order .row .col .box-circle .dropdown-circle .dropdown-circle-list li a span.hapus {
  background: url("../images/material/ico-delete.png") no-repeat;
}

.listing-order .row .col .box-circle .dropdown-circle .show {
  display: block;
  max-height: 9999px;
  border: 1px solid #D8D8D8;
  padding: 10px;
  border-radius: 5px;
  position: absolute;
  width: 230px;
  height: 120px;
  left: -175px;
}

.listing-order .row .col .box-circle .dropdown-circle .hide {
  max-height: 0;
}

.listing-order.with-date .row .col.left {
  width: 70%;
}

.listing-order.with-date .row .col.right {
  width: 30%;
}

.listing-order.with-date .date-history .left {
  margin: 0 20px;
}

.listing-order.poin .col.right {
  padding-right: 20px;
  text-align: right;
}

.listing-order.poin .col.right .poin-value {
  font-size: 30px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.2;
  letter-spacing: normal;
  color: #1fb25a;
}

.listing-order.poin .col.right .poin-value.minus {
  color: #cb4646;
}

.listing-order.poin .col.right .value-sm {
  margin: 20px 0 0 0;
  font-size: 14px;
  color: #999;
  font-weight: bold;
  color: #1fb25a;
}

.listing-order.box-pad {
  padding: 30px;
  box-sizing: border-box;
}

.listing-order.box-pad .row .col.right {
  width: 30%;
}

.listing-order.box-pad .row .col.left {
  width: 70%;
}

.listing-order.box-pad .row .col .box-circle {
  height: auto;
}

.listing-order.box-pad .row .col .box-circle h2 {
  color: #333333;
  font-size: 18px;
  line-height: 78px;
}

.listing-order.box-pad .row .col .row-status label {
  line-height: 2.9;
}

.listing-order.box-pad .left {
  width: 35%;
}

.listing-order.box-pad .right {
  width: 65%;
}

.listing-order.box-pad .product-cart {
  color: #333;
  display: block;
}

.listing-order.box-pad .product-cart.green-text span {
  color: #1FB25A;
  font-weight: bold;
}

.listing-order.box-pad .product-cart .product-md {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  width: 20%;
  height: 40px;
  border: 1px solid #eaeaea;
  margin-right: -4px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.listing-order.box-pad .product-cart .product-md figure {
  padding: 5px;
  position: relative;
  width: 100%;
  height: 100%;
  position: absolute;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.listing-order.box-pad .product-cart .product-md figure img {
  height: 100%;
}

.listing-order.box-pad .product-cart .product-title {
  display: inline-block;
  vertical-align: middle;
  padding: 0 0 0 16px;
  font-size: 16px;
  width: 69%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.order-status {
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.order-status .row-head {
  padding: 18px 30px;
  background: #4d4945;
  color: #fff;
  border-radius: 4px 4px 0 0;
  -webkit-border-radius: 4px 4px 0 0;
  -moz-border-radius: 4px 4px 0 0;
  -ms-border-radius: 4px 4px 0 0;
  -o-border-radius: 4px 4px 0 0;
}

.order-status .row-head .col {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.order-status .row-head .col.left {
  width: 80%;
  padding: 0 50px 0 0;
}

.order-status .row-head .col.right {
  width: 20%;
}

.order-status .row-head .col .dup-info {
  display: inline-block;
  margin-right: 120px;
}

.order-status .row-head .date-history {
  display: block;
}

.order-status .row-head .date-history .id-order {
  color: #fff;
}

.order-status .row-head .date-history .left {
  margin: 0 20px;
}

.order-status .row-mid {
  padding: 30px 30px 10px 30px;
}

.order-status .row-mid.midreview {
  padding: 25px 20px 40px 20px;
}

.row-result-poin {
  background: #1fb25a;
  padding: 30px 59px 30px 57px;
  margin-bottom: 40px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.row-result-poin .row .box .label {
  float: left;
  margin-right: 90px;
  position: relative;
  padding-right: 62px;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 50px;
  letter-spacing: normal;
  text-align: left;
  color: #fff;
}

.row-result-poin .row .box .label:after {
  position: absolute;
  width: 34px;
  height: 39px;
  content: "";
  top: 50%;
  right: 0;
  background: url("../images/material/icon-tirapoin-lg.png") no-repeat center center;
  background-size: 34px 39px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.row-result-poin .row .box .value-poin {
  float: left;
  font-size: 50px;
  font-weight: 900;
  font-style: normal;
  font-stretch: normal;
  line-height: 50px;
  letter-spacing: normal;
  text-align: right;
  color: #fff;
}

.row-result-poin .row .box a {
  margin: 0 0 0 17px;
}

.voucher-search {
  padding: 30px 60px;
  background: #f5f5f5;
  margin-bottom: 40px;
  text-align: center;
}

.voucher-search label {
  display: inline-block;
  vertical-align: middle;
  line-height: 50px;
  margin: 0 20px 0 0;
  font-size: 14px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: left;
  color: #666;
}

.voucher-search input {
  display: inline-block;
  vertical-align: middle;
  line-height: 50px;
  height: 50px;
  margin: 0 20px 0 0;
  border: 1px solid #ccc;
  padding: 0 15px;
  font-size: 14px;
  color: #666;
  width: 360px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
}

.voucher-search input:focus {
  box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -webkit-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -moz-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -ms-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
  -o-box-shadow: 0px 0px 5px 0px rgba(31, 178, 92, 0.8);
}

.voucher-search button {
  display: inline-block;
  vertical-align: middle;
  line-height: 50px;
  border: 0;
  cursor: pointer;
}

.row-voucher .row .col {
  width: 48%;
  margin: 0 4% 4% 0;
  position: relative;
  border: 1px solid #eaeaea;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.row-voucher .row .col:nth-child(2n+2) {
  margin: 0 0 0 0;
}

.row-voucher .row .col .value-kupon {
  width: 160px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../images/material/bg-red-kupon.png") repeat-y center center;
  background-size: 100%;
}

.row-voucher .row .col .value-kupon .box {
  position: absolute;
  width: 100%;
  height: 45px;
  top: 50%;
  left: 0;
  padding: 0 30px;
  text-align: center;
  color: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}

.row-voucher .row .col .value-kupon .box span {
  display: block;
}

.row-voucher .row .col .value-kupon .box span.title {
  font-size: 12px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  text-align: center;
  line-height: 12px;
}

.row-voucher .row .col .value-kupon .box span.percentage {
  font-size: 30px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.2;
}

.row-voucher .row .col .text {
  padding: 20px 20px 20px 183px;
}

.row-voucher .row .col .text .date {
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.2;
  letter-spacing: normal;
  color: #999;
  margin: 0 0 18px 0;
}

.row-voucher .row .col .text .descrip {
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.33;
  letter-spacing: normal;
  text-align: left;
  color: #333;
  margin: 0 0 18px 0;
}

.row-voucher .row .col .text .wrap-btn {
  text-align: right;
}

.result-search {
  margin-bottom: 29px;
}

.result-search .list {
  border-bottom: 1px solid #eaeaea;
}

.result-search .list a {
  display: block;
  padding: 29px 0;
}

.result-search .list a h4 {
  font-size: 18px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.33;
  color: #f4712e;
  margin-bottom: 15px;
}

.result-search .list a p {
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.43;
  color: #333;
  margin: 0;
}

.result-search .list a:first-child {
  border-top: 1px solid #eaeaea;
}

.result-search .list a:hover {
  padding: 29px 15px 29px 15px;
  background: #f2f2f2;
}

.result-search .list a:hover h4 {
  color: #ea6725;
}

.result-search .list a:hover p {
  color: #222;
}

.mainslider-area {
  padding: 20px 20px 30px 20px;
  border: 1px solid #d8d8d8;
  margin-bottom: 15px;
  position: relative;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-add {
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 100px;
}

.form-add .button-add {
  text-align: center;
  border: 1px solid #d8d8d8;
  padding: 20px;
  left: 0;
  bottom: 0;
  cursor: pointer;
  width: 100%;
  height: 100px;
  position: absolute;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-add .button-add .inn {
  border: 1px dashed #d8d8d8;
  padding: 15px 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.form-add .button-add .ic-text {
  display: inline-block;
  position: relative;
  padding: 38px 0 0 0;
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 2.8;
  letter-spacing: normal;
  text-align: center;
  color: #999;
}

.form-add .button-add .ic-text:before {
  position: absolute;
  width: 32px;
  height: 32px;
  content: "";
  left: 50%;
  top: 0;
  background: url("../images/material/add-red.png") no-repeat center center;
  transform: translate(-50%);
  -webkit-transform: translate(-50%);
  -moz-transform: translate(-50%);
  -ms-transform: translate(-50%);
  -o-transform: translate(-50%);
}

.form-add .remove-add {
  position: absolute;
  width: 24px;
  height: 24px;
  bottom: 13px;
  left: 50%;
  z-index: 5;
  text-indent: -999999px;
  cursor: pointer;
  background: #fff url("../images/material/trash-ico.png") no-repeat center center;
  box-shadow: 0px 1px 4px -1px #000;
  -webkit-box-shadow: 0px 1px 4px -1px #000;
  -moz-box-shadow: 0px 1px 4px -1px #000;
  -ms-box-shadow: 0px 1px 4px -1px #000;
  -o-box-shadow: 0px 1px 4px -1px #000;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  transform: translate(-50%);
  -webkit-transform: translate(-50%);
  -moz-transform: translate(-50%);
  -ms-transform: translate(-50%);
  -o-transform: translate(-50%);
}

.form-testi {
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 100px;
}

.form-testi .testimoni-area {
  padding: 20px 20px 30px 20px;
  border: 1px solid #d8d8d8;
  margin-bottom: 15px;
  position: relative;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.form-testi .peserta-area {
  position: relative;
  padding-bottom: 30px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.form-testi .button-testi {
  text-align: center;
  border: 1px solid #d8d8d8;
  padding: 20px;
  left: 0;
  bottom: 0;
  cursor: pointer;
  width: 100%;
  height: 100px;
  position: absolute;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.form-testi .button-testi .inn {
  border: 1px dashed #d8d8d8;
  padding: 15px 0;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.form-testi .button-testi .ic-text {
  display: inline-block;
  position: relative;
  padding: 38px 0 0 0;
  font-size: 10px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 2.8;
  letter-spacing: normal;
  text-align: center;
  color: #999;
}

.form-testi .button-testi .ic-text:before {
  position: absolute;
  width: 32px;
  height: 32px;
  content: "";
  left: 50%;
  top: 0;
  background: url("../images/material/add-red.png") no-repeat center center;
  transform: translate(-50%);
  -webkit-transform: translate(-50%);
  -moz-transform: translate(-50%);
  -ms-transform: translate(-50%);
  -o-transform: translate(-50%);
}

.form-testi .remove-testi {
  position: absolute;
  width: 24px;
  height: 24px;
  bottom: 13px;
  left: 50%;
  z-index: 5;
  text-indent: -999999px;
  cursor: pointer;
  background: #fff url("../images/material/trash-ico.png") no-repeat center center;
  box-shadow: 0px 1px 4px -1px #000;
  -webkit-box-shadow: 0px 1px 4px -1px #000;
  -moz-box-shadow: 0px 1px 4px -1px #000;
  -ms-box-shadow: 0px 1px 4px -1px #000;
  -o-box-shadow: 0px 1px 4px -1px #000;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  transform: translate(-50%);
  -webkit-transform: translate(-50%);
  -moz-transform: translate(-50%);
  -ms-transform: translate(-50%);
  -o-transform: translate(-50%);
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_draggerRail {
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
}

.mCSB_inside > .mCSB_container {
  margin-right: 40px;
}

.mCSB_scrollTools .mCSB_draggerRail {
  width: 6px;
  background: #eaeaea;
}

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  background: #999;
}

.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #999;
  filter: "alpha(opacity=1)";
  -ms-filter: "alpha(opacity=1)";
}

.ui-datepicker .ui-datepicker-header {
  padding-bottom: 4px;
}

.ui-widget.ui-widget-content {
  z-index: 15 !important;
}

.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
  padding: 5px;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  top: 5px;
}

.row-view {
  margin-bottom: 20px;
}

.row-view .col {
  float: left;
  width: 32.5%;
  margin: 0 1.2% 0 0;
}

.row-view .col:last-child {
  margin-right: 0;
}

.row-view .col h5 {
  color: #666;
  text-align: center;
  margin: 0 0 10px 0;
}

.row-view.type-2 .col {
  width: 28.7%;
}

.row-view.type-2 .col:last-child {
  width: 40%;
}

.box-card {
  height: 90px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.box-card.blue {
  background: #57cbfe;
  border-bottom: 20px solid #0293d4;
}

.box-card.green {
  background: #45b7af;
  border-bottom: 20px solid #33897e;
}

.box-card.red {
  background: #fa6a62;
  border-bottom: 20px solid #f51c15;
}

.box-card .ico {
  width: 54px;
  height: 54px;
  display: block;
  float: left;
  margin: 5px 0 0 10px;
  position: absolute;
}

.box-card .ico.cal {
  background: url("../images/material/calendar-fff.png") no-repeat center center;
  background-size: 54px 54px;
}

.box-card .ico.people {
  background: #fff url("../images/material/people.png") no-repeat center center;
  margin-top: 8px;
  background-size: 34px 34px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.box-card .ico span {
  display: block;
  line-height: 40px;
  font-size: 14px;
  color: #fff;
  text-align: center;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  font-weight: bold;
  font-style: normal;
}

.box-card .txt {
  padding: 15px 10px 0 75px;
  position: relative;
  z-index: 3;
  text-align: right;
  color: #fff;
}

.box-card .txt .qty {
  display: block;
  font-size: 24px;
  margin: 0 0 5px 0;
}

.box-card .txt .small {
  display: block;
  font-size: 14px;
}

.box-card .txt .cl {
  float: left;
  width: 50%;
  padding: 0 10px 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.box-card .txt .cl:nth-child(2n+2) {
  padding: 0 0 0 10px;
}

.row-charts .col {
  float: left;
  width: 49%;
  margin: 0 2% 0 0;
}

.row-charts .col:last-child {
  margin-right: 0;
}

.highcharts-credits {
  display: none;
}

.highcharts-axis,
.highcharts-yaxis {
  display: none;
}

.daily-chart {
  border: 1px solid #0392d4;
  margin-bottom: 20px;
}

.daily-chart h5 {
  background: #0392d4;
  color: #fff;
  font-size: 16px;
  padding: 10px 10px;
}

.dailychart {
  padding: 20px 10px;
}

.monthly-chart {
  border: 1px solid #f19501;
  margin-bottom: 20px;
}

.monthly-chart h5 {
  background: #f19501;
  color: #fff;
  font-size: 16px;
  padding: 10px 10px;
}

.monthlychart {
  padding: 0 20px 15px 0;
}

.quarterly-chart {
  border: 1px solid #f31c14;
  margin-bottom: 20px;
}

.quarterly-chart h5 {
  background: #f31c14;
  color: #fff;
  font-size: 16px;
  padding: 10px 10px;
}

.quarterlychart {
  padding: 0 20px 15px 0;
}

.no-margin {
  margin: 0 !important;
}

.custom-radio {
  position: relative;
  text-align: right;
}

.custom-radio label {
  display: block;
  text-align: right;
  font-size: 16px;
  line-height: 50px;
  color: #48535b;
  margin-left: 30px;
}

.custom-radio label span {
  display: block;
}

.custom-radio label.double-line {
  line-height: 20px;
  letter-spacing: -.5px;
  padding-top: 5px;
}

.custom-radio label.double-line span {
  color: #a0a6a8;
}

.custom-radio .radio-btn {
  position: relative;
  padding-left: 26px;
}

.custom-radio .radio-btn input[type=radio] {
  background: url(../images/material/ico-radio.png);
  float: left;
  margin: auto;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 15px;
  left: 0;
}

.custom-radio .radio-btn input[type=radio]:checked {
  background-position: bottom center;
}

.custom-radio .lbank {
  display: inline-block;
}

.custom-radio .lbank.active .btn-std {
  background: #f58220;
}

.custom-radio .lbank .radion-btn .btn-std {
  cursor: pointer;
}

.custom-radio .container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.custom-radio .container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.custom-radio .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #fff;
  border-radius: 100%;
  border: 1px solid #666666;
}

.custom-radio .container input:checked ~ .checkmark {
  padding: 10px;
  box-sizing: border-box;
  border-color: #f4712e;
}

.custom-radio .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  width: 13px;
  height: 13px;
  background-color: #f4712e;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 100%;
}

.custom-radio .container input:checked ~ .checkmark:after {
  display: block;
}

.breadcrumb ul li {
  font-size: 14px;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: left;
  color: #999;
  padding-top: 7px;
  display: inline-block;
  margin-left: 0;
  padding-right: 30px;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 50%;
}

.breadcrumb ul li:after {
  position: absolute;
  content: "";
  background: url(../images/material/ic-arrow-right.png);
  width: 24px;
  height: 24px;
  right: 0;
  top: 4px;
}

.breadcrumb ul li:last-child:after {
  display: none;
}

.breadcrumb ul li a {
  color: #1fb25a;
}

.stay-wa {
  position: fixed;
  z-index: 99;
  right: 80px;
  bottom: 75px;
}

.stay-wa a {
  display: inline-block;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  font-size: 0;
  margin-left: 15px;
}

.stay-wa a.wa {
  background: #55CD6C url("../images/material/ico-wa.png") no-repeat center;
}

/* footer
----------------------------------------------------------------------------------------------*/
footer {
  border-top: 5px solid #dfc298;
  position: relative;
  z-index: 5;
  background: #fff;
}

footer .foot-top {
  border-top: 2px solid #79531d;
  height: 420px;
  object-fit: contain;
  padding: 69px 0 92px 0;
  background: url("../images/material/bg-foote-top.png") repeat-x 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

footer .foot-top .row .col {
  float: left;
}

footer .foot-top .row .col h3 {
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: 3.2px;
  text-align: left;
  color: #fff;
}

footer .foot-top .row .col ul {
  margin: 13px 0 0 0;
}

footer .foot-top .row .col ul li a {
  font-size: 16px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: left;
  color: #fff;
  padding: 6px 0;
  display: block;
}

footer .foot-top .row .col ul li a:hover {
  color: #c0f9d7;
}

footer .foot-top .row .col.contact-us a {
  font-size: 21px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: inherit;
  text-align: center;
  color: #fff;
  padding: 6px 0;
  display: block;
}

footer .foot-top .row .col.contact-us a:hover {
  color: #c0f9d7;
}

footer .foot-top .row .col.col-3 {
  width: 170px;
  padding-right: 58px;
}

footer .foot-top .row .col.col-2 {
  padding-right: 58px;
}

footer .foot-top .row .col.contact-us  {
  width: 330px;
  padding-right: 58px;
}

footer .foot-top .row .col.col-4 {
  float: right;
  width: 310px;
}

footer .foot-top .row .col.col-4 .row-search {
  margin-top: 20px;
  margin-bottom: 11px;
}

footer .foot-top .row .col.col-4 .row-search .field {
  height: 40px;
  background: #10532b;
  position: relative;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

footer .foot-top .row .col.col-4 .row-search .field ::-webkit-input-placeholder {
  color: #a9dcbe;
}

footer .foot-top .row .col.col-4 .row-search .field :-moz-placeholder {
  color: #a9dcbe;
}

footer .foot-top .row .col.col-4 .row-search .field ::-moz-placeholder {
  color: #a9dcbe;
}

footer .foot-top .row .col.col-4 .row-search .field :-ms-input-placeholder {
  color: #a9dcbe;
}

footer .foot-top .row .col.col-4 .row-search .field input[type="text"] {
  width: 100%;
  height: 100%;
  background: none;
  border: 0;
  padding: 0 75px 0 15px;
  line-height: 1.25;
  letter-spacing: normal;
  text-align: left;
  color: #a9dcbe;
  font-style: italic;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

footer .foot-top .row .col.col-4 .row-search .field input[type="submit"] {
  position: absolute;
  width: 65px;
  height: 100%;
  top: 0;
  right: 0;
  background: none;
  padding: 0 0 0 0;
  border: 0;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: left;
  color: #dfc298;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

footer .foot-top .row .col.col-4 .note {
  font-size: 12px;
  line-height: 1.25;
  text-align: left;
  color: #fff;
}

footer .foot-top .row .col.col-4 .box-socialmedia {
  margin-top: 20px;
}

footer .foot-top .row .col.col-4 .box-socialmedia a {
  float: left;
  width: 36px;
  height: 36px;
  text-indent: -999999px;
  margin: 0 20px 0 0;
}

footer .foot-top .row .col.col-4 .box-socialmedia a.sc-fb {
  background: url("../images/material/ico-fb.png") no-repeat center center;
}

footer .foot-top .row .col.col-4 .box-socialmedia a.sc-tw {
  background: url("../images/material/ico-tw.png") no-repeat center center;
}

footer .foot-top .row .col.col-4 .box-socialmedia a.sc-ig {
  background: url("../images/material/ico-ig.png") no-repeat center center;
}

footer .foot-top .row .col.col-4 .box-socialmedia a.sc-yt {
  background: url("../images/material/ico-yt.png") no-repeat center center;
}

footer .foot-top .row .col.col-4 .box-socialmedia a:last-child {
  margin-right: 0;
}

footer .foot-bottom {
  padding: 22px 0 21px 0;
}

footer .foot-bottom .other-nav {
  text-align: center;
  margin-bottom: 5px;
}

footer .foot-bottom .other-nav ul li {
  display: inline-block;
  margin: 0 -4px 0 0;
}

footer .foot-bottom .other-nav ul li a {
  font-size: 14px;
  line-height: 1.21;
  color: #666;
  padding: 0 7.5px;
}

footer .foot-bottom .other-nav ul li a:hover {
  color: #333;
}

footer .foot-bottom .copyright {
  text-align: center;
  font-size: 14px;
  line-height: 1.25;
  color: #999;
}

footer .foot-bottom .copyright a {
  color: #999;
}

footer .foot-bottom .copyright a:hover {
  color: #666;
}

.box-tracking .head-track {
  margin-bottom: 30px;
  padding: 12px 15px;
  background: #f5f5f5;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.box-tracking .head-track .kurir {
  float: left;
  background: #fff;
  margin-right: 24px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.box-tracking .head-track .box-order {
  float: left;
  margin-right: 17px;
  padding: 8px 0 0 0;
}

.box-tracking .head-track .box-order span {
  display: block;
}

.box-tracking .head-track .box-order span.small {
  color: #666;
  font-size: 12px;
  padding: 0 0 2px 0;
}

.box-tracking .head-track .box-order span.order-id {
  font-size: 20px;
  color: #333;
  font-weight: bold;
}

.box-tracking .head-track .btn-copy {
  float: left;
  color: #f4712e;
  font-size: 12px;
  display: inline-block;
  position: relative;
  padding: 0 0 0 20px;
  line-height: 16px;
  margin: 25px 0 0 0;
}

.box-tracking .head-track .btn-copy:before {
  position: absolute;
  width: 16px;
  height: 16px;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/ic-copy.png") no-repeat 0 0;
}

.box-tracking .row .track-list {
  padding: 0 0 17px 30px;
  margin: 0 0 17px 0;
  border-bottom: 1px dotted #d8d8d8;
  position: relative;
}

.box-tracking .row .track-list:before {
  position: absolute;
  width: 14px;
  height: 14px;
  border: 5px solid #dedede;
  content: "";
  left: 0;
  top: 10px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.box-tracking .row .track-list .time {
  font-size: 12px;
  color: #666;
  margin-bottom: 3px;
}

.box-tracking .row .track-list .txt {
  font-size: 16px;
  color: #111;
}

.box-tracking .row .track-list.current:before {
  border-color: #f4712e;
}

.box-tracking .row .track-list:last-child {
  border-bottom: 0;
  margin-bottom: 0;
}

.add-comment fieldset {
  border-bottom: 0;
  margin-bottom: 0;
}

.add-comment .list {
  position: relative;
  padding: 0 0 20px 93px;
  border-bottom: 1px dashed #d8d8d8;
  margin-bottom: 35px;
}

.add-comment .list .col.field-image {
  width: 80px;
  position: absolute;
  left: 0;
  top: 0;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.add-comment .list .col.field-descrip {
  width: 100%;
}

.add-comment .list .col.field-descrip p {
  margin: 0 0 0 0;
}

.add-comment .list .col.field-descrip .c-title {
  font-size: 16px;
  color: #111;
  margin-bottom: 3px;
}

.add-comment .list .box-rate {
  margin-bottom: 15px;
}

.add-comment .list:last-child {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}

.add-comment .button-area {
  padding-left: 93px;
}

.wrap_popup {
  display: none;
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999999;
  top: 0;
  left: 0;
  overflow-y: auto;
}

.wrap_popup .pop_inner {
  display: table;
  height: 100%;
  width: 100%;
  position: absolute;
}

.wrap_popup .pop_inner .middle_pop {
  display: table-cell;
  vertical-align: middle;
}

.wrap_popup .popup-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 15;
  left: 0;
  top: 0;
  margin: 0;
}

#boxPop {
  min-width: 630px;
  max-width: 630px;
  min-height: 200px;
  margin: 0 auto 50px auto;
  position: relative;
  z-index: 20;
  background: #fff;
  padding: 20px 25px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

#boxPop .close_pop {
  position: absolute;
  width: 16px;
  height: 16px;
  right: 25px;
  top: 25px;
  cursor: pointer;
  z-index: 5;
}

#boxPop .close_pop span {
  display: block;
  width: 24px;
  height: 2px;
  background: #f4712e;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -1px 0 0 -12px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}

#boxPop .close_pop span:last-child {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
}

#boxPop .content_pop {
  background: none;
  position: relative;
  font-size: 18px;
}

#boxPop .content_pop .if-video {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}

#boxPop .content_pop .if-video iframe {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}

#boxPop .content_pop img {
  width: auto;
  height: auto;
}

#boxPop .content_pop .img {
  text-align: center;
}

#boxPop .content_pop .img img {
  object-fit: contain;
  margin: auto;
}

#boxPop.train {
  min-width: 510px;
  max-width: 510px;
}

#boxPop .row-reg {
  padding: 0 65px;
  box-sizing: border-box;
}

#boxPop .row-reg .col.img, #boxPop .row-reg .col.text {
  width: 45%;
  margin: 0;
  padding: 0 15px;
  box-sizing: border-box;
}

#boxPop .row-reg p {
  color: #333333;
}

#boxPop .row-reg .red-text {
  color: #CB4646;
  font-size: 36px;
  line-height: 40px;
}

.pop-bonus #boxPop {
  padding: 45px 0;
  width: 970px;
  max-width: unset;
}

.pop-bonus #boxPop .headpop {
  padding: 0 70px;
}

.pop-bonus .cart-overview .table-cart {
  border: none;
}

.pop-bonus .cart-overview.history table thead th:first-child {
  padding-left: 25px;
  padding-right: 0;
}

.pop-bonus .cart-overview.history table thead th.w-product {
  width: 37%;
}

.pop-bonus .cart-overview.history table thead th.w-price {
  width: 21%;
}

.pop-bonus .cart-overview.history table thead th.w-subtotal {
  width: 14%;
}

.pop-bonus .cart-overview.history table tbody td .product-cart {
  width: 100%;
}

.pop-bonus .cart-overview .call {
  text-align: left;
}

.pop-bonus .cart-overview .center {
  text-align: center;
  margin-top: 20px;
}

.sc_content {
  z-index: 22;
  color: #bebebe;
}

.sc_content h3 {
  font-size: 16px;
  color: #333;
  margin-bottom: 18px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 19px;
}

.sc_content h5 {
  color: #333333;
  font-family: "Lato";
  font-size: 12px;
  line-height: 20px;
}

.sc_content .inner {
  padding: 0 0 0 0;
}

.wrap-left-right {
  margin-bottom: 20px;
}

.wrap-left-right h1 {
  float: left;
}

.wrap-left-right a {
  float: right;
  margin-top: 10px;
}

.wrap-left-right .right {
  width: 40%;
}

.wrap-left-right .right.add {
  width: auto;
  margin-right: 10px;
}

.wrap-left-right .right.add .col-select-date {
  width: auto;
}

.wrap-left-right .right.add select {
  width: 100%;
  padding-right: 30px;
}

.col-select-date {
  float: right;
  position: relative;
  margin-top: 10px;
}

.col-select-date:first-child {
  width: 70%;
  margin-right: 1.5%;
  float: left;
}

.col-select-date:first-child select {
  width: 40%;
}

.col-select-date select {
  background: url(../images/material/arr-drop-sm.png) no-repeat 95% center;
  border: 1px solid #D8D8D8;
  height: 35px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.col-select-date label {
  position: relative;
  font-size: 14px;
  color: #333333;
  float: left;
  line-height: 35px;
  width: 60%;
  padding-left: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.col-select-date label:before {
  content: '';
  background: url(../images/material/ic-calendar.png) no-repeat center;
  position: absolute;
  left: 15px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  width: 18px;
  height: 18px;
}

.sec-input-select-three {
  margin-bottom: 35px;
}

.sec-input-select-three .col-select {
  float: left;
  position: relative;
  border: 1px solid #D8D8D8;
  height: 50px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.sec-input-select-three .col-select:first-child {
  width: 48%;
  margin-right: 1.5%;
  float: left;
}

.sec-input-select-three .col-select:first-child select {
  width: 55%;
  border: none;
}

.sec-input-select-three .col-select:nth-child(2) {
  width: 18%;
  margin-right: 1.5%;
}

.sec-input-select-three .col-select:last-child {
  width: 30%;
}

.sec-input-select-three .col-select.date-range input[type='text'], .sec-input-select-three .col-select.date-range select {
  width: 27%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 50px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  font-size: 14px;
  color: #333;
  font-weight: bold;
}

.sec-input-select-three label {
  position: relative;
  font-size: 14px;
  color: #333333;
  float: left;
  line-height: 50px;
  width: 45%;
  padding-left: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.sec-input-select-three label:before {
  content: '';
  background: url(../images/material/ic-calendar.png) no-repeat center;
  position: absolute;
  left: 15px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  width: 18px;
  height: 18px;
}

.sec-input-select-three input[type='text'], .sec-input-select-three select {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 50px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  font-size: 14px;
  color: #333;
  border: none;
  font-weight: bold;
}

.sec-input-select-three select {
  background: url(../images/material/arr-drop-sm.png) no-repeat 95% center;
}

.list-info.history {
  margin-bottom: 20px;
}

.list-info.history .price {
  color: #666;
}

.list-info.history .price.md {
  font-size: 16px;
  color: #333;
}

.list-info.history table thead th {
  background: #999;
  color: #fff;
}

.list-info.history table thead th.w-product {
  width: 61%;
}

.list-info.history table thead th.w-price {
  width: 12%;
}

.list-info.history table thead th.w-qty {
  width: 15%;
}

.list-info.history table thead th.w-subtotal {
  width: 12%;
}

.list-info.history table tbody td .product-cart {
  width: 72%;
  display: inline-block;
  padding: 0 50px 0 0;
  min-height: 10px;
  -webkit-box-sizing: boder-box;
  -moz-box-sizing: boder-box;
  box-sizing: boder-box;
}

.list-info.history table tbody td.have-voucher a.voucher {
  width: 125px;
  position: absolute;
  top: 45%;
  right: 0;
  -webkit-box-sizing: boder-box;
  -moz-box-sizing: boder-box;
  box-sizing: boder-box;
  transform: translate(0, -45%);
  -webkit-transform: translate(0, -45%);
  -moz-transform: translate(0, -45%);
  -ms-transform: translate(0, -45%);
  -o-transform: translate(0, -45%);
}

.list-info.history table tbody tr.tr-child .product-cart {
  color: #666;
}

.list-info.history table tfoot .price {
  color: #cb4646;
}

.list-info.history table tfoot tr:last-child {
  /*td {background:#eaeaea;}  */
}

.list-info .table-cart {
  border: 1px solid #eaeaea;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}

.list-info .product-cart {
  color: #333;
  display: block;
  min-height: 56px;
}

.list-info .product-cart.green-text span {
  color: #1FB25A;
  font-weight: bold;
}

.list-info .product-cart .product-md {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  width: 20%;
  height: 56px;
  border: 1px solid #eaeaea;
  margin-right: -4px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  -o-border-radius: 2px;
}

.list-info .product-cart .product-md figure {
  padding: 5px;
  position: relative;
  width: 100%;
  height: 100%;
  position: absolute;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.list-info .product-cart .product-md figure img {
  height: 100%;
}

.list-info .product-cart .product-title {
  display: inline-block;
  vertical-align: middle;
  padding: 0 0 0 16px;
  font-size: 16px;
  width: 79.8%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.list-info .btn-remove {
  display: inline-block;
  position: relative;
  padding: 0 0 0 20px;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 2.86;
  letter-spacing: normal;
  text-align: left;
  color: #999;
}

.list-info .btn-remove:before {
  position: absolute;
  width: 12px;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  background: url("../images/material/ico-remove.png") no-repeat center center;
}

.list-info table {
  width: 100%;
}

.list-info table thead th {
  background: #eaeaea;
  padding: 26px 9px;
  font-size: 16px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.list-info table thead th:first-child {
  padding-left: 28px;
  padding-right: 0;
}

.list-info table thead th:last-child {
  padding-right: 28px;
}

.list-info table thead th.w-check {
  width: 3%;
  line-height: 14px;
}

.list-info table thead th.w-product {
  width: 34%;
  text-align: left;
}

.list-info table thead th.w-price {
  width: 17%;
  text-align: right;
}

.list-info table thead th.w-qty {
  width: 21%;
}

.list-info table thead th.w-subtotal {
  width: 11%;
  text-align: right;
}

.list-info table thead th.w-action {
  width: 8%;
}

.list-info table tbody tr td {
  padding: 19px 16px;
  border-bottom: 1px solid #eaeaea;
  position: relative;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.list-info table tbody tr td:first-child {
  padding-left: 20px;
  padding-right: 0;
}

.list-info table tbody tr td:last-child {
  padding-right: 28px;
}

.list-info table tbody tr td.td-check {
  line-height: 14px;
}

.list-info table tbody tr td.td-product {
  text-align: left;
  padding-right: 35px;
}

.list-info table tbody tr td.td-price {
  text-align: right;
}

.list-info table tbody tr td.td-subtotal {
  text-align: right;
}

.list-info table tbody .note {
  font-size: 14px;
  margin: 5px 0;
  font-style: italic;
  color: #999;
}

.list-info table tfoot tr td {
  padding: 19px 16px;
  vertical-align: middle;
  font-size: 14px;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.21;
  letter-spacing: normal;
  text-align: center;
  color: #666;
}

.list-info table tfoot tr td .txt-total {
  position: absolute;
  width: 100%;
  top: 8px;
  left: -100%;
  padding-right: 95px;
  margin-left: -80px;
}

.list-info table tfoot tr td:first-child {
  padding-left: 28px;
  padding-right: 0;
}

.list-info table tfoot tr td:last-child {
  padding-right: 28px;
}

.list-info table tfoot tr td.tf-check {
  line-height: 14px;
}

.list-info table tfoot tr td.tf-product {
  text-align: left;
  padding-right: 35px;
  font-size: 16px;
}

.list-info table tfoot tr td.tf-subtotal {
  text-align: right;
}

.list-info table tfoot tr td.tf-total-price {
  text-align: right;
  vertical-align: middle;
}

.list-info table tfoot tr td .total {
  display: inline-block;
  vertical-align: middle;
  padding-right: 55px;
  position: relative;
}

.list-info table tfoot tr:last-child td {
  border-bottom: 0;
}

.list-info .table-cart {
  margin-bottom: 40px;
  overflow-x: auto;
}

.list-info table thead tr th:first-child {
  text-align: left;
}

.list-info table thead tr th:last-child {
  text-align: right;
}

.list-info table tbody tr td:first-child {
  text-align: left;
}

.list-info table tbody tr td:last-child {
  text-align: right;
}

.list-info table tbody tr td a {
  position: relative;
}

.list-info table tbody tr td a .ico-download-orange {
  position: absolute;
  background: url(../images/material/ico-download-orange.png) no-repeat;
  width: 20px;
  height: 20px;
}

.list-info table tfoot tr:last-child td {
  background: #1FB25A;
  color: #fff;
  font-weight: bold;
}

.list-info table tfoot tr:last-child td:first-child {
  text-align: left;
}

.list-info table tfoot tr:last-child td:last-child {
  text-align: right;
}


div.tracking-text {
    margin: 0;
    padding: 0;
    list-style-type none;
}

div.tracking-text li {
    display: inline-block;
    text-align: center;
    line-height: 3.5em;
}

div.tracking-text[data-tracking-text-steps="5"] li { width: 19%; }

div.tracking-bar {
    margin: 0;
    padding: 0;
    list-style-type none;
}

div.tracking-bar li {
    display: inline-block;
    text-align: center;
    line-height: 3.5em;
}

div.tracking-bar[data-tracking-bar-steps="2"] li { width: 49%; }
div.tracking-bar[data-tracking-bar-steps="3"] li { width: 33%; }
div.tracking-bar[data-tracking-bar-steps="4"] li { width: 24%; }
div.tracking-bar[data-tracking-bar-steps="5"] li { width: 19%; }
div.tracking-bar[data-tracking-bar-steps="6"] li { width: 16%; }
div.tracking-bar[data-tracking-bar-steps="7"] li { width: 14%; }
div.tracking-bar[data-tracking-bar-steps="8"] li { width: 12%; }
div.tracking-bar[data-tracking-bar-steps="9"] li { width: 11%; }

div.tracking-bar li.tracking-bar-done {
    color: black;
    border-bottom: 4px solid #1fb25a;
}
div.tracking-bar li.tracking-bar-todo {
    color: silver; 
    border-bottom: 4px solid silver;
}

div.tracking-bar li:after {
    content: "\00a0\00a0";
}
div.tracking-bar li:before {
    position: relative;
    bottom: -2.5em;
    float: left;
    left: 50%;
    line-height: 1em;
}
div.tracking-bar li.tracking-bar-done:before {
    content: "\2713";
    color: white;
    background-color: #1fb25a;
    height: 2.2em;
    width: 2.2em;
    line-height: 2.2em;
    border: none;
    border-radius: 2.2em;
}
div.tracking-bar li.tracking-bar-todo:before {
    content: "\039F";
    color: silver;
    background-color: white;
    font-size: 2.2em;
    bottom: -1.2em;
}

.product-list .row .col.redeem{
  float: left;
  text-align: left;
  position: relative;
  width: 360px;
  margin: 0 30px 50px 0;
  padding: 1px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;

  box-shadow: 0px 0px 4px 0px #a1a0a0;
  -webkit-box-shadow: 0px 0px 4px 0px #a1a0a0;
  -moz-box-shadow: 0px 0px 4px 0px #a1a0a0;
  -ms-box-shadow: 0px 0px 4px 0px #a1a0a0;
  -o-box-shadow: 0px 0px 4px 0px #a1a0a0;
}


.cart-overview .product-cart .product-title.redeem {
  display: inline-block;
  vertical-align: middle;
  padding: 0 0 0 16px;
  font-size: 13px;
  width: 75.8%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.product-list .row .col .des-tiramart-point {
  font-size: 12px;
  line-height: 14px;
  color: #707070;
  margin-bottom:10px;
}

.product-list .row .col:hover figure img.img-redeem-tiramart-point {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
}


/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwic2Fzcy1saWIuc2NzcyIsImJvdXJib24vX2JvdXJib24uc2NzcyIsImJvdXJib24vc2V0dGluZ3MvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL3NldHRpbmdzL19weC10by1lbS5zY3NzIiwiYm91cmJvbi9zZXR0aW5ncy9fYXNzZXQtcGlwZWxpbmUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19hc3NpZ24taW5wdXRzLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fY29udGFpbnMuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19jb250YWlucy1mYWxzeS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxlbmd0aC5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxpZ2h0LnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtbnVtYmVyLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9faXMtc2l6ZS5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3B4LXRvLWVtLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fcHgtdG8tcmVtLnNjc3MiLCJib3VyYm9uL2Z1bmN0aW9ucy9fc2hhZGUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19zdHJpcC11bml0cy5zY3NzIiwiYm91cmJvbi9mdW5jdGlvbnMvX3RpbnQuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL190cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUuc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL191bnBhY2suc2NzcyIsImJvdXJib24vZnVuY3Rpb25zL19tb2R1bGFyLXNjYWxlLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2NvbnZlcnQtdW5pdHMuc2NzcyIsImJvdXJib24vaGVscGVycy9fZGlyZWN0aW9uYWwtdmFsdWVzLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fbGluZWFyLWFuZ2xlLXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19saW5lYXItZ3JhZGllbnQtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLWFyZy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fcmFkaWFsLWdyYWRpZW50LXBhcnNlci5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL19yZW5kZXItZ3JhZGllbnRzLnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX3NoYXBlLXNpemUtc3RyaXBwZXIuc2NzcyIsImJvdXJib24vaGVscGVycy9fc3RyLXRvLW51bS5zY3NzIiwiYm91cmJvbi9jc3MzL19hbmltYXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fYXBwZWFyYW5jZS5zY3NzIiwiYm91cmJvbi9jc3MzL19iYWNrZmFjZS12aXNpYmlsaXR5LnNjc3MiLCJib3VyYm9uL2NzczMvX2JhY2tncm91bmQuc2NzcyIsImJvdXJib24vY3NzMy9fYmFja2dyb3VuZC1pbWFnZS5zY3NzIiwiYm91cmJvbi9jc3MzL19ib3JkZXItaW1hZ2Uuc2NzcyIsImJvdXJib24vY3NzMy9fY2FsYy5zY3NzIiwiYm91cmJvbi9jc3MzL19jb2x1bW5zLnNjc3MiLCJib3VyYm9uL2NzczMvX2ZpbHRlci5zY3NzIiwiYm91cmJvbi9jc3MzL19mbGV4LWJveC5zY3NzIiwiYm91cmJvbi9jc3MzL19mb250LWZhY2Uuc2NzcyIsImJvdXJib24vY3NzMy9fZm9udC1mZWF0dXJlLXNldHRpbmdzLnNjc3MiLCJib3VyYm9uL2NzczMvX2hpZHBpLW1lZGlhLXF1ZXJ5LnNjc3MiLCJib3VyYm9uL2NzczMvX2h5cGhlbnMuc2NzcyIsImJvdXJib24vY3NzMy9faW1hZ2UtcmVuZGVyaW5nLnNjc3MiLCJib3VyYm9uL2NzczMvX2tleWZyYW1lcy5zY3NzIiwiYm91cmJvbi9jc3MzL19saW5lYXItZ3JhZGllbnQuc2NzcyIsImJvdXJib24vY3NzMy9fcGVyc3BlY3RpdmUuc2NzcyIsImJvdXJib24vY3NzMy9fcGxhY2Vob2xkZXIuc2NzcyIsImJvdXJib24vY3NzMy9fcmFkaWFsLWdyYWRpZW50LnNjc3MiLCJib3VyYm9uL2NzczMvX3NlbGVjdGlvbi5zY3NzIiwiYm91cmJvbi9jc3MzL190ZXh0LWRlY29yYXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fdHJhbnNmb3JtLnNjc3MiLCJib3VyYm9uL2NzczMvX3RyYW5zaXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fdXNlci1zZWxlY3Quc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItY29sb3Iuc2NzcyIsImJvdXJib24vYWRkb25zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXN0eWxlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXdpZHRoLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fYnV0dG9ucy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2NsZWFyZml4LnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fZWxsaXBzaXMuc2NzcyIsImJvdXJib24vYWRkb25zL19mb250LXN0YWNrcy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX2hpZGUtdGV4dC5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX21hcmdpbi5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3BhZGRpbmcuc2NzcyIsImJvdXJib24vYWRkb25zL19wb3NpdGlvbi5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fcmV0aW5hLWltYWdlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fc2l6ZS5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3RleHQtaW5wdXRzLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fdGltaW5nLWZ1bmN0aW9ucy5zY3NzIiwiYm91cmJvbi9hZGRvbnMvX3RyaWFuZ2xlLnNjc3MiLCJib3VyYm9uL2FkZG9ucy9fd29yZC13cmFwLnNjc3MiLCJib3VyYm9uL19ib3VyYm9uLWRlcHJlY2F0ZWQtdXBjb21pbmcuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVx0XHJcbiAgICBDb21wYW55ICAgIDogUFQgV2ViIEFyY2hpdGVjdCBUZWNobm9sb2d5IC0gd2ViYXJxLmNvbVxyXG4gICAgRG9jdW1lbnQgICA6IFN0eWxlc2hlZXRcclxuICAgIEF1dGhvciAgICAgOiBBbmRyaSBTYW1zdXJpXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5AaW1wb3J0IFwic2Fzcy1saWJcIjtcclxuXHJcbmJvZHkgeyAgXHJcbiAgICBjb2xvcjogIzMzMztcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgc2Fucy1zZXJpZjsgIFxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgdGV4dC1zaXplLWFkanVzdDoxMDAlO1xyXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7XHJcbn1cclxuYm9keS5sb2NrIHtvdmVyZmxvdy15OiBoaWRkZW47fSBcclxuZmlndXJle1xyXG4gICAgbWFyZ2luOiAwOyBwYWRkaW5nOiAwO1xyXG4gICAgaW1ne3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7fVxyXG59XHJcbmltZ3sgYm9yZGVyOjA7IG1heC13aWR0aDoxMDAlOyBoZWlnaHQ6YXV0bzsgfVxyXG5wIHtcclxuICAgIG1hcmdpbjogMXB4IDAgMTVweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG59XHJcbmlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0IHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6ICM2NjY7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiO1xyXG59XHJcbmlucHV0W3R5cGU9Y2hlY2tib3hdLCBpbnB1dFt0eXBlPXJhZGlvXSB7XHJcbiAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xyXG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcclxuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBub25lO1xyXG59XHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sIFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uICB7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgb3BhY2l0eTogMDtcclxufVxyXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXHJcbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuaDEgeyBmb250LXNpemU6IDMycHg7IH1cclxuaDIgeyBmb250LXNpemU6IDI4cHg7IH1cclxuaDMgeyBmb250LXNpemU6IDI0cHg7IH1cclxuaDQgeyBmb250LXNpemU6IDIwcHg7IH0gXHJcbmg1IHsgZm9udC1zaXplOiAxNnB4OyB9IFxyXG5oNiB7IGZvbnQtc2l6ZTogMTRweDsgfVxyXG5cclxuLmhlYWRpbmctbGcgeyBcclxuICAgIGZvbnQtc2l6ZTogMzZweDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMTE7IFxyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgY29sb3I6ICM3OTUzMWQ7IG1hcmdpbi1ib3R0b206IDMwcHg7IFxyXG4gICAgLm5vdGUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAxMHB4IDAgMCAwOyAgIFxyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS43MTtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM5OTk7IFxyXG4gICAgfSBcclxuICAgICYuZ3JleSB7Y29sb3I6ICM5OTk7fSBcclxuICAgICYuY2VudGVyIHt0ZXh0LWFsaWduOiBjZW50ZXI7fVxyXG4gICAgJi5ibGFjayB7Y29sb3I6ICMxMTE7fSBcclxuICAgICYuc20tYm90dG9tIHttYXJnaW4tYm90dG9tOiAxMHB4O31cclxufVxyXG4uaGVhZGluZy1tZCB7XHJcbiAgICBmb250LXNpemU6IDI0cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgY29sb3I6ICM3OTUzMWQ7IG1hcmdpbi1ib3R0b206IDIwcHg7ICBcclxuICAgICYuYmxhY2sge2NvbG9yOiAjMzMzO30gXHJcbiAgICAmLmNlbnRlciB7dGV4dC1hbGlnbjogY2VudGVyO31cclxuICAgICYuaGFzLWJuIHtwYWRkaW5nLXJpZ2h0OiAxMDBweDt9XHJcbiAgICAmLnNtLWJvdHRvbSB7bWFyZ2luLWJvdHRvbTogMTBweDt9IFxyXG4gICAgLmJ0bi1zaG9wLWFnYWluIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzc5NTMxZDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDVweDtcclxuICAgICAgICByaWdodDogMDsgcGFkZGluZy1yaWdodDogMjhweDtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxOXB4OyBoZWlnaHQ6IDE1cHg7IGNvbnRlbnQ6IFwiXCI7IHRvcDogMDsgcmlnaHQ6IDA7ICBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWFyci1sZW5naHQucG5nJykgbm8tcmVwZWF0IDAgMDtcclxuICAgICAgICB9IFxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5oZWFkaW5nLXNtIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMjI7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBjb2xvcjogIzFmYjI1YTsgbWFyZ2luLWJvdHRvbTogMjBweDsgIFxyXG4gICAgJi5jZW50ZXIge3RleHQtYWxpZ246IGNlbnRlcjt9XHJcbiAgICAmLmJsYWNrIHtjb2xvcjogIzMzMzt9ICAgIFxyXG4gICAgJi5zbS1ib3R0b20ge21hcmdpbi1ib3R0b206IDEwcHg7fVxyXG59XHJcbi5oZWFkaW5nLXhzbSB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjE5O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgY29sb3I6ICM2NjY7IG1hcmdpbi1ib3R0b206IDE1cHg7ICBcclxuICAgICYubWQge2ZvbnQtc2l6ZTogMTRweDsgbWFyZ2luLWJvdHRvbTogNXB4O31cclxuICAgICYuY2VudGVyIHt0ZXh0LWFsaWduOiBjZW50ZXI7fVxyXG4gICAgJi5ibGFjayB7Y29sb3I6ICMzMzM7fSBcclxuICAgICYuZ3JlZW4ge2NvbG9yOiAjMWZiMjVhO30gXHJcbiAgICAmLnNtLWJvdHRvbSB7bWFyZ2luLWJvdHRvbTogMTBweDt9XHJcbn1cclxuLmhlYWRpbmcteHhzbSB7XHJcbiAgICBmb250LXNpemU6IDEycHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIyO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgY29sb3I6ICM5OTk7IG1hcmdpbi1ib3R0b206IDEwcHg7ICBcclxuICAgICYuY2VudGVyIHt0ZXh0LWFsaWduOiBjZW50ZXI7fVxyXG59XHJcblxyXG5hIHtAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMTVzIGVhc2UtaW4tb3V0KTt9IFxyXG5cclxuLmFmdGVyX2NsZWFye2NvbnRlbnQ6XCJcIjtjbGVhcjogYm90aDtkaXNwbGF5OiBibG9jazt9IFxyXG4uYWZ0ZXJfY2xlYXI6YWZ0ZXIsLndyYXBwZXI6YWZ0ZXIsc2VjdGlvbjphZnRlcntjbGVhcjpib3RoO2Rpc3BsYXk6IGJsb2NrO2NvbnRlbnQ6XCIgXCJ9IFxyXG4uZmxleC1saXN0IHtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC1mbGV4LWZsb3c6cm93IHdyYXA7fSAgXHJcblxyXG5cclxuLmhvbWVwYWdlIHtcclxuICAgIC5taWRkbGUge3BhZGRpbmctdG9wOiAwO30gXHJcbn1cclxuXHJcbmJvZHkuY21zIHtcclxuICAgIGgxIHtcclxuICAgICAgICBmb250LXNpemU6IDM2cHg7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjExOyBcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBjb2xvcjogIzc5NTMxZDsgbWFyZ2luLWJvdHRvbTogMzBweDsgXHJcbiAgICB9XHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yMTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBjb2xvcjogIzc5NTMxZDsgbWFyZ2luLWJvdHRvbTogMjBweDsgICAgICAgICAgXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLyogc3RydWN0dXJlIFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuc2VjdGlvbiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxyXG4ud3JhcHBlciB7XHJcbiAgICB3aWR0aDogMTE3MHB4O21hcmdpbjogMCBhdXRvOyBwb3NpdGlvbjogcmVsYXRpdmU7ICAgXHJcbiAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7ICBcclxuICAgICYuaW5uZXIge3BhZGRpbmc6IDAgMTAwcHg7fSAgIFxyXG4gICAgJi5pbm5lci0yIHtwYWRkaW5nOiAwIDcwcHggMCA3MHB4O30gICBcclxufVxyXG5cclxuLmJ0biB7XHJcbiAgICBoZWlnaHQ6IDUwcHg7IGxpbmUtaGVpZ2h0OiA1MHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmc6IDAgMzBweDsgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgY29sb3I6ICNmZmY7IGZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgYm9yZGVyOiAwOyAgICBcclxuICAgIGJhY2tncm91bmQ6ICMxZmIyNWE7IGN1cnNvcjogcG9pbnRlcjsgXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDM7XHJcbiAgICAgICAgJi5pY28tZG93bmxvYWR7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY28tZG93bmxvYWQucG5nKSBuby1yZXBlYXQ7IGxlZnQ6IDEwcHg7IHRvcDogMTBweDsgfVxyXG4gICAgfSBcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4xOHMgZWFzZS1pbi1vdXQpOyAgXHJcbiAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTsgICAgXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiMxMWE3NGQ7IFxyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG4gICAgJi5idG4tbGluZSB7IFxyXG4gICAgICAgIGJvcmRlcjoycHggc29saWQgI2ZmZjsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgIFxyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NnB4OyBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDA7IHRvcDogMDsgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7IG9wYWNpdHk6IDA7IHotaW5kZXg6IDE7ICAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuOTgsIDAuODUpKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTsgXHJcbiAgICAgICAgfSBcclxuICAgICAgICAmOmhvdmVyIHsgXHJcbiAgICAgICAgICAgIGNvbG9yOiAjMTFhNzRkO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOyAgIFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEsIDEpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYnRuLWxpbmUtMiB7XHJcbiAgICAgICAgYm9yZGVyOjJweCBzb2xpZCAjZjQ3MTJlOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogI2Y0NzEyZTsgICBcclxuICAgICAgICBsaW5lLWhlaWdodDogNDZweDsgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtcclxuICAgICAgICAmOmhvdmVyIHsgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I2Y0NzEyZTsgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5idG4tbGluZS1vcmFuZ2Uge1xyXG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgI2Y0NzEyZTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6ICNmNDcxMmU7ICAgXHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7IGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7XHJcbiAgICAgICAgJjpob3ZlciB7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNmNDcxMmU7IGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYnRuLWdyZWVuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMWZiMjVhOyBcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDojMTFhNzRkOyBjb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmJ0bi1ncmVlbi1saW5lIHtcclxuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICMxZmIyNWE7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiAjMWZiMjVhOyAgIFxyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NnB4OyBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpO1xyXG4gICAgICAgICY6aG92ZXIgeyBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDojMWZiMjVhOyBjb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmJ0bi1vcmFuZ2Uge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNDcxMmU7IFxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNlZjY4MjQ7IGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYnRuLWJyb3duIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjNzk1MzFkOyBwYWRkaW5nOiAwIDE4cHg7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6Izg4NTkxNzsgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5idG4tZ3JleSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDojY2NjOyBjb2xvcjogI2ZmZjtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDojYzBjMGMwOyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmJ0bi1ncmV5LWxpbmUge1xyXG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgI2NjYzsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6ICM2NjY2NjY7ICAgXHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7IGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7XHJcbiAgICAgICAgJjpob3ZlciB7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNjY2M7IGNvbG9yOiAjNjY2NjY2O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYnRuLWxhcmdlIHtwYWRkaW5nOiAwIDYzcHg7fSBcclxuICAgICYuYnRuLW1kLWxnIHtwYWRkaW5nOiAwIDQzcHg7fSBcclxuICAgICYuYnRuLW1kMiB7cGFkZGluZzogMCAyNXB4O30gXHJcbiAgICAmLmJ0bi1zaGFkb3cge1xyXG4gICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygwIDNweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpKTsgIFxyXG4gICAgfSBcclxuICAgICYuYWJzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHotaW5kZXg6IDU7IFxyXG4gICAgICAgICYuYWJzLXJpZ2h0IHtyaWdodDogMDsgdG9wOiA1MCU7IEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwtNTAlKSl9ICAgIFxyXG4gICAgfVxyXG4gICAgJi5uby1yYWRpdXMge0BpbmNsdWRlIGJvcmRlclJhZGl1cygwKTt9XHJcbiAgICAmLnNtLXJhZGl1cyB7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7fVxyXG4gICAgJi5sZW5ndGgge3BhZGRpbmc6IDAgOTBweDt9XHJcbiAgICAmLmJ0bi1tZCB7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4OyBsaW5lLWhlaWdodDogNDBweDsgZm9udC1zaXplOiAxNHB4OyBwYWRkaW5nOiAwIDE0cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgfVxyXG4gICAgJi5idG4tc20ge1xyXG4gICAgICAgIGhlaWdodDogMzZweDsgbGluZS1oZWlnaHQ6IDM2cHg7IGZvbnQtc2l6ZTogMTJweDsgcGFkZGluZzogMCAxNHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpOyBcclxuICAgIH1cclxuICAgICYuYnRuLXhzbSB7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4OyBsaW5lLWhlaWdodDogMzBweDsgZm9udC1zaXplOiAxMnB4OyBwYWRkaW5nOiAwIDE0cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgfVxyXG4gICAgJi5mb250LW1kIHtmb250LXNpemU6IDE0cHg7fSBcclxuICAgICYuZm9udC1zbSB7Zm9udC1zaXplOiAxMnB4O30gXHJcbiAgICAmLmJ0bi1mdWxsIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiA2MHB4OyBsaW5lLWhlaWdodDogNjBweDsgd2lkdGg6IDEwMCU7IFxyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgYm9yZGVyOjA7ICBcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTsgXHJcbiAgICB9XHJcbiAgICAmLmJ0bi1pY297IHBhZGRpbmctbGVmdDogNDBweDsgfVxyXG59IFxyXG4uYnRuLXRleHQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb2xvcjogIzFmYjI1YTsgbGluZS1oZWlnaHQ6IDEuMjU7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiMxNDlmNGM7IFxyXG4gICAgfVxyXG4gICAgJi5lZGl0IHtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgcGFkZGluZzogMCAwIDAgMThweDsgbWFyZ2luLXJpZ2h0OiAzMnB4O1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDE1cHg7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDA7IHRvcDogMDsgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1lZGl0LnBuZycpIG5vLXJlcGVhdCAwIDA7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYucGxhY2Uge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyBwYWRkaW5nOiAwIDAgMCAxOHB4OyBcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTVweDsgaGVpZ2h0OiAxNXB4OyBjb250ZW50OiBcIlwiOyBsZWZ0OiAwOyB0b3A6IDA7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tbWFwLnBuZycpIG5vLXJlcGVhdCAwIDA7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYudm91Y2hlciB7IFxyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyBwYWRkaW5nOiAwIDAgMCAyNXB4OyBjb2xvcjogI2NiNDY0NjsgXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDE5cHg7IGhlaWdodDogMTVweDsgY29udGVudDogXCJcIjsgbGVmdDogMDsgdG9wOiAycHg7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tbm90ZXMucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7ICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJ0bi1iYWNrIHsgXHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogMCAwIDAgMjhweDsgY29sb3I6ICM3OTUzMWQ7ICAgXHJcbiAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjE7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxOXB4OyBoZWlnaHQ6IDE1cHg7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDA7IHRvcDogMXB4OyBcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY29uZmluZGVyLWFycm93LXByZXYucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxOXB4IDE1cHg7IFxyXG4gICAgfVxyXG4gICAgJi5zcGFjZS1ib3R0b20ge21hcmdpbi1ib3R0b206IDIwcHg7fSAgIFxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMC44OyBjb2xvcjogIzc5NTMxZDsgIFxyXG4gICAgfVxyXG59XHJcblxyXG4ud3JwLWJ0biB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgJi5jZW50ZXIge3RleHQtYWxpZ246IGNlbnRlcjt9XHJcbiAgICAuYnRuIHttaW4td2lkdGg6IDE1MHB4OyBoZWlnaHQ6IDMycHg7IGxpbmUtaGVpZ2h0OiAzMnB4O31cclxufVxyXG4uYm94LXZvdWNoZXIge1xyXG4gICAgbWF4LWhlaWdodDogNTEwcHg7IG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4uc2VsZWN0Ym94IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWluLXdpZHRoOiAxNDBweDsgaGVpZ2h0OiAzMHB4OyBsaW5lLWhlaWdodDogMzBweDsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyOjFweCBzb2xpZCAjY2NjOyBcclxuICAgIEBpbmNsdWRlIGJveFNoYWRvdygwIDAgMXB4ICNjY2MgaW5zZXQpO1xyXG4gICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7IGNvbnRlbnQ6IFwiXCI7IHJpZ2h0OiA3cHg7IHRvcDogNTAlOyB6LWluZGV4OiAyOyBcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9hcnItZHJvcC1zbS5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7IFxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwtNTAlKSk7ICAgXHJcbiAgICB9XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGxpbmUtaGVpZ2h0OiAxMDAlOyBwYWRkaW5nOiAwIDIwcHggMCA5cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMztcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IGJvcmRlcjogMDtcclxuICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpOyBcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KDBweCAwcHggNXB4IDBweCByZ2JhKDMxLCAxNzgsIDkyLCAwLjgpKTsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5tZCB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxODBweDsgXHJcbiAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYudjIge1xyXG4gICAgICAgIGhlaWdodDogNTBweDsgbGluZS1oZWlnaHQ6IDUwcHg7IG1pbi13aWR0aDogMTAwJTsgXHJcbiAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4OyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjOTk5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qIGhlYWRlclxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuaGVhZGVyIHtcclxuICAgIGhlaWdodDogODBweDsgYmFja2dyb3VuZDogI2ZmZjsgcG9zaXRpb246IGZpeGVkOyB3aWR0aDogMTAwJTsgdG9wOiAwOyBsZWZ0OiAwOyB6LWluZGV4OiA4Nzg3OyAgICBcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMWZiMjVhOyAgXHJcbiAgICAud3JhcHBlciB7aGVpZ2h0OiAxMDAlO31cclxuICAgIC5idXJnZXItbWVudSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA2MHB4OyBoZWlnaHQ6IDYwcHg7IGJhY2tncm91bmQ6ICMxZmIyNWE7IGN1cnNvcjogcG9pbnRlcjsgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogbm9uZTsgXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDE4cHg7IGhlaWdodDogM3B4OyBiYWNrZ3JvdW5kOiAjZmZmOyBsZWZ0OiAyMnB4OyAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpOyBcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7dG9wOiAyMHB4O31cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7dG9wOiAyNnB4O31cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7dG9wOiAzMnB4O30gXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxvZ28ge2Zsb2F0OiBsZWZ0OyBtYXJnaW46IDE3cHggMCAwIDA7IHdpZHRoOiAyMDBweDsgaGVpZ2h0OiA0N3B4O30gXHJcbiAgICAuaGVhZC1vcmRlcntcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IGZsb2F0OiBsZWZ0OyBtYXJnaW46IDE3cHggMCAwIDA7IHdpZHRoOiA1MDBweDsgaGVpZ2h0OiA0N3B4O1xyXG4gICAgICAgIC5iYWNre1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7aGVpZ2h0OiA4MHB4OyAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkeyBcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7IHdpZHRoOiA4MHB4OyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1iYWNrLnBuZykgbm8tcmVwZWF0IGNlbnRlcjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IC0xN3B4OyBsZWZ0OiAwOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7IGNvbnRlbnQ6XCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTgpOyAgYm9yZGVyLXRvcDogMDsgYm9yZGVyLWJvdHRvbTogMDsgaGVpZ2h0OiAxMDAlOyB3aWR0aDogMTAwJTsgb3BhY2l0eTogMC41ODsgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkeyBcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOiAtMTdweDsgbGVmdDogMDsgZm9udC1zaXplOiAxMnB4OyBsaW5lLWhlaWdodDogMTVweDsgY29sb3I6ICNmZmY7IG9wYWNpdHk6IDAuNTI7IGhlaWdodDogODBweDsgd2lkdGg6IDgwcHg7IHBhZGRpbmc6IDU1cHggMzBweDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1vcmRlcnsgXHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMTAwcHg7IHBhZGRpbmctdG9wOiA1cHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IFxyXG4gICAgICAgICAgICBoNXsgZm9udC1zaXplOiAxMnB4OyBsaW5lLWhlaWdodDogMTVweDsgb3BhY2l0eTogMC41MjsgfVxyXG4gICAgICAgICAgICBoNHsgZm9udC1zaXplOiAxOHB4OyBsaW5lLWhlaWdodDogMjJweDsgIH1cclxuICAgICAgICAgICAgaDN7IGZvbnQtc2l6ZTogMjRweDsgbGluZS1oZWlnaHQ6IDM1cHg7IGZvbnQtd2VpZ2h0OiBib2xkOyAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5yaWdodCB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyBwYWRkaW5nOiAxN3B4IDAgMCAwOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAjYWNjb3JkaWFuLCNhY2NvcmRpYW4yIHsgXHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoMyB7ICBcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGEgeyBwYWRkaW5nOiAwIDEwcHg7IGZvbnQtc2l6ZTogMTZweDsgbGluZS1oZWlnaHQ6IDI4cHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBkaXNwbGF5OiBibG9jazsgY29sb3I6ICNmZmY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgcGFkZGluZy1yaWdodDogMzBweDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVse1xyXG4gICAgICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyBtYXJnaW46IDA7IGNvbG9yOiAjZjAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxpIHsgbGlzdC1zdHlsZS10eXBlOiBub25lOyBtYXJnaW46IDA7IH1cclxuICAgICAgICAgICAgLmhhdmUtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICBoMyBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyeyBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC0xODBkZWcpKTsgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjE1cyBlYXNlLWluLW91dCk7IH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBoMyBhIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyeyBjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxOHB4OyBoZWlnaHQ6IDE4cHg7IGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWFyci1jaXJjLnBuZyk7cmlnaHQ6IDBweDsgdG9wOiAxNXB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgwZGVnKSk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMTVzIGVhc2UtaW4tb3V0KTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiB1bCB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgLmNhcnQtb3ZlcnZpZXd7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogODFweDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IFxyXG4gICAgICAgICAgICAgICAgLnRhYmxlLWNhcnR7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsgbWF4LWhlaWdodDogNTQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDApO1xyXG4gICAgICAgICAgICAgICAgICAgIHRhYmxle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0Ym9keXsgYmFja2dyb3VuZDogI2ZmZjsgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuYXJpc2Fue1xyXG4gICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LWNhcnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LW1keyB3aWR0aDogMTklOyBoZWlnaHQ6IDQ1cHg7IH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmNvbC1zZWxlY3R7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHsgcGFkZGluZy1yaWdodDogMjBweDsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnItZHJvcC1zbS5wbmcpbm8tcmVwZWF0IDk1JSBjZW50ZXI7IH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubGVmdC1oZWFkIHtcclxuICAgICAgICBmbG9hdDogbGVmdDsgcGFkZGluZzogMTdweCAwIDAgNDVweDsgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgIH1cclxuICAgIC5uYXYge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyBtYXJnaW46IDAgMTBweCAwIDA7IFxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW46IDAgMTBweCAwIDEwcHg7ICBcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAxNXB4IDAgMzJweCAwOyBmb250LXNpemU6IDE0cHg7IGxpbmUtaGVpZ2h0OiAxLjIxOyBcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzExMTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgZm9udC13ZWlnaHQ6IGJvbGQ7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMDsgaGVpZ2h0OiAzcHg7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6NTAlOyByaWdodDogMDsgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMWZiMjVhO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIDApKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjE4cyBlYXNlLWluLW91dCk7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiMxZmIyNWE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYm94IHtcclxuICAgICAgICBmbG9hdDogbGVmdDsgcG9zaXRpb246IHJlbGF0aXZlOyAgIFxyXG4gICAgICAgIC5mYS1pY28ge2N1cnNvcjogcG9pbnRlcjsgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTt9IFxyXG4gICAgICAgIC5zdWItYm94IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjMwcHg7IGJhY2tncm91bmQ6ICNmZmY7IHotaW5kZXg6IDM7IHRvcDogMTAwJTsgcmlnaHQ6IDI4cHg7ICBcclxuICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjMWZiMjVhOyBwYWRkaW5nOiAwIDEwcHg7IG1hcmdpbi10b3A6IDIwcHg7IG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMCAwIDRweCA0cHgpOyBcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOjE0cHg7IGhlaWdodDogMTRweDsgY29udGVudDogXCJcIjsgcmlnaHQ6IDdweDsgdG9wOiAtOXB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWMtYXJyLXRvb2wucG5nJykgbm8tcmVwZWF0IDAgMDsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDhkOGQ4O1xyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMTBweCAwIDEwcHggMjhweDsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yMTtsZXR0ZXItc3BhY2luZzogbm9ybWFsO2NvbG9yOiAjNjY2OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMThweDsgaGVpZ2h0OiAyM3B4OyBjb250ZW50OiBcIlwiOyB0b3A6IDUwJTsgbGVmdDogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsLTUwJSkpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLm15LXByb2ZpbGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9teS1hY2NvdW50LXByb2ZpbGUucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5teS1vcmRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL215LWFjY291bnQtb3JkZXIucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5teS12b3VjaGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbXktYWNjb3VudC12b3VjaGVyLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYubXktcG9pbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9teS1hY2NvdW50LXBvaW4ucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM0OWNiZDY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAmLm15LW5vdGlmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbXktYWNjb3VudC1ub3RpZi5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmxvZ291dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2xvZ291dC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAxMXB4IDA7IG1hcmdpbjogMCAwIDExcHggMDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYWVhZWE7IFxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9O1xyXG4gICAgICAgICAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgICAgICAmLmRjLWxlZnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzAlOyBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtkaXNwbGF5OiBibG9jazsgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9O30gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5kYy1yaWdodCB7d2lkdGg6IDMwJTsgdGV4dC1hbGlnbjogcmlnaHQ7fSBcclxuICAgICAgICAgICAgICAgICAgICAuc3VidG90YWwge2xpbmUtaGVpZ2h0OiAxLjI1OyBtYXJnaW46IDA7fVxyXG4gICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LXNtYWxsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7d2lkdGg6IDUwcHg7IGhlaWdodDogMzVweDsgYm9yZGVyOjFweCBzb2xpZCAjZWFlYWVhOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWd1cmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmc6IDNweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7aGVpZ2h0OiAxMDAlO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC10aXRsZSB7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNjBweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODY7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjMzMzMzMzOyAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAucHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjIxO2xldHRlci1zcGFjaW5nOiBub3JtYWw7Y29sb3I6ICNjYjQ2NDY7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5xdHkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnRvdGFsIHtcclxuICAgICAgICAgICAgICAgICAgICAuZGMtbGVmdCB7d2lkdGg6IDUwJTt9ICBcclxuICAgICAgICAgICAgICAgICAgICAuZGMtcmlnaHQge3dpZHRoOiA1MCU7fSAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYuZHJvcGRvd24tY2FydCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzcwcHg7IHJpZ2h0OiAtNXB4OyBwYWRkaW5nOiAxMHB4OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmRyb3Bkb3duLXNlYXJjaCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNjQwcHg7IGhlaWdodDogNjVweDsgcmlnaHQ6IDIwcHg7IHBhZGRpbmc6IDA7IG1pbi1oZWlnaHQ6IDA7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgICAgIGZvcm0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlcntjb2xvcjogIzk5OTt9IFxyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBib3JkZXI6IDA7IGxpbmUtaGVpZ2h0OiAxMDAlOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA3NXB4IDAgMjVweDsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDY1cHg7IGhlaWdodDogMTAwJTsgdG9wOiAwOyByaWdodDogMDsgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwOyBmb250LXNpemU6IDE4cHg7IGNvbG9yOiAjMWZiMjVhOyBjdXJzb3I6IHBvaW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMjVzIGVhc2UtaW4tb3V0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDo1NTA7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICAgICAgICAgICAgXHJcbiAgICAgICAgfSAgICAgICBcclxuICAgIH1cclxuICAgIC5ib3gtbGFuZyB7XHJcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwOyBwYWRkaW5nOiAwIDI0cHggMCAwO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGxpbmUtaGVpZ2h0OiAxLjIxOyBmb250LXNpemU6IDE0cHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogIzk5OTsgXHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMS41cHggc29saWQgIzk5OTsgdGV4dC1hbGlnbjogY2VudGVyOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBtYXJnaW46IDAgLTNweCAwIDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4IDAgNXB4OyBcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtib3JkZXItcmlnaHQ6MDt9IFxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjojMWZiMjVhOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5ib3gtc2VhcmNoIHtcclxuICAgICAgICBtYXJnaW46IDEycHggMCAwIDA7IHdpZHRoOiAzNHB4OyBwYWRkaW5nOiAwIDE3cHggMCAxNXB4O1xyXG4gICAgICAgIC5mYS1pY28ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1MXB4OyBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tc2VhcmNoLnBuZycpIG5vLXJlcGVhdCAwIDA7ICAgICAgICAgICAgIFxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgJi5hY3Qge1xyXG4gICAgICAgICAgICAuZmEtaWNvIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1zZWFyY2gtYWN0LnBuZycpIG5vLXJlcGVhdCAwIDA7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICBcclxuICAgIH1cclxuICAgIC5ib3gtYWNjb3VudCB7XHJcbiAgICAgICAgbWFyZ2luOiAxMnB4IDAgMCAwOyB3aWR0aDogMzJweDsgcGFkZGluZzogMCAyMnB4IDAgMTVweDtcclxuICAgICAgICAuZmEtaWNvIHsgXHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDUxcHg7IGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1hY2NvdW50LnBuZycpIG5vLXJlcGVhdCAwIDA7ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0IHtcclxuICAgICAgICAgICAgLmZhLWljbyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tYWNjb3VudC1hY3QucG5nJykgbm8tcmVwZWF0IDAgMDsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYm94LWNhcnQgeyBcclxuICAgICAgICBtYXJnaW46IDEycHggMCAwIDA7IHBhZGRpbmc6IDAgMCAwIDEwcHg7XHJcbiAgICAgICAgLmZhLWljbyB7ICBcclxuICAgICAgICAgICAgd2lkdGg6IDI0cHg7IGhlaWdodDogNTFweDsgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWNhcnQucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwOyBcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDsgYmFja2dyb3VuZDogI2RkMWUzMTsgY29sb3I6ICNmZmY7ICBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsgdG9wOiAtNXB4OyByaWdodDogLTVweDsgbGluZS1oZWlnaHQ6IDE2cHg7IHRleHQtYWxpZ246IGNlbnRlcjsgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40OyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1MCUpOyAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3Qge1xyXG4gICAgICAgICAgICAuZmEtaWNvIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1jYXJ0LWFjdC5wbmcnKSBuby1yZXBlYXQgMCAwOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuLmJvZHktcGF5bWVudCB7XHJcbiAgICBoZWFkZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMxZmIyNWE7IGNvbG9yOiAjZmZmOyBcclxuICAgICAgICAudGl0bGUtY2hlY2tvdXQgeyBcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjE7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0OyBwb3NpdGlvbjogcmVsYXRpdmU7ICAgXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwIDVweCAzMHB4OyAgXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMXB4OyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6ICNmZmY7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4zOyBsZWZ0OiAwOyB0b3A6IDA7ICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJnLW92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGZpeGVkOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB0b3A6IDA7IGxlZnQ6IDA7IHotaW5kZXg6IDU1O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC43KTsgZGlzcGxheTogbm9uZTsgXHJcbn1cclxuLnNpZGUtb3ZlcmxheSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgei1pbmRleDogODg4ODtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsIDAuNyk7IGRpc3BsYXk6IG5vbmU7IFxyXG59XHJcbi5vdmVybGF5LXRyYW5zcGFyZW50IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgdG9wOiAwOyBsZWZ0OiAwOyB6LWluZGV4OiA1NTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsIDApO1xyXG59XHJcblxyXG4ubmF2LW1vYmlsZSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgei1pbmRleDogODg4ODsgXHJcbiAgICBkaXNwbGF5OiBub25lOyBcclxuICAgIC5tb2ItaW5uZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDM4NHB4OyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6ICNmZmY7IHRvcDogMDsgbGVmdDogLTM4NHB4OyAgXHJcbiAgICAgICAgei1pbmRleDogNTY7IGRpc3BsYXk6IG5vbmU7IG9wYWNpdHk6IDA7IFxyXG4gICAgICAgIC5oZWFkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzFmYjI1YTsgaGVpZ2h0OiA2MHB4OyBcclxuICAgICAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAgICAgICAgIC5sb2dvIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMzVweDsgaGVpZ2h0OiBhdXRvOyBtYXJnaW46IDE0cHggMCAwIDMwcHg7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDsgXHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuLWNsb3NlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4OyBoZWlnaHQ6IDI0cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAyMHB4OyByaWdodDogMTVweDsgIFxyXG4gICAgICAgICAgICAgICAgei1pbmRleDogNTsgbWFyZ2luLXRvcDogLTU1cHg7IFxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAycHg7IGJhY2tncm91bmQ6ICNmZmY7IGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDNweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDowOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3Jtb3JpZ2luKGxlZnQgY2VudGVyKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6MTdweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybW9yaWdpbihsZWZ0IGNlbnRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTQ1ZGVnKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZWFyY2gtbW9iaWxlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTsgZGlzcGxheTogbm9uZTsgXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSBcclxuICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXJ7Y29sb3I6ICM5OTk7fSBcclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMDAlOyBwYWRkaW5nOiAyMHB4IDUwcHggMjBweCAzMHB4OyBib3JkZXI6IG5vbmU7IFxyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAyOyBmb250LXNpemU6IDEycHg7IGNvbG9yOiAjOTk5O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiA1MHB4OyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgcmlnaHQ6IDA7IHBhZGRpbmc6IDAgMTBweCAwIDA7IGJvcmRlcjogMDsgXHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTAwJTsgY29sb3I6ICMxZmIyNWE7IHotaW5kZXg6IDU7IGZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXNpemU6IDEycHg7IFxyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYWVhZWE7IFxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMjBweCAzMHB4OyBmb250LXNpemU6IDEycHg7IGNvbG9yOiAjMzMzOyAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubGFuZy1tb2Ige1xyXG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDI1cHg7IHBhZGRpbmc6IDA7ICBcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGxpbmUtaGVpZ2h0OiAxLjIxOyBmb250LXNpemU6IDEycHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogIzk5OTsgXHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjOTk5OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IG1hcmdpbjogMCAtM3B4IDAgMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4IDAgNXB4OyBcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7Ym9yZGVyLXJpZ2h0OjA7fSBcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IzFmYjI1YTsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubW9iLW92ZXJsYXkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgei1pbmRleDogNTU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgXHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC43KTsgZGlzcGxheTogbm9uZTsgXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLyogbWlkZGxlXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4ubWlkZGxlIHttaW4taGVpZ2h0OiA0NTBweDsgcGFkZGluZy10b3A6IDgwcHg7fSBcclxuXHJcbi5idG4tc2Nyb2xsIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDIycHg7IGhlaWdodDogNDBweDsgYm9yZGVyOiAycHggc29saWQgI2ZmZjsgbGVmdDogNTAlOyBib3R0b206IDMwcHg7XHJcbiAgICB6LWluZGV4OiAxNzsgY3Vyc29yOiBwb2ludGVyOyAgICBcclxuICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygzMHB4KTsgXHJcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIDApKTsgXHJcbiAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMnB4OyBoZWlnaHQ6IDdweDsgY29udGVudDogXCJcIjsgbGVmdDogNTAlOyB0b3A6IDlweDsgYmFja2dyb3VuZDogI2ZmZjsgICBcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIDApKTsgXHJcbiAgICB9XHJcbn1cclxuLnBhcmFsbGF4X2JveCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcbi5ob21lc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgaGVpZ2h0OiAxMDB2aDsgei1pbmRleDogMTsgIFxyXG4gICAgLnNsaWRlIHtwb3NpdGlvbjogcmVsYXRpdmU7fVxyXG4gICAgZmlndXJlIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMDsgcG9zaXRpb246IHJlbGF0aXZlOyBoZWlnaHQ6IDEwMHZoOyBwYWRkaW5nLXRvcDogODBweDsgICBcclxuICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7ICAgXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgY29udGVudDogXCJcIjsgbGVmdDogMDsgdG9wOiAwOyAgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsIDAuMik7IHotaW5kZXg6IDI7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBjb250ZW50OiBcIlwiOyBsZWZ0OiAwOyB0b3A6IDA7IHotaW5kZXg6IDM7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9iZy1kb3R0ZWQucG5nJykgcmVwZWF0IGNlbnRlciBjZW50ZXI7ICBcclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTsgaGVpZ2h0OiAxMDAlOyBcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IG9iamVjdC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNhcHRpb24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgYm90dG9tOiAwOyB6LWluZGV4OiAxNTsgXHJcbiAgICAgICAgbWFyZ2luOiBhdXRvOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjZmZmOyBcclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTsgZGlzcGxheTogdGFibGU7IHdpZHRoOiA2MDBweDsgcGFkZGluZzogODBweCAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7ICBcclxuICAgICAgICB9IFxyXG4gICAgICAgIC50YWdsaW5lIHtcclxuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uLWxvZ28ge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmctYm90dG9tOiAxNXB4OyBcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpdGxlLXNtYWxsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzNHB4OyBmb250LXdlaWdodDogYm9sZDsgbGluZS1oZWlnaHQ6IDM4cHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy10b3A6IDA7IGxldHRlci1zcGFjaW5nOiAzLjVweDsgXHJcbiAgICAgICAgICAgIC8qJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAzMHB4OyBoZWlnaHQ6IDM3cHg7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDUwJTsgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLXRhZ2xpbmUucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsMCkpOyAgIFxyXG4gICAgICAgICAgICB9Ki8gIFxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgLnRpdGxlLWxhcmdlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA5MHB4OyBmb250LXdlaWdodDogNTUwOyBsaW5lLWhlaWdodDogNzJweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgXHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9IFxyXG4gICAgICAgIC5kZXNjcmlwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4OyBsaW5lLWhlaWdodDogMzBweDsgbWFyZ2luLWJvdHRvbTogMjVweDsgcG9zaXRpb246IHJlbGF0aXZlOyAgXHJcbiAgICAgICAgfSBcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpY2stc2xpZGVyIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7ICAgICAgICBcclxuICAgIH1cclxuICAgIC5zbGljay1saXN0IHtsaW5lLWhlaWdodDogMDsgaGVpZ2h0OiAxMDAlO30gIFxyXG4gICAgLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3QgeyBcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDsgXHJcbiAgICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAud3JhcHBlciB7aGVpZ2h0OiAxMDAlO30gXHJcbiAgICAgICAgICAgICAgICAudGFnbGluZSB7aGVpZ2h0OiAxMDAlO30gXHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgfSBcclxuICAgIH0gICAgICAgXHJcbiAgICAuc2xpY2stYXJyb3cge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDYwcHg7IGhlaWdodDogNjBweDsgYm9yZGVyOiAycHggc29saWQgI2ZmZjsgei1pbmRleDogMTY7IFxyXG4gICAgICAgIHRvcDogNTAlOyBiYWNrZ3JvdW5kOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IHRleHQtaW5kZW50OiAtOTk5OTk5cHg7ICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpOyBcclxuICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwgLTUwJSkpOyAgIFxyXG4gICAgICAgICYuc2xpY2stcHJldiB7IFxyXG4gICAgICAgICAgICBsZWZ0OiA1MHB4O1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgY29udGVudDogXCJcIjsgbGVmdDogMDsgdG9wOiAwOyBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2Fycm93LXNtYWxsLXByZXYucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjE4cyBlYXNlLWluLW91dCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7YmFja2dyb3VuZC1wb3NpdGlvbjo0MCUgY2VudGVyO30gIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc2xpY2stbmV4dCB7IFxyXG4gICAgICAgICAgICByaWdodDogNTBweDsgXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBjb250ZW50OiBcIlwiOyBsZWZ0OiAwOyB0b3A6IDA7IFxyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvYXJyb3ctc21hbGwtbmV4dC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMThzIGVhc2UtaW4tb3V0KVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge2JhY2tncm91bmQtcG9zaXRpb246NjAlIGNlbnRlcjt9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxufVxyXG4udHJpZ2dlci1zY3JvbGwge3Bvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTt9IFxyXG4uYmFubmVyLWxhcmdlLWhvbWUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxNTtcclxuICAgIC5jYXB0aW9uIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDowOyB6LWluZGV4OiA1OyAgXHJcbiAgICAgICAgZm9udC1zaXplOiAzNnB4OyBjb2xvcjogIzc5NTMxZDsgXHJcbiAgICAgICAgLndyYXBwZXIge2hlaWdodDogMTAwJTsgZGlzcGxheTogdGFibGU7fSBcclxuICAgICAgICAudGFnbGluZSB7ZGlzcGxheTogdGFibGUtY2VsbDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgd2lkdGg6IDU5OXB4OyBsaW5lLWhlaWdodDogNDBweDt9XHJcbiAgICB9XHJcbiAgICBmaWd1cmUge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwOyBcclxuICAgICAgICBpbWcge3dpZHRoOiAxMDAlO30gXHJcbiAgICB9XHJcbn1cclxuLmJhbm5lci1wYWdlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgICAgXHJcbiAgICBmaWd1cmUge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwOyBwb3NpdGlvbjogcmVsYXRpdmU7ICBcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBjb250ZW50OiBcIlwiOyBsZWZ0OiAwOyB0b3A6IDA7ICBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC4yKTsgei1pbmRleDogMjsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDA7IHRvcDogMDsgei1pbmRleDogMzsgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2JnLWRvdHRlZC5wbmcnKSByZXBlYXQgY2VudGVyIGNlbnRlcjsgIFxyXG4gICAgICAgIH1cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jYXB0aW9uIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgei1pbmRleDogMTU7IFxyXG4gICAgICAgIG1hcmdpbjogYXV0bzsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogI2ZmZjsgXHJcbiAgICAgICAgLndyYXBwZXIge2hlaWdodDogMTAwJTsgZGlzcGxheTogdGFibGU7IHdpZHRoOiA2MDBweDt9XHJcbiAgICAgICAgLnRhZ2xpbmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpdGxlLXNtYWxsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4OyBmb250LXdlaWdodDogbm9ybWFsOyBsaW5lLWhlaWdodDogMC44OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGxldHRlci1zcGFjaW5nOiAxLjVweDsgICAgICAgICAgICAgIFxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgLnRpdGxlLWxhcmdlIHsgXHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOTBweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGxpbmUtaGVpZ2h0OiAwLjk7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IFxyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyAgXHJcbiAgICAgICAgfSAgICAgICAgICBcclxuICAgIH0gICBcclxufVxyXG4ucm93LWNhdGVnb3J5IHtcclxuICAgIHBhZGRpbmc6IDU1cHggMDsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiA1OyBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gXHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBsaW5lLWhlaWdodDogMDsgd2lkdGg6IDYwJTsgICAgICAgICAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgbGluZS1oZWlnaHQ6IDA7IGhlaWdodDogMTAwJTsgb3ZlcmZsb3c6IGhpZGRlbjsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7IFxyXG4gICAgICAgICAgICAgICAgaW1nIHsgIFxyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMTBweCk7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwJTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5jb2wtMiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IGhlaWdodDogNTAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyBcclxuICAgICAgICAgICAgICAgICYudG9wIHt0b3A6IDA7IHBhZGRpbmctYm90dG9tOiAxMHB4O31cclxuICAgICAgICAgICAgICAgICYuYm90dG9tIHtib3R0b206IDA7IHBhZGRpbmctdG9wOiAxMHB4O30gIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIgeyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygwcHggMHB4IDE1cHggMHB4ICNhMWEwYTApOyBcclxuICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4wMykpOyBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0gXHJcbi5yb3ctYmVzdC1zZWxsZXIge1xyXG4gICAgcGFkZGluZzogNTBweCAwOyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDU7XHJcbiAgICBiYWNrZ3JvdW5kOiNmZmYgdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvc2hhZG93LWdyYWRpZW50LnBuZycpIHJlcGVhdC14IGNlbnRlciAwOyAgXHJcbiAgICBoMyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjNzk1MzFkO1xyXG4gICAgICAgICYubW9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuYWZ0ZXJfY2xlYXIgXHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyBjb2xvcjogIzFmYjI1YTsgZm9udC1zaXplOiAxNHB4OyBmb250LXdlaWdodDogYm9sZDsgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gIFxyXG4gICAgLnJvdyB7cG9zaXRpb246IHJlbGF0aXZlO30gXHJcbiAgICAuc2xpY2stYXJyb3cge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IHotaW5kZXg6IDEyOyB3aWR0aDogMzZweDsgaGVpZ2h0OiA0MHB4OyBiYWNrZ3JvdW5kOiAjZGZjMjk4OyBcclxuICAgICAgICBwYWRkaW5nOiAwOyBib3JkZXI6IDA7IHRleHQtaW5kZW50OiAtOTk5OTk5cHg7IGN1cnNvcjogcG9pbnRlcjsgICAgICAgICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwgLTUwJSkpOyBcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB0b3A6IDA7IGxlZnQ6IDA7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICBsZWZ0OiAtNDBweDsgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHggMCAwIDRweCk7IFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9hcnJvdy1tZC1wcmV2LnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc2xpY2stbmV4dCB7IFxyXG4gICAgICAgICAgICByaWdodDogLTQwcHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygwIDRweCA0cHggMCk7IFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9hcnJvdy1tZC1uZXh0LnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMxZmIyNWE7IFxyXG4gICAgICAgIH1cclxuICAgIH0gXHJcbn1cclxuLmJ0bi1hYnMge3Bvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgdG9wOiAwOyBsZWZ0OiAwOyB6LWluZGV4OiA4O31cclxuLnByb2R1Y3QtbGlzdCB7XHJcbiAgICAucm93IHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAuYWZ0ZXJfY2xlYXIgXHJcbiAgICAgICAgfSBcclxuICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IHRleHQtYWxpZ246IGxlZnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgIHdpZHRoOiAyNzBweDsgbWFyZ2luOiAwIDMwcHggNTBweCAwOyBwYWRkaW5nOiAxNXB4OyAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpOyBcclxuICAgICAgICAgICAgLnJpYmJvbiB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiA0M3B4OyBoZWlnaHQ6IDQzcHg7IHRvcDogNXB4OyByaWdodDogNXB4OyBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IHotaW5kZXg6IDU7IHRleHQtYWxpZ246IGNlbnRlcjsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNTAlKTsgXHJcbiAgICAgICAgICAgICAgICAmLm5ldyB7YmFja2dyb3VuZDogIzFjOGZhNTsgbGluZS1oZWlnaHQ6IDQzcHg7fSBcclxuICAgICAgICAgICAgICAgICYuc2FsZSB7YmFja2dyb3VuZDogI2Y0NzEyZTsgbGluZS1oZWlnaHQ6IDQzcHg7fSBcclxuICAgICAgICAgICAgICAgICYuZGlzYyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y0NzEyZTsgbGluZS1oZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7cGFkZGluZzogMTBweCAwIDAgMDsgZGlzcGxheTogYmxvY2s7fSAgXHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE5MnB4OyBsaW5lLWhlaWdodDogMDsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW4tYm90dG9tOiAzMHB4OyBcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IFxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDsgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGl0bGUge2ZvbnQtc2l6ZTogMTZweDsgbGluZS1oZWlnaHQ6IDE4cHg7IG1hcmdpbi1ib3R0b206IDEwcHg7fSBcclxuICAgICAgICAgICAgLmRlcyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7IGxpbmUtaGVpZ2h0OiAxNHB4OyBjb2xvcjogIzcwNzA3MDtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMTM7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICNjYjQ2NDY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByaWNlLWRpc2MgeyBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzk5OTsgXHJcbiAgICAgICAgICAgICAgICAuZGlzYyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2NiNDY0NjsgY29sb3I6ICNmZmY7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgcGFkZGluZzogMCA1cHg7IG1hcmdpbi1sZWZ0OiA3cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDNweCk7ICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzbiszKSB7bWFyZ2luLXJpZ2h0OiAwO30gIFxyXG4gICAgICAgICAgICAmOmhvdmVyIHsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMHB4IDBweCAxNXB4IDBweCAjYTFhMGEwKTsgXHJcbiAgICAgICAgICAgICAgICBmaWd1cmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjk1KSk7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuY29sLTQgeyAgICAgICAgIFxyXG4gICAgICAgIC5yb3cge1xyXG4gICAgICAgICAgICAuY29sIHsgXHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI3MnB4OyBtYXJnaW46MCAwIDMwcHggMDsgcGFkZGluZzogMTVweDsgICAgXHJcbiAgICAgICAgICAgICAgICAuZGVzIHtjb2xvcjogIzMzMzt9ICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYub3RoZXIge1xyXG4gICAgICAgIC5yb3cge1xyXG4gICAgICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IFxyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMykge21hcmdpbi1yaWdodDogMzBweDt9XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1yaWdodDogMDt9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWRlci1iZXN0LXNlbGxlciB7XHJcbiAgICAgICAgLnNsaWNrLXNsaWRlIHsgXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgIH0gIFxyXG4gICAgfVxyXG4gICAgJi5saXN0LXByb21vIHtcclxuICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjc3cHg7ICBcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDRuKzQpIHttYXJnaW4tcmlnaHQ6IDA7fSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jaGVja2JveCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBtYXJnaW46IDBweCAwIDEzcHggMDsgYmFja2dyb3VuZDogbm9uZTsgYm90dG9tOiAwOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwO1xyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBwYWRkaW5nOiAwOyBjdXJzb3I6IHBvaW50ZXI7IFxyXG4gICAgICAgICAgICB6LWluZGV4OiAyOyBiYWNrZ3JvdW5kOiBub25lOyBib3R0b206IDA7IGxlZnQ6IDA7ICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYgKyBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IGN1cnNvcjogcG9pbnRlcjsgcGFkZGluZzogMDsgaGVpZ2h0OiAxMDAlOyBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJiArIGxhYmVsOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IGF1dG87IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpkaXNhYmxlZCArIGxhYmVsOmJlZm9yZSB7ICBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICY6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTE1cHg7IHJpZ2h0OiAwOyB0b3A6IDA7IGxlZnQ6IDA7IGJvcmRlcjogMXB4IHNvbGlkICMxRkIyNUE7IGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvaWNvbi1jaGVjay1ncmVlbi5wbmcpIG5vLXJlcGVhdDsgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubGFiZWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxOyBjb2xvcjojNzc3O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMTk7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzMzMzMzMzsgcGFkZGluZy1sZWZ0OiAyOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucm93LW90aGVyIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDhkOGQ4OyBwYWRkaW5nOiA1MHB4IDAgMCAwO1xyXG59XHJcblxyXG5cclxuLnJvdy10ZXN0aW1vbmkge1xyXG4gICAgcGFkZGluZzogNTBweCAwOyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDU7XHJcbiAgICBiYWNrZ3JvdW5kOiNmZmYgdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvYmctdGVzdGkucG5nJykgcmVwZWF0LXggY2VudGVyIDA7ICAgXHJcbiAgICBoMyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjNzk1MzFkOyB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7ICAgICAgICAgXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogMCAwIDIwcHggMDsgZGlzcGxheTogYmxvY2s7IFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDQwcHg7IGhlaWdodDogMnB4OyBjb250ZW50OiBcIlwiOyBsZWZ0OiA1MCU7IGJvdHRvbTogMDsgXHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZGZjMjk4OyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwgMCkpOyAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucm93IHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAuYWZ0ZXJfY2xlYXI7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7d2lkdGg6IDM2OXB4OyBwYWRkaW5nOiAwIDMwcHggMCAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7ICAgXHJcbiAgICAgICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODBweDsgaGVpZ2h0OiA4MHB4OyBtYXJnaW46MCBhdXRvIC0zMHB4IGF1dG87IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IFxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNTAlKTsgXHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgICAgICAgLypoZWlnaHQ6IDIxMHB4OyAqL1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNTBweCAyMnB4IDIycHggMjJweDt0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjsgICBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICAgICAgLnRzLXRvcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgLm5hbWUge2ZvbnQtc2l6ZTogMTZweDsgbWFyZ2luLWJvdHRvbTogNXB4O30gIFxyXG4gICAgICAgICAgICAgICAgICAgIC5wb3NpdGlvbiB7Zm9udC1zaXplOiAxMnB4O31cclxuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAuZGVzIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4OyBsaW5lLWhlaWdodDogMTZweDsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9ICBcclxuICAgIH1cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBsZWZ0OiAwOyBib3R0b206IDA7IHotaW5kZXg6IDE1OyB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjdXJzb3I6IHBvaW50ZXI7IHBhZGRpbmc6IDVweCAwOyBtYXJnaW46IDAgOHB4OyAgICBcclxuICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7IHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDVweDsgbGluZS1oZWlnaHQ6IDVweDsgYmFja2dyb3VuZDogI2NjYzsgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDsgXHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7Y3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpOyBcclxuICAgICAgICAgICAgfSAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7IFxyXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDsgYmFja2dyb3VuZDogI2RmYzI5ODsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5yb3ctc3ByZWFkIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMCA5MHB4IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogNTsgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIC53cmFwcGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9iZy1zcHJlYWQuanBnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IGhlaWdodDogMjIwcHg7IFxyXG4gICAgfVxyXG4gICAgZmlndXJlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAzNTFweDsgaGVpZ2h0OiAyODRweDsgdG9wOiAtMzBweDsgbGVmdDogLTQwcHg7ICBcclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgICBwYWRkaW5nOiAwIDM1MHB4IDAgMzUwcHg7IGZvbnQtc2l6ZTogMzZweDsgY29sb3I6ICM3OTUzMWQ7IGxpbmUtaGVpZ2h0OiA0MHB4OyAgICAgXHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7IGhlaWdodDogMTAwJTsgXHJcbiAgICAgICAgcCB7bGluZS1oZWlnaHQ6IDQwcHg7IGRpc3BsYXk6IHRhYmxlLWNlbGw7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7fSAgXHJcbiAgICB9XHJcbiAgICAuYnRuLmFicy5hYnMtcmlnaHQge3JpZ2h0OiAzOHB4O30gIFxyXG59XHJcblxyXG4uY29udGVudC1wYWdlIHtcclxuICAgIGhlYWRlciB7Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxZmIyNWE7fSAgXHJcbn1cclxuLm1pZC1jb250ZW50IHsgXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDY1cHggMCA4NXB4IDA7IFxyXG4gICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9IFxyXG4gICAgJi5wcm9kdWN0IHtcclxuICAgICAgICBwYWRkaW5nOiAzNXB4IDAgODVweCAwOyBcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMXB4OyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMjcwcHg7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWFlYWVhOyBcclxuICAgICAgICB9IFxyXG4gICAgfSAgICBcclxuICAgICYucHJvbW8ge1xyXG4gICAgICAgICY6YmVmb3JlIHtkaXNwbGF5Om5vbmU7fSBcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzY2NjsgbWFyZ2luOiAwIDAgMzVweCAwOyAgIFxyXG4gICAgfVxyXG4gICAgdWwge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7IG1hcmdpbjogMCAwIDAgMjBweDsgcGFkZGluZzogMCAwIDVweCAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjNjY2O1xyXG4gICAgICAgIH0gIFxyXG4gICAgfVxyXG4gICAgb2wgeyBcclxuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7IGZvbnQtc2l6ZTogMTZweDsgY29sb3I6ICM2NjY7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBkZWNpbWFsOyBtYXJnaW46IDAgMCAwIDIwcHg7IHBhZGRpbmc6IDAgMCA1cHggMDsgXHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY7XHJcbiAgICAgICAgfSAgXHJcbiAgICB9XHJcbiAgICAucGFnaW5nIHsgICBcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB1bCB7ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1yaWdodDogN3B4OyBtYXJnaW4tYm90dG9tOiA3cHg7IG1hcmdpbi1sZWZ0OiAwOyBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM0cHg7aGVpZ2h0OiAzNHB4O2JhY2tncm91bmQ6ICNmMGYwZjA7IGxpbmUtaGVpZ2h0OiAzNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM2NjY2NjY7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojMWZiMjVhOyBjb2xvcjogI2ZmZjsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6IDA7fSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmNlbnRlciB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1Yi1uYXYge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDhkOGQ4OyBtYXJnaW4tYm90dG9tOiAzMHB4OyBcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBtYXJnaW46IDAgLTNweCAwIDA7IHBhZGRpbmc6IDA7IFxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDEwcHggMTdweDsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjE7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjOTk5O1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAwOyBoZWlnaHQ6IDJweDsgY29udGVudDogXCJcIjsgbGVmdDogNTAlOyBib3R0b206IC0xcHg7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzc5NTMxZDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwgMCkpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTsgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7IFxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgY29sb3I6ICM3OTUzMWQ7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuc3ViTmF2TW9iaWxlIHtkaXNwbGF5OiBub25lO31cclxuICAgIH1cclxuICAgIC5yb3ctZGVzY3JpcHRpb24ge3BhZGRpbmctYm90dG9tOiA0MHB4O30gIFxyXG4gICAgLm5hdi10YWIge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDhkOGQ4OyBtYXJnaW4tYm90dG9tOiA0MHB4OyBcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDsgXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IG1hcmdpbjogMCAtM3B4IDAgMDsgcGFkZGluZzogMDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAwIDIwcHggOXB4IDE4cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7Y29sb3I6ICM5OTk7IFxyXG4gICAgICAgICAgICAgICAgICAgIC50eHQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDFweCAwIDFweCAyN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pbmZvIHtiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pYy1ib3gucG5nJykgbm8tcmVwZWF0IDAgY2VudGVyO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5yZXZpZXcge2JhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLXJhdGUtcmV2aWV3LnBuZycpIG5vLXJlcGVhdCAwIDA7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRpc2N1c3Mge2JhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLWNoYXQucG5nJykgbm8tcmVwZWF0IDAgY2VudGVyO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7fVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMDsgaGVpZ2h0OiAxcHg7IGJhY2tncm91bmQ6ICM3OTUzMWQ7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7IGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLDApKTsgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4udmFsdWUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6ICNjYjQ2NDY7IGNvbG9yOiAjZmZmOyBwYWRkaW5nOiAwcHggNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjotMXB4IDAgMCAycHg7IHZlcnRpY2FsLWFsaWduOiB0b3A7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNTAlKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3OTUzMWQ7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudHh0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaW5mbyB7YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWMtYm94LWFjdC5wbmcnKSBuby1yZXBlYXQgMCBjZW50ZXI7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5yZXZpZXcge2JhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLXJhdGUtcmV2aWV3LWFjdC5wbmcnKSBuby1yZXBlYXQgMCAwO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuZGlzY3VzcyB7YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWMtY2hhdC1hY3QucG5nJykgbm8tcmVwZWF0IDAgY2VudGVyO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnYyIHtcclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtoZWlnaHQ6MnB4O30gXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYXZUYWJNb2JpbGUge2Rpc3BsYXk6IG5vbmU7fVxyXG4gICAgfVxyXG59XHJcbi5jaGVja2JveCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IG1hcmdpbjogMHB4IDAgMTNweCAwOyBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgaW5wdXQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgcGFkZGluZzogMDsgY3Vyc29yOiBwb2ludGVyOyBcclxuICAgICAgICB6LWluZGV4OiAyOyBiYWNrZ3JvdW5kOiBub25lOyAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAmICsgbGFiZWwge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJiArIGxhYmVsOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTZweDsgY29udGVudDogXCJcIjsgdG9wOiAzcHg7IGxlZnQ6IDA7ICBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWNoZWNrYm94LTIucG5nJykgbm8tcmVwZWF0IDAgMDsgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTVweCAzMnB4OyAgICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweClcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpkaXNhYmxlZCArIGxhYmVsOmJlZm9yZSB7ICBcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgJjpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCBib3R0b207ICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYWJlbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTsgY29sb3I6Izc3NztcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMTk7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjMzMzMzMzOyBwYWRkaW5nLWxlZnQ6IDI4cHg7XHJcbiAgICB9XHJcbn1cclxuLmNoZWNrYm94LTIgeyAgICBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDE4cHg7IGhlaWdodDogMThweDsgbWFyZ2luOiBhdXRvOyBcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgICBcclxuICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpOyBcclxuICAgIGlucHV0IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHBhZGRpbmc6IDA7IGN1cnNvcjogcG9pbnRlcjsgXHJcbiAgICAgICAgei1pbmRleDogMjsgYmFja2dyb3VuZDogbm9uZTsgdG9wOiAwOyBsZWZ0OiAwOyAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgIHBhZGRpbmc6IDA7IGJvcmRlcjogMDsgXHJcbiAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAmICsgbGFiZWwgeyBcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBsZWZ0OiAwOyB0b3A6IDA7ICBcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmICsgbGFiZWw6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMThweDsgaGVpZ2h0OiAxOHB4OyBjb250ZW50OiBcIlwiOyB0b3A6IDA7IGxlZnQ6IDA7ICAgIFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tY2hlY2tib3gucG5nJykgbm8tcmVwZWF0IDAgMDsgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMThweCAzNnB4OyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmRpc2FibGVkICsgbGFiZWw6YmVmb3JlIHsgICBcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgJjpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCBib3R0b207ICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYWJlbCB7IFxyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7IHBhZGRpbmc6IDAgMCAwIDI4cHg7IGNvbG9yOiM2NjY7IFxyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyAgXHJcbiAgICB9XHJcbn1cclxuLmFzaWRlIHtcclxuICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogMjcwcHg7IHBhZGRpbmc6IDAgMzBweCAzMHB4IDA7IFxyXG4gICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgLmZpbHRlci1jbG9zZSB7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDI1cHg7IHJpZ2h0OiAxNXB4OyAgXHJcbiAgICAgICAgei1pbmRleDogNTU1OyBtYXJnaW4tdG9wOiAtNTVweDsgXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMnB4OyBiYWNrZ3JvdW5kOiAjZjQ3MTJlOyBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoM3B4KTtcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7XHJcbiAgICAgICAgICAgICAgICB0b3A6MDsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm1vcmlnaW4obGVmdCBjZW50ZXIpOyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKXsgXHJcbiAgICAgICAgICAgICAgICB0b3A6MTdweDsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm1vcmlnaW4obGVmdCBjZW50ZXIpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtNDVkZWcpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zaWRlYmFyLWZpbHRlciB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7IG1hcmdpbi1ib3R0b206IDQwcHg7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWFlYWVhOyBcclxuICAgICAgICAuZmlsdGVyLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yMjtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjMzMzMzMzOyBtYXJnaW4tYm90dG9tOiA3cHg7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAuZmlsdGVyLXRpdGxlLXNtYWxsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yMjtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjZjQ3MTJlOyBtYXJnaW4tYm90dG9tOiAyMHB4OyBcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWx0ZXItbGlzdCB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4xOTtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzMzMzMzMzsgcGFkZGluZzogNi41cHggMzVweCA2LjVweCAwOyBcclxuICAgICAgICAgICAgICAgIC5jb3VudCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDhweDsgcmlnaHQ6IDA7IFxyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yNTtcclxuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IHJpZ2h0O2NvbG9yOiAjOTk5OTk5O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMxMDUzMmI7IGZvbnQtd2VpZ2h0OiA1NTA7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWx0ZXItY2hlY2sge3BhZGRpbmctdG9wOiA2cHg7fVxyXG4gICAgICAgIC5maWx0ZXItc2VhcmNoIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4OyBsaW5lLWhlaWdodDogNDBweDsgYm9yZGVyOjFweCBzb2xpZCAjY2NjOyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMCAwIDFweCAjY2NjIGluc2V0KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVye2NvbG9yOiAjOTk5fTsgXHJcbiAgICAgICAgICAgIGZvcm0ge2hlaWdodDogMTAwJTt9IFxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGxpbmUtaGVpZ2h0OiAxMDAlOyBib3JkZXI6IDA7IHBhZGRpbmc6IDAgMzBweCAwIDExcHg7ICBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzk5OTk5OTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDMwcHg7IGhlaWdodDogMTAwJTsgdG9wOiAwOyByaWdodDogMDsgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDsgXHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7IHBhZGRpbmc6IDA7IGN1cnNvcjogcG9pbnRlcjsgXHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tc2VhcmNoLXNtYWxsLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpOyAgXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6MC44OyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmlzLWNoZWNrYm94IHtcclxuICAgICAgICAgICAgLmZpbHRlci1jaGVjayB7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmlzLXJhbmdlIHsgXHJcbiAgICAgICAgICAgIC5maWx0ZXItcmFuZ2Uge3BhZGRpbmctdG9wOiA1cHg7fVxyXG4gICAgICAgICAgICAucmFuZ2Uge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn07IFxyXG4gICAgICAgICAgICAgICAgLmlucHV0LXJhbmdlIHtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDsgd2lkdGg6IDQ2JTsgbWFyZ2luLXJpZ2h0OiA4JTsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1yaWdodDowO30gXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgbWFyZ2luLWJvdHRvbTogMnB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY2NjY7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7IGJvcmRlcjoxcHggc29saWQgI2NjYzsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IHJpZ2h0O2NvbG9yOiAjOTk5OTk5OyBwYWRkaW5nOiAwIDhweCAwIDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygwIDAgMXB4ICNjY2MgaW5zZXQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXJ7Y29sb3I6ICM5OTl9OyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmZpZWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogN3B4OyBoZWlnaHQ6IDFweDsgdG9wOiAxM3B4OyByaWdodDogLTEzcHg7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KDAgMCAxMHB4ICM3MDcwNzAgaW5zZXQpOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICAucnAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDo3cHg7IGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzk5OTk5OTtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5maWVsZCB7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7ZGlzcGxheTpub25lO30gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgI3JhbmdlLXNsaWRlIHsgICAgIFxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIyMHB4OyBcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMzBweDsgaGVpZ2h0OiA2cHg7IGJhY2tncm91bmQ6ICNjY2M7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwOyByaWdodDogLTIwcHg7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygwcHggMnB4IDJweCAwcHgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRvdC1yYW5nZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1cHg7IHRvcDogLTE4cHg7IGxlZnQ6IDA7ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBoZWlnaHQ6IDVweDsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxcHg7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogI2NjYzsgY29udGVudDogXCJcIjsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7IGxlZnQ6IDdweDsgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OjhweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMXB4OyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6ICNjY2M7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDsgcmlnaHQ6IC0xMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAudWktc3RhdGUtZGVmYXVsdCwgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1kZWZhdWx0LCAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZGVmYXVsdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2NiNDY0Njsgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgYm9yZGVyOiAwOyBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1MCUpOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC51aS13aWRnZXQtaGVhZGVyIHtiYWNrZ3JvdW5kOiAjY2I0NjQ2O30gXHJcblxyXG4gICAgICAgICAgICAgICAgJi51aS1zbGlkZXItaG9yaXpvbnRhbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2cHg7IGJhY2tncm91bmQtY29sb3I6ICNjY2M7IGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTtcclxuICAgICAgICAgICAgICAgICAgICAudWktc2xpZGVyLWhhbmRsZSB7dG9wOiAtMC41ZW07IG1hcmdpbi1sZWZ0OiAtLjFlbTt9ICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnVpLXdpZGdldC1jb250ZW50IHtiYWNrZ3JvdW5kOiAjY2NjO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQgeyAgICBcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IGJvcmRlci1ib3R0b206IDA7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ucmlnaHQtY29udGVudCB7XHJcbiAgICBmbG9hdDogbGVmdDsgd2lkdGg6IDkwMHB4OyBwYWRkaW5nOiAwIDAgMCAzMHB4OyBcclxuICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICYuZnVsbCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDA7IHdpZHRoOiAxMDAlOyBcclxuICAgIH1cclxufVxyXG4uYmFubmVyLXByb2R1Y3QgeyBcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IFxyXG4gICAgZmlndXJlIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IG92ZXJmbG93OiBoaWRkZW47IFxyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyBcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UtaW4tb3V0KTsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC45OyAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm1haW4tZmlsdGVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7ICBcclxuICAgIC5maWx0ZXItdG9wIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgbWFyZ2luLWJvdHRvbTogMTVweDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlYWVhZWE7ICAgIFxyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSBcclxuICAgICAgICBoMyB7IFxyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBjb2xvcjogIzc5NTMxZDsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zbWFsbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yNTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtjb2xvcjogIzk5OTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG4gICAgLmZpbHRlci1ib3R0b20ge1xyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfVxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwYWRkaW5nOiAwIDhweCAwIDA7ICBcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAuZmlsdGVyLXJhdGUgeyBcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBwYWRkaW5nLWxlZnQ6IDE1cHg7ICBcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGhlaWdodDogMzBweDsgcGFkZGluZzogMCA5cHg7IGJvcmRlcjoxcHggc29saWQgI2VhZWFlYTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4OyBjb2xvcjogIzk5OTsgbWFyZ2luOiAwIDZweCAwIDA7ICBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgICAgIHNwYW4ge3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBhZGRpbmctbGVmdDogM3B4O30gICBcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZmIyNWE7IGNvbG9yOiAjMWZiMjVhOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZmlsdGVyLW1vYmlsZSB7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgZGlzcGxheTogbm9uZTsgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IHBhZGRpbmc6IDA7IGJvcmRlcjogMDsgbWFyZ2luOiAwOyBcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMTFweDsgaGVpZ2h0OiAzMHB4OyBsaW5lLWhlaWdodDogMzBweDsgYmFja2dyb3VuZDogI2Y0NzEyZTsgY29sb3I6I2ZmZjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgXHJcbiAgICAgICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4OyBwYWRkaW5nOiAwcHggMTBweCAwIDEwcHg7IGZsb2F0OiBsZWZ0OyBjb2xvcjojZmZmO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmljbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7IGhlaWdodDogMTRweDsgZmxvYXQ6IHJpZ2h0OyBtYXJnaW46IDAgMTVweCAwIDA7IFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1maWx0ZXIucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSAgXHJcbiAgICAuc2hvd3RleHQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yMTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM5OTk7IHBhZGRpbmctdG9wOiA3cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgXHJcbiAgICB9ICAgXHJcbiAgICAmLmJvdHRvbSB7bWFyZ2luLWJvdHRvbTogMjBweDt9IFxyXG4gICAgJi52MiB7XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4ucm93LWFydGljbGUge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7IHdpZHRoOiAxMDAlOyBtYXJnaW4tYm90dG9tOiA4MHB4OyBcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gXHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7ICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgIFxyXG4gICAgICAgICAgICAmLnRleHQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUxLjI4JTsgcGFkZGluZy1yaWdodDogMTAwcHg7IFxyXG4gICAgICAgICAgICAgICAgLmRlcyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjNjY2O1xyXG4gICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDguNzIlO1xyXG4gICAgICAgICAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyBcclxuICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KDEwcHggMTBweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmJveC1wbGF5IHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyBtYXJnaW46IGF1dG87IGxlZnQ6IDA7IHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogODZweDsgaGVpZ2h0OiA4NnB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmV4LXZpZGVvIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnZpZGVvIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmcmFtZSB7d2lkdGg6IDEwMCUgIWltcG9ydGFudDsgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwO31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnJ0bCB7XHJcbiAgICAgICAgICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyOyAgXHJcbiAgICAgICAgICAgICAgICAmLmltZyB7fVxyXG4gICAgICAgICAgICAgICAgJi50ZXh0IHtwYWRkaW5nLWxlZnQ6IDEwMHB4OyBwYWRkaW5nLXJpZ2h0OiAwO30gIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5ncmlkLXNwcmVhZCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBoMiB7bWFyZ2luLWJvdHRvbTogNDBweDt9IFxyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn1cclxuICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgLypmbG9hdDogbGVmdDsgKi9cclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyBcclxuICAgICAgICAgICAgd2lkdGg6IDMxLjYyNSU7IFxyXG4gICAgICAgICAgICBtYXJnaW46MCAyLjMlIDIuMyUgMDsgcGFkZGluZzogNDhweCAyOXB4IDQ0cHggMjZweDsgIFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZTVlNWU1LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNykpOyAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMykge21hcmdpbi1yaWdodDogMDt9IFxyXG4gICAgICAgICAgICBmaWd1cmUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1MHB4OyBoZWlnaHQ6IDE1MHB4OyBiYWNrZ3JvdW5kOiAjZmZmOyBtYXJnaW46MCBhdXRvIDEycHggYXV0bzsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNTAlKTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMCAzcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KSk7IFxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IG1hcmdpbjogYXV0bzsgdG9wOiAwOyByaWdodDogMDsgYm90dG9tOiAwOyBsZWZ0OiAwOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgaDMge21hcmdpbi1ib3R0b206IDIwcHg7fSAgXHJcbiAgICAgICAgICAgIC5kZXMge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzY2NjsgbWFyZ2luLWJvdHRvbTogMzBweDsgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxufVxyXG5cclxuLmxpc3RpbmctZXZlbnQge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7IFxyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9ICBcclxuICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBmbG9hdDogbGVmdDsgd2lkdGg6IDMwLjkzJTsgbWFyZ2luOiAwIDMuNiUgNTBweCAwOyBcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMykge21hcmdpbi1yaWdodDogMDt9XHJcbiAgICAgICAgICAgIC5pbWcge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW4tYm90dG9tOiAxNXB4OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBmaWd1cmUge1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgb3ZlcmZsb3c6IGhpZGRlbjsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoM3B4KTsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMjVzIGVhc2UtaW4tb3V0KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgLmUtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjMzO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjMTExMTExOyBtYXJnaW4tYm90dG9tOiAxMHB4OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZS1ub3RlIHsgXHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuNzE7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM5OTk5OTk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciB7IFxyXG4gICAgICAgICAgICAgICAgZmlndXJlIHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjA1KSk7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuZ2FsbGVyeSB7XHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIC5pbWcge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDEwcHggMTBweDsgYmFja2dyb3VuZDogI2ZmZjsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGJvcmRlcjoxcHggc29saWQgI2RkZDsgY29udGVudDogXCJcIjsgXHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwOyBsZWZ0OiAwOyBiYWNrZ3JvdW5kOiAjZmZmOyB6LWluZGV4OiAyOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBib3JkZXI6MXB4IHNvbGlkICNkZGQ7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7IGxlZnQ6IDEwcHg7IGJhY2tncm91bmQ6ICNmZmY7IHotaW5kZXg6IDE7ICBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBoZWlnaHQ6IDE4MHB4OyB6LWluZGV4OiAzO1xyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3Zlcjsgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uZXZlbnQtZ2FsbGVyeS1zbGlkZXIge1xyXG4gICAgLnNsaWRlci1mb3Ige1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTsgXHJcbiAgICAgICAgICAgIGltZyB7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCk7fSBcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNsaWNrLWFycm93IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogNDBweDsgaGVpZ2h0OiA0MHB4OyB0b3A6IDUwJTsgei1pbmRleDogNTsgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTk5OXB4OyBiYWNrZ3JvdW5kOiBub25lOyBib3JkZXI6MnB4IHNvbGlkICNmZmY7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IEBpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgwLCAtNTAlKSk7IFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB0b3A6IDA7IGxlZnQ6IDA7IFxyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5zbGljay1wcmV2IHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7YmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9hcnJvdy1zbWFsbC1wcmV2LnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6NDBweDtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2Fycm93LXNtYWxsLW5leHQucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsaWRlci10aHVtYiB7XHJcbiAgICAgICAgLnNsaWNrLXNsaWRlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE4MHB4OyBoZWlnaHQ6IDEwMHB4OyBib3JkZXI6MnB4IHNvbGlkICNmZmY7IGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggMCAwOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgICYuc2xpY2stY3VycmVudCB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZmIyNWE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgICAgIGltZyB7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCk7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxufVxyXG5cclxuLnJpYmJvbi1sZyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiA2MHB4OyBoZWlnaHQ6IDYwcHg7IHRvcDogMTVweDsgbGVmdDogMTVweDsgY29sb3I6ICNmZmY7XHJcbiAgICBmb250LXNpemU6IDE0cHg7IGZvbnQtd2VpZ2h0OiBib2xkOyB6LWluZGV4OiA1OyB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IFxyXG4gICAgJi5uZXcge2JhY2tncm91bmQ6ICMxYzhmYTU7IGxpbmUtaGVpZ2h0OiA2MHB4O30gXHJcbiAgICAmLnNhbGUge2JhY2tncm91bmQ6ICNmNDcxMmU7IGxpbmUtaGVpZ2h0OiA2MHB4O30gXHJcbiAgICAmLmRpc2Mge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNDcxMmU7IGxpbmUtaGVpZ2h0OiAxNHB4O1xyXG4gICAgICAgIHNwYW4ge3BhZGRpbmc6IDEwcHggMCAwIDA7IGRpc3BsYXk6IGJsb2NrO30gIFxyXG4gICAgfSBcclxufVxyXG4ucmF0ZSB7XHJcbiAgICB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiB0b3A7IFxyXG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWMtc3Rhci11bmZpbGxlZC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuICAgICYuZmlsbGVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pYy1zdGFyLWZpbGxlZC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuICAgIH1cclxuICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLXN0YXItZGlzYWJsZWQucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuLmJveC1yYXRlIHtcclxuICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfVxyXG4gICAgLnJhdGUge1xyXG4gICAgICAgIHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLXN0YXItdW5maWxsZWQucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgJi5maWxsZWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pYy1zdGFyLWZpbGxlZC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY291bnQge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyBsaW5lLWhlaWdodDogMjBweDsgY29sb3I6ICNmNDcxMmU7IG1hcmdpbjowIDAgMCA1cHg7XHJcbiAgICAgICAgJi5ncmF5IHtjb2xvcjogIzk5OTt9IFxyXG4gICAgfSAgXHJcbiAgICAuZGF0ZSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IGxpbmUtaGVpZ2h0OiAyMHB4OyBjb2xvcjogIzk5OTsgbWFyZ2luOjAgMCAwIDVweDtcclxuICAgIH0gXHJcbn1cclxuLnJldmlldy1yYXRlLW1kIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IFxyXG4gICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9ICAgIFxyXG4gICAgLnJhdGUtbWQge1xyXG4gICAgICAgIHdpZHRoOiAyNnB4OyBoZWlnaHQ6IDI2cHg7IGZsb2F0OiBsZWZ0OyBjdXJzb3I6IHBvaW50ZXI7ICAgXHJcbiAgICAgICAgLmljbyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcclxuICAgICAgICAgICAgd2lkdGg6IDI2cHg7IGhlaWdodDogMjZweDsgIFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pYy1zdGFyLW1kLXVuZmlsbGVkLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmhvdmVyLCAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgICAgLmljbyB7YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWMtc3Rhci1tZC1maWxsZWQucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYm94LWNtIHtcclxuICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfVxyXG4gICAgLnNlbGxlciB7XHJcbiAgICAgICAgbWFyZ2luOiAxcHggNXB4IDAgMDsgXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYm9yZGVyOjFweCBzb2xpZCAjY2I0NjQ2OyBsaW5lLWhlaWdodDogMTZweDtwYWRkaW5nOiAwIDZweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICNjYjQ2NDY7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5kYXRlIHtcclxuICAgICAgICBmbG9hdDogbGVmdDsgbGluZS1oZWlnaHQ6IDIwcHg7IGNvbG9yOiAjOTk5OyBtYXJnaW46MnB4IDAgMCAwOyBcclxuICAgIH1cclxufVxyXG4udG9vbHRpcC1jYXJ0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogNTAlOyBib3R0b206IDE2MHB4O3otaW5kZXg6IDE1OyBkaXNwbGF5OiBub25lOyBcclxuICAgIHdpZHRoOiA2MzBweDtwYWRkaW5nOjMwcHg7YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpOyAgXHJcbiAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjQzO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjZmZmO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLDApKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpOyBcclxuICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgIC5sZWZ0IHt3aWR0aDogNzIlO31cclxuICAgIC5yaWdodCB7d2lkdGg6IDI4JTsgdGV4dC1hbGlnbjogcmlnaHQ7fSBcclxuICAgIC50eHQge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4OyBwYWRkaW5nOiAwIDAgMCA0MnB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGJsb2NrOyBcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMzJweDsgaGVpZ2h0OiAxMDAlOyBjb250ZW50OiBcIlwiOyBsZWZ0OiAwOyB0b3A6IDA7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9jaGVja21hcmstc3VjY2Vzcy5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgfVxyXG4gICAgfSAgICAgXHJcbn1cclxuIC5pbnB1dC1xdHkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7IGJvcmRlcjoxcHggc29saWQgI2VhZWFlYTsgbGluZS1oZWlnaHQ6IDAuNzU7XHJcbiAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgIFxyXG4gICAgLmJ0bi1taW51cyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlYWVhZWE7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgY29udGVudDogXCItXCI7IHRvcDogLTJweDsgbGVmdDogMDsgXHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4OyBmb250LXNpemU6IDMwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICM5OTk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaW5wdXQge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogNzBweDsgaGVpZ2h0OiA0MHB4OyBsaW5lLWhlaWdodDogMTRweDsgYm9yZGVyOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICBjb2xvcjogIzY2NjsgdGV4dC1hbGlnbjogY2VudGVyOyAgXHJcbiAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgIH1cclxuICAgIC5idG4tcGx1cyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2VhZWFlYTsgXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgY29udGVudDogXCIrXCI7IHRvcDogMDsgbGVmdDogMDsgXHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4OyBmb250LXNpemU6IDIwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICM5OTk7IFxyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnF0eS1tZCB7ICBcclxuICAgICAgICBoZWlnaHQ6IDMwcHg7IGxpbmUtaGVpZ2h0OiAzMHB4OyBmbG9hdDogbm9uZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyAgICBcclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiB0b3A7IFxyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7IGxpbmUtaGVpZ2h0OiAzMHB4OyB3aWR0aDogNTVweDsgXHJcbiAgICAgICAgfSAgICBcclxuICAgICAgICAuYnRuLXBsdXMgeyBcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4OyBsaW5lLWhlaWdodDogMzBweDsgd2lkdGg6IDMwcHg7ICBcclxuICAgICAgICAgICAgJjpiZWZvcmUge2xpbmUtaGVpZ2h0OjMwcHg7fSAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuLW1pbnVzIHsgICAgXHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7IHdpZHRoOiAzMHB4OyAgXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtsaW5lLWhlaWdodDozMHB4O30gXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5ib3gtYnRuIHtcclxuICAgIGEge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTdweDtcclxuICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1yaWdodDowO31cclxuICAgIH1cclxufVxyXG4ucHJvZHVjdC1kZXRhaWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSBcclxuICAgIC5wcm9kdWN0LWdhbGxlcnkge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogNDIuNzUlOyBwYWRkaW5nOiAwIDAgMCAwOyBcclxuICAgICAgICAuaW1hZ2VzLWxnIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7dGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgaW1nIHtkaXNwbGF5OiBpbmxpbmUtYmxvY2s7fVxyXG4gICAgICAgICAgICB9IFxyXG4gICAgICAgIH1cclxuICAgICAgICAuaW1hZ2VzLXNtIHtcclxuICAgICAgICAgICAgLnNsaWNrLWxpc3Qge2hlaWdodDogODZweCAhaW1wb3J0YW50O30gXHJcbiAgICAgICAgICAgIC5zbGljay1zbGlkZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTE5cHg7IGhlaWdodDogODZweDsgYm9yZGVyOjFweCBzb2xpZCAjZWFlYWVhOyBtYXJnaW46MCA3cHggMCAwOyBjdXJzb3I6IHBvaW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgICAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHg7IGhlaWdodDogMTAwJTsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb250YWluOyBvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcclxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zbGljay1zbGlkZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgJi5zbGljay1jdXJyZW50IHtib3JkZXItY29sb3I6ICMxZmIyNWE7fSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5wcm9kdWN0LXRleHQge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogNTcuMjUlOyBwYWRkaW5nOiAxMHB4IDAgMCA3MHB4OyBcclxuICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgIC5yb3ctYm94IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIDIwcHggMDsgbWFyZ2luOiAwIDAgMjBweCAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTsgIFxyXG4gICAgICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gXHJcbiAgICAgICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXJnaW46IDAgMTJweCAwIDA7XHJcbiAgICAgICAgICAgICAgICAmLnJpZ2h0IHtmbG9hdDogcmlnaHQ7fSBcclxuICAgICAgICAgICAgICAgICYuYm9yZGVyLWxlZnQge2JvcmRlci1sZWZ0OiAxcHggc29saWQgI2VhZWFlYTsgcGFkZGluZy1sZWZ0OiAxNXB4O30gXHJcbiAgICAgICAgICAgICAgICAmLmxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzVweDsgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDAuNzU7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO2NvbG9yOiAjY2I0NjQ2OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucHJpY2UtZGlzYyB7IFxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjOTk5OyB0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdoO1xyXG4gICAgICAgICAgICAgICAgLmRpc2Mge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNjYjQ2NDY7IGNvbG9yOiAjZmZmOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBhZGRpbmc6IDAgNXB4OyBtYXJnaW4tbGVmdDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLm5vLWJvcmRlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwOyBwYWRkaW5nLWJvdHRvbTogMDsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi53YnV0dG9uIHtwYWRkaW5nLXRvcDogMTVweDt9IFxyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgZm9udC1zaXplOiAxNHB4OyBwYWRkaW5nOiAwIDQ3cHg7XHJcbiAgICAgICAgICAgIH0gICBcclxuICAgICAgICAgICAgLnRvb2x0aXAtY2FydCB7XHJcbiAgICAgICAgICAgICAgICAuYnRuIHtwYWRkaW5nOiAwIDE0cHg7IG1hcmdpbi1yaWdodDogMDt9ICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgIC5ib3gtZGlzY3VzcyB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyBjb2xvcjogIzY2NjsgcGFkZGluZzogMCAwIDAgMjZweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWMtY2hhdC5wbmcnKSBuby1yZXBlYXQgMCBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ib3gtc2hhcmUge1xyXG4gICAgICAgICAgICAuaWNvLXNoYXJlIHtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyBjb2xvcjogIzY2NjsgcGFkZGluZzogMCAwIDAgMjNweDsgZGlzcGxheTogYmxvY2s7IGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLXNoYXJlLnBuZycpIG5vLXJlcGVhdCAwIGNlbnRlcjsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1jb2xvciB7XHJcbiAgICAgICAgICAgIC5pdGVtIHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBtYXJnaW46IDAgOHB4IDAgMDsgXHJcbiAgICAgICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7IGNvbG9yOiAjNjY2O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgcG9zaXRpb246IHJlbGF0aXZlOyBtaW4td2lkdGg6IDYwcHg7ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGxlZnQ6IDA7IHBhZGRpbmc6IDA7IGN1cnNvcjogcG9pbnRlcjsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgI2VhZWFlYTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpjaGVja2VkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvbi1jaGVjay5wbmcnKSBuby1yZXBlYXQgMTAyJSAxMDIlOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2Y0NzEyZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnF1YW50aXR5IHt9ICAgICAgIFxyXG4gICAgICAgIC5zdG9jayB7IFxyXG4gICAgICAgICAgICAmLmF2YWlsYWJsZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuNjsgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7IGNvbG9yOiAjMWZiMjVhOyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMCAwIDAgMjVweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvbi1jaGVja21hcmsucG5nJykgbm8tcmVwZWF0IDAgMDsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi51bmF2YWlsYWJsZSB7IFxyXG4gICAgICAgICAgICAgICAgY29sb3I6ICM5OTk7IGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYm94LXNjcmVlbi1yYXRlIHsgICAgIFxyXG4gICAgYm9yZGVyOjFweCBzb2xpZCAjZWFlYWVhOyBwYWRkaW5nOiA1NHB4IDEyMHB4IDcwcHggMTAycHg7IG1hcmdpbi1ib3R0b206IDMwcHg7IFxyXG4gICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9ICBcclxuICAgIC5sZWZ0IHtcclxuICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICB9IFxyXG4gICAgLnJpZ2h0IHt3aWR0aDogNjU1cHg7fSBcclxuICAgIC52YWx1ZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMDBweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogI2Y0NzEyZTtcclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O2xpbmUtaGVpZ2h0OiAxLjE5O2NvbG9yOiAjOTk5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc2NyZWVuLXJhdGUge1xyXG4gICAgLmhpc3RvZ3JhbS1zdW1tYXJ5IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IGhlaWdodDogMjBweDsgbWFyZ2luLWJvdHRvbTogMTZweDsgICAgIFxyXG4gICAgICAgIGRpdiB7bGluZS1oZWlnaHQ6IDE3cHg7IGNvbG9yOiAjMzMzOyBmb250LXNpemU6IDEzcHg7fSAgICBcclxuICAgICAgICAudHh0IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6LTdweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xOTtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzY2NjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmhpc3RvZ3JhbS1iYXIgeyBcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDQzcHggMCA0NXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGJhY2tncm91bmQ6ICNjY2M7ICAgXHJcbiAgICAgICAgICAgIGhlaWdodDogNnB4OyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpOyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAudmFsdWUgeyBcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgaGVpZ2h0OiA2cHg7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6MDsgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTsgYmFja2dyb3VuZDogI2Y0NzEyZTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgLmNvdW50IHtwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyB0b3A6IDA7fVxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7bWFyZ2luLWJvdHRvbTogMDt9ICBcclxuICAgIH1cclxufVxyXG4ubm90LXJldmlldyB7IFxyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VhZWFlYTsgcGFkZGluZzogNjVweDsgbWFyZ2luLWJvdHRvbTogMTBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgIGg1IHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMjI7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM2NjY2NjY7bWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yMTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzk5OTk5OTtcclxuICAgIH0gXHJcbn1cclxuLnJvdy1kaXNjdXNzIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IGJvcmRlcjogMXB4IHNvbGlkICNlYWVhZWE7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDcwcHggMzBweCA3MHB4OyBcclxuICAgIC5jb2wge1xyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgJi5sZWZ0IHt3aWR0aDogNTUlOyBwYWRkaW5nLXJpZ2h0OiA1MHB4OyBtYXJnaW4tdG9wOiAxMXB4O30gIFxyXG4gICAgICAgICYucmlnaHQge3dpZHRoOiA0NSU7IHRleHQtYWxpZ246IHJpZ2h0O30gIFxyXG4gICAgfVxyXG4gICAgLnR4dCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW46IDA7IHBhZGRpbmc6IDJweCAwIDAgNTdweDsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogIzk5OTsgXHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDQwcHg7IGhlaWdodDogMjlweDsgY29udGVudDogXCJcIjsgbGVmdDogMDsgdG9wOiAwOyBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWNoYXQtbWQucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRuIHtcclxuICAgICAgICB3aWR0aDogMjAwcHg7IHZlcnRpY2FsLWFsaWduOiB0b3A7IG1hcmdpbjogMCAwIDAgMTBweDsgZm9udC1zaXplOiAxNHB4OyBwYWRkaW5nOiAwIDEwcHggMCAwOyAgXHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7ICAgIFxyXG4gICAgICAgICYuYnRuLXdhIHtcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDEzcHg7IHRvcDogNTAlOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLXdoYXRzYXBwLW1kLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7ICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby13aGF0c2FwcC1tZC1mZmYucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn1cclxufVxyXG4ucG9zdC1jb21tZW50IHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyBcclxuICAgIC5saXN0IHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO3BhZGRpbmc6IDQwcHggMTcwcHggMjBweCA3MHB4O21hcmdpbi1ib3R0b206IDEwcHg7IFxyXG4gICAgICAgIC5yb3ctY29tbWVudCB7IFxyXG4gICAgICAgICAgICBoNCB7Zm9udC1zaXplOiAxOHB4OyBtYXJnaW46OHB4IDAgMTVweCAwO31cclxuICAgICAgICAgICAgcCB7IFxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjQzO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtjb2xvcjogIzY2NjttYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ncmlkLXBpYyB7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gXHJcbiAgICAgICAgICAgICAgICAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoM3B4KTsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc3ViIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTsgXHJcbiAgICAgICAgICAgIC5yb3ctY29tbWVudCB7XHJcbiAgICAgICAgICAgICAgICBoNCB7bWFyZ2luLXJpZ2h0OiAxMHB4O30gXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmluIHtwYWRkaW5nLWJvdHRvbTogNXB4O30gIFxyXG4gICAgICAgICAgICAuc3VibGlzdCB7XHJcbiAgICAgICAgICAgICAgICAubGlzdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAyOHB4IDEwcHggMjhweDsgYm9yZGVyLWxlZnQ6IDA7IGJvcmRlci1yaWdodDogMDsgYm9yZGVyLWJvdHRvbTogMDsgIFxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7bWFyZ2luLWJvdHRvbTowO30gXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG4gICAgJi5kaXNjdXNzIHtcclxuICAgICAgICAucm93LWNvbW1lbnQge1xyXG4gICAgICAgICAgICBoNCB7bWFyZ2luOjAgMTVweCAxMHB4IDA7fSAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucm93LXJlZyB7XHJcbiAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn1cclxuICAgIC5jb2wge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyBcclxuICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgICYuaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQzMHB4OyBtYXJnaW4tcmlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICAuYm94LWltZyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDUwcHggMCAwIDA7XHJcbiAgICAgICAgICAgICAgICAmLnN1Y2Nlc3MgeyBcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4NXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtjb2xvcjogIzk5OTsgbWFyZ2luOiAwIDQ1cHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbGluZS1oZWlnaHQ6IDEuNDM7IGZvbnQtc2l6ZTogMTRweDt9ICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGV4dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NzBweDtcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40MztsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5iYW5rLWFjY291bnQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNDBweDsgYm9yZGVyOjFweCBzb2xpZCAjZWFlYWVhOyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTtcclxuICAgICAgICAgICAgICAgIGZpZ3VyZSB7bWFyZ2luLWJvdHRvbTogMjBweDt9ICBcclxuICAgICAgICAgICAgICAgIHAubmFtZSB7Y29sb3I6ICM2NjY7IG1hcmdpbjogMCAwIDVweCAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7fSBcclxuICAgICAgICAgICAgICAgIHAubnVtYmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzMzMzsgbWFyZ2luOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4xNzsgXHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zbGlkZXItZ29vZG5lc3MgeyBcclxuICAgICAgICAgICAgLmJveC1pbWcge21hcmdpbjowIDAgNDVweCAwO2hlaWdodDogNDMwcHg7fVxyXG4gICAgICAgIH0gICBcclxuICAgICAgICAmLmNlbnRlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOyBmbG9hdDogbm9uZTsgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgICAgICAgICAgcCB7dGV4dC1hbGlnbjogY2VudGVyO30gXHJcbiAgICAgICAgICAgIGxhYmVsIHt0ZXh0LWFsaWduOiBjZW50ZXI7fSBcclxuICAgICAgICAgICAgLmJ0biB7bWFyZ2luOiAwO30gXHJcbiAgICAgICAgfSAgICAgIFxyXG4gICAgfSAgIFxyXG4gICAgJi5yZXN1bHQge1xyXG4gICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICAmLmltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDY1cHg7IG1hcmdpbi1yaWdodDogODBweDsgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4gICAgICAgICAgICB9ICAgXHJcbiAgICAgICAgICAgICYudGV4dCB7d2lkdGg6IDUwMHB4O30gICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYXV0by1jZW50ZXIge1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTsgbWFyZ2luOiBhdXRvOyB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAuYm94LWltZyB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgNTBweCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxufVxyXG4ucHJpY2UgeyBcclxuICAgIGNvbG9yOiAjY2I0NjQ2O1xyXG4gICAgJi53aGl0ZSB7Y29sb3I6ICNmZmY7fSBcclxuICAgICYubGFyZ2Uge2ZvbnQtc2l6ZTogMjBweDsgZm9udC13ZWlnaHQ6IGJvbGQ7fSBcclxufSAgXHJcbi5saXN0LXBheW1lbnQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgYm9yZGVyOjFweCBzb2xpZCAjZWFlYWVhOyBcclxuICAgIC5saXN0IHtcclxuICAgICAgICBtYXJnaW46IDA7IHBhZGRpbmc6IDIwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjc1O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7Y29sb3I6ICM2NjY7ICAgICAgICBcclxuICAgIH1cclxuICAgIC5hY2NsaXN0IHtcclxuICAgICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAjZWFlYWVhOyAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge2JvcmRlci10b3A6IDA7fSAgXHJcbiAgICB9XHJcbiAgICAuYWNjLXRpdGxlIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7ICBcclxuICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4OyBjb250ZW50OiBcIlwiOyByaWdodDogMTNweDsgdG9wOiAyMHB4OyAgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLWFycm93LXJpZ2h0LnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyAgICAgIFxyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMTVzIGVhc2Utb3V0KTsgICAgICAgIFxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgJi5vcGVuIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2VhZWFlYTsgZm9udC13ZWlnaHQ6IGJvbGQ7IFxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoOTBkZWcpKTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG4gICAgLmFjYy1kZXNjcmlwIHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7IGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxpIHtmb250LXNpemU6IDEzcHg7fVxyXG4gICAgICAgIH1cclxuICAgICAgICBvbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxpIHtmb250LXNpemU6IDEzcHg7fVxyXG4gICAgICAgIH0gXHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGlkZXItZ29vZG5lc3Mge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luOiAwOyBcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luOiAwIDJweDsgd2lkdGg6IDEwcHg7IGhlaWdodDogMTVweDsgcGFkZGluZzogMDsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDsgYm9yZGVyOiAwOyB0ZXh0LWluZGVudDogLTk5OTk5OXB4OyBjdXJzb3I6IHBvaW50ZXI7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDRweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA3cHg7IGxlZnQ6IDA7IGJhY2tncm91bmQ6ICNjY2M7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoM3B4KTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5zbGljay1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkZmMyOTg7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ub3B0LWNoZWNrYm94IHtcclxuICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSAgICAgXHJcbiAgICAuaXRlbSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogMCAyNXB4IDAgMDsgXHJcbiAgICAgICAgJi5jb2wtNCB7d2lkdGg6IDIzJTsgbWFyZ2luLXJpZ2h0OiAyLjUlO30gXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6MDt9IFxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IGhlaWdodDogYXV0bzsgY29sb3I6ICM2NjY7IGRpc3BsYXk6IGJsb2NrOyBcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBwb3NpdGlvbjogcmVsYXRpdmU7IG1pbi13aWR0aDogNjBweDsgcGFkZGluZzogMjBweCAzMHB4OyAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGxlZnQ6IDA7IHBhZGRpbmc6IDA7IGN1cnNvcjogcG9pbnRlcjsgXHJcbiAgICAgICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNlYWVhZWE7IHRvcDogMDsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgXHJcbiAgICAgICAgICAgICAgICAmOmNoZWNrZWQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvbi1jaGVjay1sZy5wbmcnKSBuby1yZXBlYXQgMTAyJSAxMDIlOyBcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNmNDcxMmU7IFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweCAyNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM2NjY7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxhYmVsLmVycm9yIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC0yNHB4OyBwYWRkaW5nOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm1kIHtcclxuICAgICAgICAuaXRlbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTdweCAzMHB4OyBcclxuICAgICAgICAgICAgICAgIGxhYmVsLmVycm9yIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuc20ge1xyXG4gICAgICAgIC5pdGVtIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyBtaW4td2lkdGg6IDE4MHB4O1xyXG4gICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMzVweCA3cHggOHB4OyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sb2dvLWJhbmsge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIH0gIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmhhcy1lcnJvciB7XHJcbiAgICAgICAgICAgIC5pdGVtIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBsYWJlbC5lcnJvciB7cGFkZGluZzogMDt9IFxyXG4gICAgICAgICAgICB9IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYubGcge1xyXG4gICAgICAgICAuaXRlbSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7IHBhZGRpbmc6IDAgMTBweCAwIDA7IG1hcmdpbjowIDAgMjBweCAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7ICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYudm91Y2hlciB7XHJcbiAgICAgICAgLml0ZW0ge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlOyBwYWRkaW5nOiAwIDEwcHggMCAwOyBtYXJnaW46MCAwIDIwcHggMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDsgbWluLWhlaWdodDogNjVweDtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyO31cclxuICAgICAgICAgICAgICAgIGlucHV0IHsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygwKTtcclxuICAgICAgICAgICAgICAgICAgICAmOmNoZWNrZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6I2NiNDY0NjsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY29uLWNoZWNrLW1kLXJlZC5wbmcpIG5vLXJlcGVhdCAxMDAlIDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygwKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmJveC1kaXNjIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9iZy1yZWQta3Vwb24ucG5nJykgbm8tcmVwZWF0IDAgMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA3MHB4OyBoZWlnaHQ6IDEwMCU7IHBhZGRpbmc6IDE3cHggMCAwIDA7IFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjIwJSBhdXRvOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7IFxyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgICAgICAgICAgICAgIC5zbWFsbCB7Zm9udC1zaXplOiA4cHg7ZGlzcGxheTogYmxvY2s7IG1hcmdpbjogMDt9XHJcbiAgICAgICAgICAgICAgICAgICAgLnBlcmNlbnQge2ZvbnQtc2l6ZTogMjBweDsgZGlzcGxheTogYmxvY2s7IG1hcmdpbjogMDt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB3aWR0aDogMTAwJTsgcGFkZGluZzogMTJweCAzMHB4IDAgODBweDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyBsaW5lLWhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICAgICAgLnZkYXRlIHtmb250LXNpemU6IDhweDsgY29sb3I6ICM5OTk7IGRpc3BsYXk6IGJsb2NrO31cclxuICAgICAgICAgICAgICAgICAgICAudmRlc2NyaXAge2ZvbnQtc2l6ZTogMTBweDsgZGlzcGxheTogYmxvY2s7IGNvbG9yOiAjMzMzO31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybisyKSB7cGFkZGluZzogMCAwIDAgMTBweDt9IFxyXG4gICAgICAgIH0gICAgXHJcbiAgICB9XHJcbiAgICAmLmhhcy1lcnJvciB7XHJcbiAgICAgICAgLml0ZW0ge21hcmdpbi1ib3R0b206IDMwcHg7fSBcclxuICAgIH1cclxufSBcclxuLmZvcm0tc3RkIHtcclxuICAgIC5hZGQtZm9ybXtcclxuICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMjBweDsgbGluZS1oZWlnaHQ6IDUwcHg7IGJvcmRlcjoxcHggc29saWQgI2Q4ZDhkODsgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDsgXHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtjb2xvcjogIzk5OTsgdGV4dC1hbGlnbjogY2VudGVyOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgc3BhbnsgcG9zaXRpb246IGFic29sdXRlOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2FkZC1yZWQucG5nKSBuby1yZXBlYXQ7IHdpZHRoOiAzMnB4OyBoZWlnaHQ6IDMycHg7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7IGxlZnQ6IDUwJTsgdG9wOiAzNSU7IH1cclxuICAgICAgICBoNXsgcG9zaXRpb246IGFic29sdXRlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpOyBsZWZ0OiA1MCU7IHRvcDogNjUlOyB9XHJcbiAgICB9XHJcbiAgICAuZm9ybS1ncm91cCB7IFxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IFxyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSAgXHJcbiAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge2NvbG9yOiAjOTk5O30gICBcclxuICAgICAgICAmLmlucHV0LWZpbGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJ1dHRvbiB7cGFkZGluZy10b3A6IDEwcHg7fSBcclxuICAgIH0gICBcclxuICAgIC5mb3JtLWNoaWxkIHsgXHJcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMjhweDsgIFxyXG4gICAgICAgIG1hcmdpbjo1cHggMCAxMHB4IDA7ICBcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gIFxyXG4gICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtjb2xvcjogIzk5OTt9IFxyXG4gICAgfSAgXHJcbiAgICAuaW5wdXQge3Bvc2l0aW9uOiByZWxhdGl2ZTt9IFxyXG4gICAgLmJ0biB7bWFyZ2luLXJpZ2h0OiAyMHB4O30gICBcclxuICAgIC5mb3Jnb3Qge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgY29sb3I6ICMxZmIyNWE7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgXHJcbiAgICB9IFxyXG4gICAgYnV0dG9uIHtib3JkZXI6IDA7IGN1cnNvcjogcG9pbnRlcjsgbWFyZ2luLXJpZ2h0OiAyNXB4O30gICAgXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyO2xldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzMzMztcclxuICAgIH0gXHJcbiAgICBsYWJlbC5lcnJvciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IGNvbG9yOiByZWQ7IGZvbnQtc2l6ZTogMTJweDsgcGFkZGluZzogMnB4IDAgMCAwOyBcclxuICAgIH1cclxuICAgIGlucHV0LCB0ZXh0YXJlYSB7ICBcclxuICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1MHB4OyBsaW5lLWhlaWdodDogNTBweDsgYm9yZGVyOjFweCBzb2xpZCAjZDhkOGQ4OyBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsOyBcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM5OTk7IFxyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpOyBcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KDBweCAwcHggNXB4IDBweCByZ2JhKDMxLCAxNzgsIDkyLCAwLjgpKTsgXHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxuICAgIHNlbGVjdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjI1cyBlYXNlLWluLW91dCk7XHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygwcHggMHB4IDVweCAwcHggcmdiYSgzMSwgMTc4LCA5MiwgMC44KSk7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihlYXNlIC4yNXMgZWFzZS1pbi1vdXQpO1xyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMHB4IDBweCAwIDBweCByZ2JhKDMxLCAxNzgsIDkyLCAwLjgpKTsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgICBib3JkZXI6IDA7QGluY2x1ZGUgdHJhbnNpdGlvbihlYXNlIC4yNXMgZWFzZS1pbi1vdXQpO1xyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMHB4IDBweCAwIDBweCByZ2JhKDMxLCAxNzgsIDkyLCAwLjgpKTsgXHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxuICAgIGlucHV0LnNtIHtoZWlnaHQ6IDMwcHg7IGxpbmUtaGVpZ2h0OiAzMHB4OyBwYWRkaW5nOjAgOHB4O30gICBcclxuICAgIC5yZWFkb25seSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2VlZTsgY29sb3I6ICM5OTk7XHJcbiAgICB9XHJcbiAgICB0ZXh0YXJlYSB7aGVpZ2h0OiAxNDBweDsgcmVzaXplOiBub25lOyBsaW5lLWhlaWdodDogMTZweDsgcGFkZGluZy10b3A6IDEwcHg7IHBhZGRpbmctYm90dG9tOiAxMHB4O30gICBcclxuICAgIC50eHQtbG9naW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogIzY2NjtcclxuICAgIH1cclxuICAgIC5yb3ctZGF0ZSB7XHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9IFxyXG4gICAgICAgIC5jb2wtZHQge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgd2lkdGg6IDE3JTsgbWFyZ2luLXJpZ2h0OiA0JTtcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6MDt9IFxyXG4gICAgICAgICAgICAmLmJpcnRoIHt3aWR0aDogMzQlO31cclxuICAgICAgICAgICAgJi5kYXRlIHt3aWR0aDogNjIlO31cclxuICAgICAgICAgICAgJi55ZWFyIHt3aWR0aDogMjAlO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucm93LXN0IHtcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn1cclxuICAgICAgICAuY29sLXN0IHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IFxyXG4gICAgICAgICAgICAmLmxmIHt3aWR0aDogNTglOyBtYXJnaW4tcmlnaHQ6IDQlO30gXHJcbiAgICAgICAgICAgICYucmYge3dpZHRoOiAzOCU7fSBcclxuICAgICAgICAgICAgLmJ0biB7ZGlzcGxheTogYmxvY2s7bWFyZ2luOiAwO30gIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5yb3ctb3B0IHtcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gXHJcbiAgICAgICAgLmNvbC1vcHQge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtwYWRkaW5nLWxlZnQ6MTVweDsgcGFkZGluZy1yaWdodDogMDt9ICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucm93LWhhbGYge1xyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSBcclxuICAgICAgICAuY29sLWhhbGYge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgd2lkdGg6IDUwJTsgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtwYWRkaW5nLWxlZnQ6MTVweDsgcGFkZGluZy1yaWdodDogMDt9IFxyXG4gICAgICAgICAgICBsYWJlbCB7Y29sb3I6ICM2NjY7fSBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuaW5wdXRfZmlsZSB7ICBcclxuICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1MHB4OyBsaW5lLWhlaWdodDogNTBweDsgYm9yZGVyOjFweCBzb2xpZCAjZDhkOGQ4OyBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsOyBcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM5OTk7IGN1cnNvcjogcG9pbnRlcjsgIFxyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7XHJcbiAgICAgICAgaW5wdXQge3BhZGRpbmc6IDAgNTVweCAwIDE1cHg7IHotaW5kZXg6IDU7IGN1cnNvcjogcG9pbnRlcjt9IFxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjRweDsgaGVpZ2h0OiAxMDAlOyBjb250ZW50OiBcIlwiOyByaWdodDogMTZweDsgdG9wOiAwOyBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWZpbGUucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNTVweCAwIDE1cHg7IHotaW5kZXg6IDE7IG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxhYmVsLmVycm9yIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC0yNHB4OyBwYWRkaW5nOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnJvdy1yYWRpbyB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDAgMCAwO1xyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSBcclxuICAgICAgICAucmFkaW8ge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgd2lkdGg6IDI1JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udHJvbC1yYWRpbyB7ICAgIFxyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgbWFyZ2luOiAwIDc1cHggMCAwOyBmbG9hdDogbGVmdDsgICBcclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgcGFkZGluZzogMDsgY3Vyc29yOiBwb2ludGVyOyBcclxuICAgICAgICAgICAgei1pbmRleDogMjsgYmFja2dyb3VuZDogbm9uZTsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBwYWRkaW5nOiAwOyBib3JkZXI6IDA7IFxyXG4gICAgICAgICAgICAmICsgbGFiZWwgeyBcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJiArIGxhYmVsOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxOHB4OyBoZWlnaHQ6IDE4cHg7IGNvbnRlbnQ6IFwiXCI7IHRvcDogMnB4OyBsZWZ0OiAwOyAgICBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1yYWRpby5wbmcnKSBuby1yZXBlYXQgMCAwOyBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMThweCAzNnB4OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmRpc2FibGVkICsgbGFiZWw6YmVmb3JlIHsgICBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICY6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGJvdHRvbTsgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxhYmVsIHsgXHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7IHBhZGRpbmc6IDAgMCAwIDI4cHg7IGNvbG9yOiM2NjY7IFxyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgIFxyXG4gICAgICAgIH1cclxuICAgIH0gICBcclxuICAgIC5ib3gtZGlzY2xhaW1lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAyOHB4IDE3cHggMjhweCA0OHB4OyBib3JkZXI6MXB4IHNvbGlkICNkOGQ4ZDg7IFxyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAuaW5uZXItYm94IHsgXHJcbiAgICAgICAgICAgIGhlaWdodDogMjIwcHg7IG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIH0gIFxyXG4gICAgICAgIHAgeyBcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjQzO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY7IG1hcmdpbi1ib3R0b206IDE4cHg7ICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2VuZC1jb2RlIHtcclxuICAgICAgICBpbnB1dCB7cGFkZGluZy1yaWdodDogNTAlO31cclxuICAgICAgICBhLmJ0bi1zZW5kLWNvZGUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiA0NSU7IGhlaWdodDogNTBweDsgdG9wOiAwOyByaWdodDogMDsgXHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM5OTk7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q4ZDhkODtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDAgMnB4IDJweCAwKTsgXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDojZDhkOGQ4OyBjb2xvcjogIzMzMzsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWFlYWVhOyBtYXJnaW4tYm90dG9tOiAzMHB4OyAgXHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uYm94LXN0ZXAge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyBwb3NpdGlvbjogcmVsYXRpdmU7IG1hcmdpbi1ib3R0b206IDUwcHg7ICAgICAgXHJcbiAgICAuc3RlcCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDM1cHggMjI1cHggMCAwO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMnB4OyBiYWNrZ3JvdW5kOiAjZDhkOGQ4OyB0b3A6IDEzcHg7IHJpZ2h0OiAtMTBweDsgXHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IHotaW5kZXg6IC0xOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAuaWNvIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMzBweDsgaGVpZ2h0OiAzMHB4OyB0b3A6IDA7IGxlZnQ6IDA7IHotaW5kZXg6IDU7IGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgY29udGVudDogXCJcIjsgbGVmdDogNTAlOyB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkOGQ4ZDg7IHotaW5kZXg6IDM7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNTAlKTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsLTUwJSkpOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBzcGFuIHtkaXNwbGF5OiBibG9jazsgbWFyZ2luLWxlZnQ6IC01MCU7IGNvbG9yOiAjOTk5O30gIFxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IFxyXG4gICAgICAgICAgICAmOmFmdGVyIHtkaXNwbGF5Om5vbmU7fSBcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5wYXN0IHtcclxuICAgICAgICAgICAgJjphZnRlciB7YmFja2dyb3VuZDojY2I0NjQ2O30gICAgXHJcbiAgICAgICAgICAgIC5pY28geyAgICBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2ZmZjsgXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OiAxMDAlOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9jaGVja21hcmstcmVkLWxnLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfSAgICAgXHJcbiAgICAgICAgICAgIHNwYW4ge2NvbG9yOiAjY2I0NjQ2O30gICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmN1cnJlbnQgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAuaWNvIHtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNjYjQ2NDY7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3BhbiB7Y29sb3I6ICNjYjQ2NDY7fSBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5yb3ctZm9ybSB7IFxyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAgICAgJi53LWhyeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODsgcGFkZGluZzogMTBweCAwOyBtYXJnaW4tYm90dG9tOiAyMHB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogNTAlOyBwYWRkaW5nOiAwIDE1cHggMCAwOyAgIFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtwYWRkaW5nOiAwIDAgMCAxNXB4O30gXHJcbiAgICAgICAgICAgICYuY29sLXJpZ2h0IHtwYWRkaW5nOiAwIDAgMCAxNXB4O30gXHJcbiAgICAgICAgICAgICYuZnVsbCB7cGFkZGluZzogMjBweCAwIDAgMDsgd2lkdGg6IDEwMCU7fSAgXHJcbiAgICAgICAgICAgICYuc3BhY2UtdG9wIHtwYWRkaW5nOiA0MHB4IDAgMCAwOyB3aWR0aDogMTAwJTt9ICAgXHJcbiAgICAgICAgICAgICYucHJvZmlsLWxlZnQge3dpZHRoOiA3MCU7IHBhZGRpbmctcmlnaHQ6IDYwcHg7fSAgICBcclxuICAgICAgICAgICAgJi5wcm9maWwtcmlnaHQge3dpZHRoOiAzMCU7IHBhZGRpbmctbGVmdDogMDt9ICAgXHJcbiAgICAgICAgICAgICYubm8tc3BhY2Uge3BhZGRpbmc6IDA7fVxyXG4gICAgICAgICAgICAmLmNvbC0zIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMS41NSU7IHBhZGRpbmc6IDA7IG1hcmdpbjogMCAyLjY3JSAzLjclIDA7ICBcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzMpe21hcmdpbi1yaWdodDogMDt9XHJcbiAgICAgICAgICAgICAgICAmLnNwYWNlLWxlZnQge21hcmdpbi1sZWZ0OiAyLjY1JTsgbWFyZ2luLXJpZ2h0OiAwOyBtYXJnaW4tYm90dG9tOiAwO30gICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmNvbC00IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2NS43OCU7IHBhZGRpbmc6IDA7IFxyXG4gICAgICAgICAgICAgICAgJi5zcGFjZS1yaWdodCB7bWFyZ2luLXJpZ2h0OiAyLjY3JTt9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4ucHJpY2UtbGFyZ2UgeyBcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMjRweDsgZm9udC13ZWlnaHQ6IDkwMDsgY29sb3I6ICNjYjQ2NDY7IFxyXG4gICAgJi53aGl0ZSB7Y29sb3I6ICNmZmY7fSBcclxuICAgICYud2hpdGUge2NvbG9yOiAjZmZmO30gXHJcbn1cclxuLmJveC10b3RhbCB7XHJcbiAgICBwYWRkaW5nOiA5cHggMCAwIDA7IFxyXG4gICAgLnR4dC10b3RhbCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBmb250LXNpemU6IDE0cHg7IGxpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyBwYWRkaW5nLXJpZ2h0OiA1NXB4OyBvcGFjaXR5OiAwLjc7IFxyXG4gICAgICAgICYuYXJpc2FueyBvcGFjaXR5OiAxOyBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XHJcbiAgICB9XHJcbiAgICBzcGFuIHtkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7fSAgXHJcbn1cclxuLmNhcnQtb3ZlcnZpZXcge1xyXG4gICAgLnRhYmxlLWNhcnQge2JvcmRlcjoxcHggc29saWQgI2VhZWFlYTsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCk7fSBcclxuICAgIC5wcm9kdWN0LWNhcnQge1xyXG4gICAgICAgIGNvbG9yOiAjMzMzOyBkaXNwbGF5OiBibG9jazsgbWluLWhlaWdodDogNTZweDtcclxuICAgICAgICAmLmdyZWVuLXRleHR7IFxyXG4gICAgICAgICAgICBzcGFueyBjb2xvcjogIzFGQjI1QTsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnByb2R1Y3QtbWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7aGVpZ2h0OiA1NnB4OyBib3JkZXI6MXB4IHNvbGlkICNlYWVhZWE7bWFyZ2luLXJpZ2h0OiAtNHB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgICBcclxuICAgICAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgICAgIGltZyB7aGVpZ2h0OiAxMDAlO31cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByb2R1Y3QtdGl0bGUgeyAgXHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgcGFkZGluZzogMCAwIDAgMTZweDsgZm9udC1zaXplOiAxNnB4OyBcclxuICAgICAgICAgICAgd2lkdGg6IDc5LjglOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYnRuLXJlbW92ZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDAgMCAwIDIwcHg7IFxyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMi44NjtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM5OTk7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDEycHg7IGhlaWdodDogMTAwJTsgY29udGVudDogXCJcIjsgbGVmdDogMDsgdG9wOiAwOyBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLXJlbW92ZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGFibGUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBcclxuICAgICAgICB0aGVhZCB7XHJcbiAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlYWVhZWE7IHBhZGRpbmc6IDI2cHggOXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4xOTtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO2NvbG9yOiAjNjY2O1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7cGFkZGluZy1sZWZ0OjI4cHg7IHBhZGRpbmctcmlnaHQ6IDA7fSAgIFxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtwYWRkaW5nLXJpZ2h0OjI4cHg7fSAgXHJcbiAgICAgICAgICAgICAgICAmLnctY2hlY2sge3dpZHRoOiAzJTsgbGluZS1oZWlnaHQ6IDE0cHg7fSBcclxuICAgICAgICAgICAgICAgICYudy1wcm9kdWN0IHt3aWR0aDogMzQlO3RleHQtYWxpZ246IGxlZnQ7fSBcclxuICAgICAgICAgICAgICAgICYudy1wcmljZSB7d2lkdGg6IDE3JTt0ZXh0LWFsaWduOiByaWdodDt9XHJcbiAgICAgICAgICAgICAgICAmLnctcXR5IHt3aWR0aDogMjElO31cclxuICAgICAgICAgICAgICAgICYudy1zdWJ0b3RhbCB7d2lkdGg6IDExJTt0ZXh0LWFsaWduOiByaWdodDt9IFxyXG4gICAgICAgICAgICAgICAgJi53LWFjdGlvbiB7d2lkdGg6IDglO31cclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9XHJcbiAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTlweCAxNnB4OyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZWFlYWVhO3Bvc2l0aW9uOiByZWxhdGl2ZTsgIFxyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yMTtcclxuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtwYWRkaW5nLWxlZnQ6MjBweDsgcGFkZGluZy1yaWdodDogMDt9ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtwYWRkaW5nLXJpZ2h0OjI4cHg7fVxyXG4gICAgICAgICAgICAgICAgICAgICYudGQtY2hlY2sge2xpbmUtaGVpZ2h0OiAxNHB4O30gXHJcbiAgICAgICAgICAgICAgICAgICAgJi50ZC1wcm9kdWN0IHt0ZXh0LWFsaWduOiBsZWZ0OyBwYWRkaW5nLXJpZ2h0OiAzNXB4O30gXHJcbiAgICAgICAgICAgICAgICAgICAgJi50ZC1wcmljZSB7dGV4dC1hbGlnbjogcmlnaHQ7fSBcclxuICAgICAgICAgICAgICAgICAgICAmLnRkLXN1YnRvdGFsIHt0ZXh0LWFsaWduOiByaWdodDt9IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHt9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ub3RlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgbWFyZ2luOiA1cHggMDsgZm9udC1zdHlsZTogaXRhbGljOyBjb2xvcjogIzk5OTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGZvb3Qge1xyXG4gICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTlweCAxNnB4OyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMjE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM2NjY7XHJcbiAgICAgICAgICAgICAgICAgICAgLnR4dC10b3RhbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IHRvcDogOHB4OyBsZWZ0OiAtMTAwJTsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5NXB4OyBtYXJnaW4tbGVmdDogLTgwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge3BhZGRpbmctbGVmdDoyOHB4OyBwYWRkaW5nLXJpZ2h0OiAwO30gICBcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge3BhZGRpbmctcmlnaHQ6MjhweDt9XHJcbiAgICAgICAgICAgICAgICAgICAgJi50Zi1jaGVjayB7bGluZS1oZWlnaHQ6IDE0cHg7fSAgXHJcbiAgICAgICAgICAgICAgICAgICAgJi50Zi1wcm9kdWN0IHt0ZXh0LWFsaWduOiBsZWZ0OyBwYWRkaW5nLXJpZ2h0OiAzNXB4OyBmb250LXNpemU6IDE2cHg7fSAgXHJcbiAgICAgICAgICAgICAgICAgICAgJi50Zi1zdWJ0b3RhbCB7dGV4dC1hbGlnbjogcmlnaHQ7fSAgIFxyXG4gICAgICAgICAgICAgICAgICAgICYudGYtdG90YWwtcHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAudG90YWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBhZGRpbmctcmlnaHQ6IDU1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7ICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmhpc3Rvcnkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7ICBcclxuICAgICAgICAucHJpY2Uge1xyXG4gICAgICAgICAgICBjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgJi5tZCB7Zm9udC1zaXplOiAxNnB4OyBjb2xvcjogIzMzMzt9ICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgICAgdGhlYWQge1xyXG4gICAgICAgICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM5OTk7IGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgICYudy1wcm9kdWN0IHt3aWR0aDogNjElO30gXHJcbiAgICAgICAgICAgICAgICAgICAgJi53LXByaWNlIHt3aWR0aDogMTIlO31cclxuICAgICAgICAgICAgICAgICAgICAmLnctcXR5IHt3aWR0aDogMTUlO31cclxuICAgICAgICAgICAgICAgICAgICAmLnctc3VidG90YWwge3dpZHRoOiAxMiU7fSBcclxuICAgICAgICAgICAgICAgIH0gIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRib2R5IHtcclxuICAgICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC1jYXJ0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcyJTsgZGlzcGxheTogaW5saW5lLWJsb2NrO3BhZGRpbmc6IDAgNTBweCAwIDA7IG1pbi1oZWlnaHQ6IDEwcHg7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuaGF2ZS12b3VjaGVyIHsgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEudm91Y2hlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTI1cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA0NSU7IHJpZ2h0OiAwOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib2Rlci1ib3gpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgwLCAtNDUlKSk7ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgJi50ci1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LWNhcnQge2NvbG9yOiAjNjY2O30gXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRmb290IHtcclxuICAgICAgICAgICAgICAgIC5wcmljZSB7Y29sb3I6ICNjYjQ2NDY7fSAgXHJcbiAgICAgICAgICAgICAgICB0ciB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGQge2JhY2tncm91bmQ6I2VhZWFlYTt9ICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5saXN0LWluZm97XHJcbiAgICAgICAgICAgIC50YWJsZS1jYXJ0eyBtYXJnaW4tYm90dG9tOiA0MHB4OyBvdmVyZmxvdy14OiBhdXRvOyB9XHJcbiAgICAgICAgICAgIHRhYmxle1xyXG4gICAgICAgICAgICAgICAgdGhlYWR7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHsgdGV4dC1hbGlnbjpsZWZ0OyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7IHRleHQtYWxpZ246cmlnaHQ7IH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRib2R5e1xyXG4gICAgICAgICAgICAgICAgICAgIHRye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7IHRleHQtYWxpZ246bGVmdDsgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkeyB0ZXh0LWFsaWduOnJpZ2h0OyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaWNvLWRvd25sb2FkLW9yYW5nZXsgcG9zaXRpb246IGFic29sdXRlOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1kb3dubG9hZC1vcmFuZ2UucG5nKSBuby1yZXBlYXQ7IHdpZHRoOjIwcHg7IGhlaWdodDogMjBweDsgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRmb290e1xyXG4gICAgICAgICAgICAgICAgICAgIHRyOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRkeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzFGQjI1QTsgY29sb3I6ICNmZmY7IGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHsgdGV4dC1hbGlnbjpsZWZ0OyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7IHRleHQtYWxpZ246cmlnaHQ7IH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYudGFibGUtb3JkZXItc3RhdHVzIHsgXHJcbiAgICAgICAgLnRhYmxlLWNhcnQge2JvcmRlcjogMDt9IFxyXG4gICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjZDhkOGQ4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi50ZC1wcm9kdWN0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgcGFkZGluZy1yaWdodDogMjBweDsgd2lkdGg6IDUwJTsgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC1jYXJ0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDBweDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYudGQtcHJpY2Uge3dpZHRoOiAyMiU7fSAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRkLXN1YnRvdGFsIHt3aWR0aDogMjglO30gICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMHB4OyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGZvb3Qge1xyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOGQ4ZDg7IHRleHQtYWxpZ246IHJpZ2h0OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM5OTk7IHBhZGRpbmctdG9wOiAxMnB4OyBwYWRkaW5nLWJvdHRvbTogMTJweDsgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuYmxhY2sge2NvbG9yOiAjMzMzO30gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmluZm8tdHJhbnNmZXIgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgY29sb3I6ICMzMzM7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRkLW1hcmtldHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucm93LW1hcmtldHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmFmdGVyX2NsZWFyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5oZWFkaW5nLW1keyB3aWR0aDogYXV0bzsgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jdXN0b20tcmFkaW97XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWx7IGxpbmUtaGVpZ2h0OiAyMHB4OyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5ib3gtcGF5bWVudHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaDR7IHRleHQtYWxpZ246IGxlZnQ7IH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAub3B0LWNoZWNrYm94e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnNte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHsgcGFkZGluZzogN3B4OyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsLWNoZWNre1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNlYWVhZWE7IHdpZHRoOiBhdXRvOyBoZWlnaHQ6IGF1dG87IHRleHQtYWxpZ246IGNlbnRlcjttaW4td2lkdGg6IDYwcHg7IHBhZGRpbmc6IDEwcHggNDBweDtiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljb24tY2hlY2stbGcucG5nJykgbm8tcmVwZWF0IDEwMiUgMTAyJTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNmNDcxMmU7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDI1cHg7IGZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjRjQ3MTJFO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmJveC1idG57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwOyBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5yb3ctYWRkcmVzcyB7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICNkOGQ4ZDg7IG1hcmdpbi1ib3R0b206IDIwcHg7IHBhZGRpbmc6IDE2cHggMjdweCAxNnB4IDIwcHg7ICBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTsgXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxcHg7IGhlaWdodDogMTAwJTsgY29udGVudDogXCJcIjsgbGVmdDogNDkuNSU7IHRvcDogMDsgXHJcbiAgICAgICAgYmFja2dyb3VuZDogI2Q4ZDhkODsgXHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLDApKTsgXHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBAZXh0ZW5kIC5hZnRlcl9jbGVhclxyXG4gICAgfVxyXG4gICAgLmNvbCB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA1MCU7IHBhZGRpbmc6IDAgMjZweCAwIDA7XHJcbiAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAmOmxhc3QtY2hpbGQge3BhZGRpbmc6MCAwIDAgMjZweDt9IFxyXG4gICAgICAgIGgzIHttYXJnaW46IDAgMCAzcHggMDt9IFxyXG4gICAgICAgIC5uYW1lLW9yZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmNDcxMmU7IG1hcmdpbjogMCAwIDRweCAwOyAgXHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4yMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmFkZHJlc3Mge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMjE7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEycHggMDsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ib3gta3VyaXIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDE2cHggMCAwIDA7IGJvcmRlcjoxcHggc29saWQgI2Q4ZDhkODsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7ICBcclxuICAgICAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9IFxyXG4gICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDsgcGFkZGluZzogMTdweCAwIDE3cHggMTdweDsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyBib3R0b206IDA7ICAgXHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMjE7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGFiZWwuZXJyb3Ige1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IC0yNHB4OyBwYWRkaW5nOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgICAgXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgY29sb3I6IHJlZDsgZm9udC1zaXplOiAxMnB4OyBwYWRkaW5nOiAycHggMCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNlbGVjdGJveCB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IGhlaWdodDogNTBweDsgbGluZS1oZWlnaHQ6IDUwcHg7IGJvcmRlcjowOyBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KG5vbmUpO1xyXG4gICAgICAgICAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjE7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiByaWdodDtjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4OyBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ24tbGFzdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgLW1zLXRleHQtYWxpZ24tbGFzdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgLW1vei10ZXh0LWFsaWduLWxhc3Q6IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbiB7ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IHZlcnRpY2FsLWFsaWduOiB0b3A7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IGxpbmUtaGVpZ2h0OiA1MHB4OyBib3JkZXI6IDA7IGJhY2tncm91bmQ6IG5vbmU7IHRleHQtYWxpZ246IHJpZ2h0OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IGxpbmUtaGVpZ2h0OiA1MHB4OyBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiByaWdodDtjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcclxuICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgICAgICAmLmhhcy1lcnJvciB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyBcclxuICAgICAgICAgICAgfSAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc2VsZWN0Mi1jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogMDsgaGVpZ2h0OiAxMDAlOyBib3JkZXI6IDA7IHZlcnRpY2FsLWFsaWduOiB0b3A7IFxyXG59XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICBib3JkZXI6IDA7IHBhZGRpbmc6IDA7IGhlaWdodDogMTAwJTsgXHJcbn1cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gICAgYm9yZGVyOiAwOyBoZWlnaHQ6IDEwMCU7IGxpbmUtaGVpZ2h0OiA0OHB4OyBwYWRkaW5nLWxlZnQ6IDE1cHg7IGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGNvbG9yOiAjOTk5O1xyXG59XHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7IFxyXG59XHJcbi5zZWxlY3QyLWRyb3Bkb3duIHtib3JkZXItY29sb3I6ICNjY2M7fVxyXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHtib3JkZXItdG9wOjFweCBzb2xpZCAjY2NjO30gXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xyXG4gICAgcGFkZGluZzogMTBweDsgXHJcbn1cclxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtwYWRkaW5nOiAxMHB4O2ZvbnQtc2l6ZTogMTRweDt9XHJcblxyXG4uc2VsZWN0Mi1kcm9wZG93bi5zZWxlY3QyLWthcmlyIHtib3JkZXItY29sb3I6ICNjY2M7fVxyXG4uc2VsZWN0Mi1rYXJpciAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xyXG4gICAgcGFkZGluZzogNnB4IDdweDsgZm9udC1zaXplOiAxNHB4OyB0ZXh0LWFsaWduOiByaWdodDsgICBcclxufVxyXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDIta2FyaXIuc2VsZWN0Mi1kcm9wZG93bi0tYmVsb3cge2JvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO31cclxuXHJcbi5ib3gtcGF5bWVudCB7IFxyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgYm9yZGVyOjFweCBzb2xpZCAjZDhkOGQ4OyBwYWRkaW5nOiAyOXB4IDI0MHB4IDE4cHggMjhweDsgICAgXHJcbiAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTsgXHJcbiAgICAucm93IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyBcclxuICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1ib3R0b206MDt9IFxyXG4gICAgfSBcclxufVxyXG5cclxuLnJvdy1ub3Rmb3VuZCB7IFxyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgIGZpZ3VyZSB7bGluZS1oZWlnaHQ6IDA7IG1hcmdpbi1ib3R0b206IDMwcHg7fSAgXHJcbiAgICBoMyB7bWFyZ2luLWJvdHRvbTogMTVweDt9XHJcbiAgICBwIHsgXHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjQzO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO2NvbG9yOiAjOTk5OTk5O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucm93LW15LWFjY291bnQge1xyXG4gICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAuY29sIHtcclxuICAgICAgICBmbG9hdDogbGVmdDsgXHJcbiAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAmLmxlZnQtYWNjb3VudCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNS42NSU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYucmlnaHQtYWNjb3VudCB7ICBcclxuICAgICAgICAgICAgd2lkdGg6IDc0LjM1JTsgcGFkZGluZzogMCAwIDAgNzBweDsgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2lkZS1wcm9maWxlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjNmM2YzOyBtYXJnaW4tYm90dG9tOiAyMHB4OyBcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTsgXHJcbiAgICAgICAgLnBob3RvLXByb2ZpbGUge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bzsgbWFyZ2luOiBhdXRvOyBwYWRkaW5nOiAzMHB4IDMwcHg7ICBcclxuICAgICAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMjBweDsgaGVpZ2h0OiAxMjBweDsgYm9yZGVyOjdweCBzb2xpZCAjZmZmOyBcclxuICAgICAgICAgICAgICAgIG1hcmdpbjowIGF1dG8gMTBweCBhdXRvOyAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMCAzcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KSk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNTAlKTtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7bWFyZ2luOiAwO3RleHQtYWxpZ246IGNlbnRlcjt9IFxyXG4gICAgICAgICAgICAubmFtZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xMTtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc21hbGwge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAyO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM5OTk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1wb2luIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzFmYjI1YTsgcGFkZGluZzogMjFweCAxNXB4OyBjb2xvcjogI2ZmZjsgXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygwIDAgNHB4IDRweCk7IFxyXG4gICAgICAgICAgICAudHh0IHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogNDAlOyBwYWRkaW5nOiAwIDE1cHggMCAzNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO2xldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAyM3B4OyBoZWlnaHQ6IDI3cHg7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDA7IHRvcDogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvbi10aXJhcG9pbi5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRvdGFsIHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogNjAlOyBwYWRkaW5nOiAwIDQ4cHggMCAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O2xldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICAucmVkZWVtIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiA0M3B4OyBoZWlnaHQ6IDQzcHg7IHRvcDogLTRweDsgcmlnaHQ6IC0xMHB4OyBcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY29uLXJlZGVlbS5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmVwYyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0ZDQ5NDU7IFxyXG4gICAgICAgICAgICAucGhvdG8tcHJvZmlsZSB7XHJcbiAgICAgICAgICAgICAgICAubmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgLmFjY291bnQtdHlwZSB7ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYm9yZGVyOjFweCBzb2xpZCAjY2I0NjQ2OyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O2xldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO2NvbG9yOiAjY2I0NjQ2O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDZweDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgbWFyZ2luOiAwIDAgMCA0cHg7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubmF2LWFjY291bnQge1xyXG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgI2Q4ZDhkODsgIFxyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyAgXHJcbiAgICAgICAgLnNlbGVjdEZpbHRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IFxyXG4gICAgICAgIH1cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgcGFkZGluZzogMDsgbWFyZ2luOiAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q4ZDhkODtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBwYWRkaW5nOiAyMHB4IDI1cHggMTdweCA2NXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yMTtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY7IFxyXG4gICAgICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHRvcDogMTdweDsgbGVmdDogMjBweDsgY29udGVudDogXCJcIjsgd2lkdGg6IDI3cHg7IGhlaWdodDogMjlweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsIFxyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZjQ3MTJlOyBmb250LXdlaWdodDogYm9sZDsgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYubXktZGFzaGJvYXJkIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9teS1hY2NvdW50LWRhc2gucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5teS1wcm9maWxlIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9teS1hY2NvdW50LXByb2ZpbGUucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5teS1pbmZvIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9teS1hY2NvdW50LWluZm8ucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5teS1hcmlzYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL215LWFjY291bnQtYXJpc2FuLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYubXktb3JkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL215LWFjY291bnQtb3JkZXIucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5teS12b3VjaGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9teS1hY2NvdW50LXZvdWNoZXIucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5teS1wb2luIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjVweDtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzQ5Y2JkNjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbXktYWNjb3VudC1wb2luLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYubXktdG9rbyB7IFxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL215LWFjY291bnQtdG9rby5wbmcnKSBuby1yZXBlYXQgY2VudGVyIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLm15LW1lbWJlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbXktYWNjb3VudC1tZW1iZXIucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5teS1ub3RpZiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbXktYWNjb3VudC1ub3RpZi5wbmcnKSBuby1yZXBlYXQgY2VudGVyIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmxvZ291dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvbG9nb3V0LnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgXHJcbiAgICAgICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4OyBtYXJnaW4tbGVmdDogNjVweDsgcGFkZGluZy1ib3R0b206IDIwcHg7IFxyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IFxyXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAyNXB4IDRweCAxMnB4OyBwb3NpdGlvbjogcmVsYXRpdmU7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDRweDsgaGVpZ2h0OiA0cHg7IGNvbnRlbnQ6IFwiXCI7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjY2NjOyBsZWZ0OiAwOyB0b3A6IDEwcHg7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgICAgICAgICAgJi5hY3Qge1xyXG4gICAgICAgICAgICAgICAgICAgIHVsIHtkaXNwbGF5OiBibG9jazt9IFxyXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hY2NvdW50LWNvbnRlbnQgeyAgICBcclxuICAgICAgICAuZmlsdGVyLWJvdHRvbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfVxyXG4gICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHBhZGRpbmc6IDAgOHB4IDAgMDsgIFxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjNjY2OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2VsZWN0Ym94IHtoZWlnaHQ6IDQwcHg7fVxyXG4gICAgICAgICAgICAuZmlsdGVyLXJhdGUgeyBcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgcGFkZGluZy1sZWZ0OiAxNXB4OyAgXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGhlaWdodDogNDBweDsgcGFkZGluZzogMCA5cHg7IGJvcmRlcjoxcHggc29saWQgI2VhZWFlYTtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDsgY29sb3I6ICM5OTk7IG1hcmdpbjogMCA2cHggMCAwOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBhZGRpbmctbGVmdDogM3B4O30gICBcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzFmYjI1YTsgY29sb3I6ICMxZmIyNWE7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZmlsdGVyLW1vYmlsZSB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IGRpc3BsYXk6IG5vbmU7ICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IHBhZGRpbmc6IDA7IGJvcmRlcjogMDsgbWFyZ2luOiAwOyBcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjExcHg7IGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7IGJhY2tncm91bmQ6ICNmNDcxMmU7IGNvbG9yOiNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7IHBhZGRpbmc6IDBweCAxMHB4IDAgMTBweDsgZmxvYXQ6IGxlZnQ7IGNvbG9yOiNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5pY28ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTRweDsgaGVpZ2h0OiAxNHB4OyBmbG9hdDogcmlnaHQ7IG1hcmdpbjogMCAxNXB4IDAgMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1maWx0ZXIucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgIFxyXG4gICAgICAgIC5maWx0ZXItc2VhcmNoIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4OyBsaW5lLWhlaWdodDogNDBweDsgYm9yZGVyOjFweCBzb2xpZCAjY2NjOyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMCAwIDFweCAjY2NjIGluc2V0KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVye2NvbG9yOiAjOTk5fTsgXHJcbiAgICAgICAgICAgIGZvcm0ge2hlaWdodDogMTAwJTt9IFxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXXtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGxpbmUtaGVpZ2h0OiAxMDAlOyBib3JkZXI6IDA7IHBhZGRpbmc6IDAgMzBweCAwIDExcHg7ICBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogIzk5OTk5OTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDMwcHg7IGhlaWdodDogMTAwJTsgdG9wOiAwOyByaWdodDogMDsgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDsgXHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7IHBhZGRpbmc6IDA7IGN1cnNvcjogcG9pbnRlcjsgXHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tc2VhcmNoLXNtYWxsLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4yNXMgZWFzZS1pbi1vdXQpOyAgXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6MC44OyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgLmJveC1waG90byB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkOGQ4ZDg7IHBhZGRpbmc6IDEwcHg7IHdpZHRoOiAyMTVweDsgaGVpZ2h0OiAyMTVweDsgZmxvYXQ6IHJpZ2h0OyAgIFxyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyAgXHJcbiAgICAgICAgICAgIC8qQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyovXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpOyBcclxuICAgICAgICAgICAgLmlubmVyLXBob3RvIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjoxcHggZGFzaGVkICNkOGQ4ZDg7IHdpZHRoOiAyMTVweDsgaGVpZ2h0OiAyMTVweDsgcG9zaXRpb246IHJlbGF0aXZlOyBcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgICAgICAuaWMtdHh0IHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDc1cHg7IHBhZGRpbmc6IDQ1cHggMjBweCAwIDIwcHg7ICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogNjAlOyBcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgwLC01MCUpKTsgIFxyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDMycHg7IGNvbnRlbnQ6IFwiXCI7IHRvcDogMDsgbGVmdDogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ltYWdlLXBpY3R1cmUucG5nJykgbm8tcmVwZWF0IGNlbnRlciAwOyBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi52MiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDE0MHB4OyAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgICAgICAuaW5uZXItcGhvdG8ge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgLmljLXR4dCB7dG9wOiA1MCU7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudjMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMjM1cHg7ICBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgIC5pbm5lci1waG90byB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTtcclxuICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAuaWMtdHh0IHt0b3A6IDUwJTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnVwbG9hZC1maWxlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB6LWluZGV4OiA1OyBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7IFxyXG4gICAgICAgICAgICAud3JhcC1maWxlcyB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7ICBcclxuICAgICAgICAgICAgICAgIC5pbnB1dC1saXN0IHsgXHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYm9yZGVyOiAwOyBiYWNrZ3JvdW5kOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7ICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAubGlzdC1ib3ggeyAgICBcclxuICAgICAgICAgICAgICAgICAgICAuYm94IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kOiAjZmZmOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgb2JqZWN0LWZpdDogY29udGFpbjsgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAucmVtb3ZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDsgYm90dG9tOiA4cHg7IHJpZ2h0OiA4cHg7ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA1OyB0ZXh0LWluZGVudDogLTk5OTk5OXB4OyAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2ZmZiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC90cmFzaC1pY28ucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KDBweCAxcHggNHB4IC0xcHggIzAwMCk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC51cGxvYWQtZmlsZS10ZXN0aSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgei1pbmRleDogNTsgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgdG9wOiAwOyBsZWZ0OiAwOyBcclxuICAgICAgICAgICAgLndyYXAtZmlsZXMge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyAgXHJcbiAgICAgICAgICAgICAgICAuaW5wdXQtbGlzdCB7IFxyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgICBcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGJvcmRlcjogMDsgYmFja2dyb3VuZDogbm9uZTsgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmxpc3QtYm94IHsgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogI2ZmZjsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG9iamVjdC1maXQ6IGNvbnRhaW47ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLnJlbW92ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAyNHB4OyBoZWlnaHQ6IDI0cHg7IGJvdHRvbTogOHB4OyByaWdodDogOHB4OyAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNTsgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDsgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNmZmYgdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvdHJhc2gtaWNvLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygwcHggMXB4IDRweCAtMXB4ICMwMDApOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1MCUpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAjYWNjb3JkaWFuIHsgXHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoMyB7ICBcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7IG1hcmdpbi1ib3R0b206IDEwcHg7IHBhZGRpbmc6IDIwcHggNDBweDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgYSB7IHBhZGRpbmc6IDAgMTBweDsgZm9udC1zaXplOiAxNnB4OyBsaW5lLWhlaWdodDogMjhweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGRpc3BsYXk6IGJsb2NrOyBjb2xvcjogIzc5NTMxRDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmljby1icmFuY2h7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY28tYnJhbmNoLnBuZykgY2VudGVyIG5vLXJlcGVhdDsgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDsgbGVmdDogMTVweDsgfVxyXG4gICAgICAgICAgICAuaWNvLWNoYXJ0eyBwb3NpdGlvbjogYWJzb2x1dGU7IGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLWNoYXJ0LnBuZykgY2VudGVyIG5vLXJlcGVhdDsgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDsgbGVmdDogMTVweDsgfVxyXG4gICAgICAgICAgICB1bHtcclxuICAgICAgICAgICAgICAgIGxpe1xyXG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdWx7XHJcbiAgICAgICAgICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF7IGNvbG9yOiAjNzk1MzFEOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7ICBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogMCAxNXB4OyB0cmFuc2l0aW9uOiBhbGwgMC4xNXM7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB1bCBsaS5hY3RpdmUgdWwgeyBtYXJnaW4tbGVmdDogNTBweDsgbWFyZ2luLWJvdHRvbTogMDsgfVxyXG4gICAgICAgICAgICB1bCB1bHsgXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcclxuICAgICAgICAgICAgICAgIHVseyBtYXJnaW4tbGVmdDogMTVweDsgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxpLmFjdGl2ZT51bCB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICAgICAgICAgIHVsIGxpLmFjdGl2ZSB1bCBsaSBheyBcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7ICBtYXJnaW4tYm90dG9tOiAxMHB4OyBwYWRkaW5nOiAyMHB4IDQwcHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGZvbnQtd2VpZ2h0OiBib2xkOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdWwgbGkuYWN0aXZlIHVsIGxpLmFjdGl2ZSB1bCBsaSBheyBcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjNjY2OyBmb250LXdlaWdodDogbm9ybWFsOyBcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXJ7IGRpc3BsYXk6bm9uZTsgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5oYXZlLWNoaWxkLmFjdGl2ZSBoMywgLmhhdmUtY2hpbGQuYWN0aXZlID4gYSB7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyeyBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDApKTsgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjE1cyBlYXNlLWluLW91dCk7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaGF2ZS1jaGlsZCBoMywgLmhhdmUtY2hpbGQgID4gYSB7XHJcbiAgICAgICAgICAgICAgICY6YWZ0ZXJ7IGNvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDM1cHg7IGhlaWdodDogMzVweDsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY28tZnVsbC1ibGFjay5wbmcpO3JpZ2h0OiAxMHB4OyB0b3A6IDE1cHg7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTkwZGVnKSk7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4xNXMgZWFzZS1pbi1vdXQpO1xyXG4gICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5saXN0aW5nLW9yZGVyLXRyYW5zYWN0aW9ue1xyXG4gICAgICAgIC5yb3ctdGR0e1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODsgcGFkZGluZy1ib3R0b206IDMwcHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgICAgIEBleHRlbmQgLmFmdGVyX2NsZWFyO1xyXG4gICAgICAgICAgICAuaGVhZGluZy1tZHsgZm9udC1zaXplOiAxNnB4OyB9XHJcbiAgICAgICAgICAgIC5jb2x7IFxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTsgXHJcbiAgICAgICAgICAgICAgICAubGFiZWx7IGZvbnQtc2l6ZTogMTRweDsgbWFyZ2luLWJvdHRvbTogNXB4O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY29sLXNlbGVjdHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7IGhlaWdodDogNTBweDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7XHJcbiAgICAgICAgICAgICAgICBzZWxlY3R7IHdpZHRoOiAxMDAlOyBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7ICBoZWlnaHQ6IDUwcHg7IEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjMzMzOyBib3JkZXI6bm9uZTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvbWF0ZXJpYWwvYXJyLWRyb3Atc20ucG5nKW5vLXJlcGVhdCA5NSUgY2VudGVyOyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJveC1wYXltZW50e1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO3BhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnJvdy1hZGRyZXNze1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgJjpiZWZvcmV7IGRpc3BsYXk6bm9uZTsgfVxyXG4gICAgICAgICAgICAuY29se1xyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSl7d2lkdGg6IDcwJX1cclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpe3dpZHRoOiAzMCU7IGZsb2F0OiByaWdodDsgdGV4dC1hbGlnbjogcmlnaHQ7fVxyXG4gICAgICAgICAgICAgICAgLmxhYmVseyBmb250LWZhbWlseTogXCJMYXRvXCI7IGZvbnQtc2l6ZTogMTBweDsgbGluZS1oZWlnaHQ6IDIwcHg7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogI0Y0NzEyRTsgYm9yZGVyOiAxcHggc29saWQgI0Y0NzEyRTsgd2lkdGg6IGZpdC1jb250ZW50OyBib3JkZXItcmFkaXVzOiA1cHg7dGV4dC1hbGlnbjogY2VudGVyOyBwYWRkaW5nOiA1cHggMTBweDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgZmxvYXQ6IHJpZ2h0OyB9XHJcbiAgICAgICAgICAgICAgICAuaW5saW5lLWJ0bntcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICAubGluay10ZXh0eyBmb250LWZhbWlseTogXCJMYXRvXCI7IGZvbnQtc2l6ZTogMTNweDsgbGluZS1oZWlnaHQ6IDE2cHg7IGNvbG9yOiAjNjY2NjY2OyBib3JkZXI6IDFweCBzb2xpZCAjRDhEOEQ4OyBib3JkZXItcmFkaXVzOiA1cHg7IHBhZGRpbmc6IDVweCAyNXB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmxpbmstaWNve1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZWRpdHsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY28tZWRpdC5wbmcpIG5vLXJlcGVhdDsgd2lkdGg6IDE1cHg7IGhlaWdodDogMTVweDsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogLTMwcHg7IHRvcDogMDsgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZGVsZXRleyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1yZW1vdmUtc21hbGwucG5nKSBuby1yZXBlYXQ7IHdpZHRoOiAxNXB4OyBoZWlnaHQ6IDE1cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IC02MHB4OyB0b3A6IDA7IH1cclxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnJvdy1tYXJrZXR7XHJcbiAgICAgICAgICAgIEBleHRlbmQgLmFmdGVyX2NsZWFyO1xyXG4gICAgICAgICAgICAuaGVhZGluZy1tZHsgd2lkdGg6IDcwJTsgfVxyXG4gICAgICAgICAgICAuY3VzdG9tLXJhZGlvIGxhYmVseyBsaW5lLWhlaWdodDogMjBweDsgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYm94LXBheW1lbnR7IFxyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4OyBcclxuICAgICAgICAgICAgLm9wdC1jaGVja2JveHtcclxuICAgICAgICAgICAgICAgICYuc217XHJcbiAgICAgICAgICAgICAgICAgICAgLml0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTY0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVseyBwYWRkaW5nOiA3cHg7IH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxhYmVsLWNoZWNre1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjZWFlYWVhOyB3aWR0aDogYXV0bzsgaGVpZ2h0OiBhdXRvOyB0ZXh0LWFsaWduOiBjZW50ZXI7bWluLXdpZHRoOiA2MHB4OyBwYWRkaW5nOiAxMHB4IDQwcHg7YmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY29uLWNoZWNrLWxnLnBuZycpIG5vLXJlcGVhdCAxMDIlIDEwMiU7IFxyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2Y0NzEyZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDI1cHg7IGZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjRjQ3MTJFO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jYXJ0LW92ZXJ2aWV3e1xyXG4gICAgICAgICAgICAucHJvZHVjdC1jYXJ0e1xyXG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtdGl0bGV7IHdpZHRoOiA2MCU7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0YWJsZXtcclxuICAgICAgICAgICAgICAgIHRib2R5e1xyXG4gICAgICAgICAgICAgICAgICAgIHRyIHRke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRkLXByaWNleyBwYWRkaW5nOiAxOXB4IDVweDsgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnRkLXByaWNleyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE5cHggNXB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW57IGRpc3BsYXk6IGlubGluZS1ibG9jazsgY29sb3I6ICNGNDcxMkU7bWFyZ2luLXRvcDogNXB4O31cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi50ZC1zdWJ0b3RhbHsgcGFkZGluZzogMTlweCA1cHg7IHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0Zm9vdHtcclxuICAgICAgICAgICAgICAgICAgICB0ciB0ZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi50Zi10b3RhbC1wcmljZXsgcGFkZGluZy1yaWdodDogMTVweDsgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubm8tcGFkeyBwYWRkaW5nOiAzMHB4IDA7IHBhZGRpbmctdG9wOiAwIH1cclxuICAgIH1cclxufVxyXG4uYWNjb3VudC1vdmVydmlldyB7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICNkOGQ4ZDg7IHBhZGRpbmc6IDMwcHggMzBweCAxMHB4IDMwcHg7XHJcbiAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KTsgXHJcbiAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgLnBob3RvIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgXHJcbiAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDkwcHg7IGhlaWdodDogOTBweDsgYm9yZGVyOjRweCBzb2xpZCAjZmZmOyBcclxuICAgICAgICAgICAgbWFyZ2luOjAgYXV0byAxMHB4IGF1dG87ICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KDAgM3B4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4xNikpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1MCUpO1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucm93IHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q4ZDhkODsgcGFkZGluZzogMTJweDsgXHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9IFxyXG4gICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgd2lkdGg6IDQzJTsgdGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAxNHB4OyBcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDsgY29sb3I6ICM2NjY7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMikge3dpZHRoOjU3JTsgcGFkZGluZzogMCAwIDAgMTBweDsgY29sb3I6ICMzMzM7fSBcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtib3JkZXItYm90dG9tOiAwO30gXHJcbiAgICB9XHJcbn1cclxuLnVwbG9hZC1maWxlLW11bHRpcGxlIHtcclxuICAgIG1hcmdpbjogMCAwIDMwcHggMDsgXHJcbiAgICAud3JhcC1maWxlcyB7IFxyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfTsgXHJcbiAgICAgICAgLmlucHV0LWxpc3Qge2Zsb2F0OiBsZWZ0OyBkaXNwbGF5OiBub25lO30gIFxyXG4gICAgICAgIC5saXN0LWJveCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogMTAwJTsgIFxyXG4gICAgICAgICAgICAuYm94IHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBib3JkZXI6IDFweCBzb2xpZCAjZDhkOGQ4OyBcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMS41NTUlO3BhZGRpbmc6IDEwcHg7bWFyZ2luOiAwIDIuNjclIDMuNyUgMDsgaGVpZ2h0OiAxNDBweDsgXHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgIC5pbmJveCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICNkOGQ4ZDg7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnJlbW92ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4OyBib3R0b206IDhweDsgcmlnaHQ6IDhweDsgICBcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA1OyB0ZXh0LWluZGVudDogLTk5OTk5OXB4OyAgICBcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNmZmYgdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvdHJhc2gtaWNvLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMHB4IDFweCA0cHggLTFweCAjMDAwKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb250YWluOyAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbiszKSB7bWFyZ2luLXJpZ2h0OiAwO30gXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtib3JkZXI6IDFweCBzb2xpZCAjZDhkOGQ4O3dpZHRoOiAxNDBweDtoZWlnaHQ6IDE0MHB4OyBcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7IHBhZGRpbmc6IDEwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgICAgICAgICAgLmluIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgI2Q4ZDhkODsgXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuaWMtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO3dpZHRoOiAxMDAlO2hlaWdodDogNjVweDtwYWRkaW5nOiA0MnB4IDEwcHggMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO2ZvbnQtc2l6ZTogMTBweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO2xldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO2NvbG9yOiAjOTk5O1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsLTUwJSkpOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6MzJweDsgaGVpZ2h0OiAzMnB4OyBjb250ZW50OiBcIlwiOyBsZWZ0OiA1MCU7IHRvcDogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bzsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2FkZC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsMCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlucHV0LnRvZ2dsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBiYWNrZ3JvdW5kOiBub25lOyBib3JkZXI6IDA7IFxyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDsgbGVmdDogMDsgY3Vyc29yOiBwb2ludGVyOyBcclxuICAgICAgICAgICAgICAgICAgICAmOmZvY3Vze0BpbmNsdWRlIGJveFNoYWRvdyhub25lKX1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYm94LW5ld3NsZXR0ZXIge1xyXG4gICAgcGFkZGluZzogMCAwIDEwcHggMDtcclxuICAgIC5jaGVja2JveCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBcclxuICAgICAgICBsYWJlbCB7Y29sb3I6ICM5OTk7fSBcclxuICAgIH0gICBcclxufSAgXHJcbi5saXN0aW5nLWFkZHJlc3Mge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAxNnB4IDIwcHg7IG1hcmdpbi1ib3R0b206IDIwcHg7ICBcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZDhkOGQ4OyBjdXJzb3I6IGRlZmF1bHQ7IFxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4xNXMgZWFzZS1pbi1vdXQpOyBcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTsgICAgXHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2Y0NzEyZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogNjUlOyBwYWRkaW5nLXJpZ2h0OiA0MHB4OyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgJi5jb2wtcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMzUlOyBoZWlnaHQ6IDEwMCU7IHBhZGRpbmc6IDA7IHRvcDogMDsgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjE2cHggMjBweCAxNnB4IDA7ICAgXHJcbiAgICAgICAgICAgICAgICAuYm94IHtwb3NpdGlvbjogcmVsYXRpdmU7IGhlaWdodDogMTAwJTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaDMge21hcmdpbjogMCAwIDNweCAwO30gXHJcbiAgICAgICAgICAgIC5uYW1lLW9yZGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZjQ3MTJlO21hcmdpbjogMCAwIDRweCAwO2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxOyAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hZGRyZXNzIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjIxO21hcmdpbjogMCAwIDAgMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYWRkcmVzcy1tYWluIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyByaWdodDogMDsgXHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjQ3MTJlOyBwYWRkaW5nOiAycHggN3B4OyAgXHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogI2Y0NzEyZTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygycHgpOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAud3JhcC1idG4ge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgYm90dG9tOiAwOyByaWdodDogLTVweDsgcGFkZGluZzogMCAwIDAgMDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAwIDAgMCA3cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5lZGl0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDsgdGV4dC1pbmRlbnQ6IDk5OTk5OXB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgY29udGVudDogXCJcIjsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1lZGl0LW1kLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjJweCAyMnB4OyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5yZW1vdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4OyB0ZXh0LWluZGVudDogOTk5OTk5cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB0b3A6IDA7IGxlZnQ6IDA7IGNvbnRlbnQ6IFwiXCI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28tcmVtb3ZlLW1kLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTdweCAyMXB4OyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hZGQtbmV3IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDsgXHJcbiAgICAgICAgICAgICY6aG92ZXIge2JvcmRlci1jb2xvcjojZDhkOGQ4O30gXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDIwcHg7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDA7IGhlaWdodDogODBweDsgYm9yZGVyOiAxcHggZGFzaGVkICNkOGQ4ZDg7IFxyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZzogMTJweDsgIFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgIFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjg7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM5OTk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzJweCAwIDAgMDtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4OyBjb250ZW50OiBcIlwiOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlOyB0b3A6IDA7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1wbHVzLW1kLnBuZycpIG5vLXJlcGVhdCAwIDA7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLDApKTsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi52MiB7IFxyXG4gICAgICAgIC5yb3cge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7IHBhZGRpbmc6IDA7ICAgXHJcbiAgICAgICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDYzJTsgcGFkZGluZy1yaWdodDogMTMwcHg7ICBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDsgIFxyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjE7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjOTk5O1xyXG4gICAgICAgICAgICAgICAgJi5jb2wtcmlnaHQge3dpZHRoOiAzNyU7IHBhZGRpbmc6IDA7IHBvc2l0aW9uOiByZWxhdGl2ZTt9ICAgIFxyXG4gICAgICAgICAgICAgICAgLmxhYmVsIHttYXJnaW46IDAgMCA1cHggMDt9IFxyXG4gICAgICAgICAgICAgICAgLm5hbWUtb3JkZXIge2NvbG9yOiAjMzMzOyBtYXJnaW4tYm90dG9tOiAxMHB4O30gICAgXHJcbiAgICAgICAgICAgICAgICAudGl0bGUtc3RhdHVzIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmNDcxMmU7ICBcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjIxOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5yb3ctYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubGlzdGluZy1ub3RpZiB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q4ZDhkODsgYmFja2dyb3VuZDogI2Y1ZjVmNTsgbWFyZ2luLWJvdHRvbTogMjBweDsgXHJcbiAgICAgICAgcGFkZGluZzogMThweCAxOTBweCAxOHB4IDIwcHg7ICBcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNHB4KVxyXG4gICAgICAgIC5kYXRlIHtjb2xvcjogIzk5OTt9IFxyXG4gICAgICAgIGg0IHttYXJnaW46IDAgMCAzcHggMDt9ICBcclxuICAgICAgICAubm90aWYtZGVzY3JpcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzM7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjNjY2O1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmlkLW9yZGVyIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7IFxyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjI7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjMzMzO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogM3B4OyBcclxuICAgICYud2hpdGUge2NvbG9yOiAjZmZmO31cclxufVxyXG4ubmFtZS1vcmRlciB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IGJvbGQ7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsOyAgXHJcbiAgICBsaW5lLWhlaWdodDogMjRweDtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM5OTk7XHJcbn1cclxuLmRhdGUtb3JkZXIge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDsgIFxyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjE7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjOTk5OyBcclxufVxyXG4ucm93LXRvdGFsLWhpc3Rvcnkge1xyXG4gICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAxMDAlOyAgICAgICAgICAgICAgICAgIFxyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyBtYXJnaW4tYm90dG9tOiAzcHg7IFxyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yMTtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY7XHJcbiAgICB9XHJcbiAgICAuYm94LXByaWNlIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTsgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yMjtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IHJpZ2h0O2NvbG9yOiAjY2I0NjQ2O1xyXG4gICAgICAgIC5wcmljZSB7ICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jdXJyZW5jeSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7ZGlzcGxheTogdGFibGUtY2VsbDsgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICB9ICAgICAgICBcclxuICAgIH1cclxuICAgICYudjIgeyAgICAgICAgIFxyXG4gICAgICAgIGxhYmVsIHtjb2xvcjogIzk5OTt9ICAgICAgXHJcbiAgICAgICAgLmJveC1wcmljZSB7Y29sb3I6ICNmZmY7fSBcclxuICAgIH1cclxufVxyXG4ucm93LXN0YXR1c3tcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGxhYmVsIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jazsgbWFyZ2luLWJvdHRvbTogM3B4OyBcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjE7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiByaWdodDtjb2xvcjogIzY2NjtcclxuICAgIH1cclxuICAgIHNwYW57XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7IHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjI7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAmLmNvbXBsZXRle2NvbG9yOiAjMUZCMjVBO31cclxuICAgICAgICAmLmluY29tcGxldGV7Y29sb3I6ICNjYjQ2NDY7fVxyXG4gICAgfVxyXG59XHJcbi5ncmVlbi10ZXh0eyBjb2xvcjogIzFGQjI1QTsgZm9udC13ZWlnaHQ6IGJvbGQ7IGxpbmUtaGVpZ2h0OiAyOHB4OyB9XHJcbi5saXN0aW5nLW9yZGVyIHsgXHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgXHJcbiAgICAucm93IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1OyBib3JkZXI6IDFweCBzb2xpZCAjZDhkOGQ4OyBtYXJnaW4tYm90dG9tOiAxMHB4OyBcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1cHgpOyAgXHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbil7YmFja2dyb3VuZDogI2ZmZjt9IFxyXG4gICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgcGFkZGluZzogMThweCAyMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICAmLmxlZnQge3dpZHRoOiA2MSU7fVxyXG4gICAgICAgICAgICAmLnJpZ2h0IHt3aWR0aDogMzklOyBwYWRkaW5nLXJpZ2h0OiA5NXB4OyBwb3NpdGlvbjogYWJzb2x1dGU7fSAgIFxyXG4gICAgICAgICAgICAuYm94LWNpcmNsZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiA3NXB4OyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgcmlnaHQ6IDA7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q4ZDhkODsgXHJcbiAgICAgICAgICAgICAgICAuY29sLXNlbGVjdHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0eyB3aWR0aDogMTAwJTsgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyAgaGVpZ2h0OiA4MHB4OyBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTtmb250LXNpemU6IDE4cHg7IGNvbG9yOiAjMzMzOyBib3JkZXI6bm9uZTsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnItZHJvcC1zbS5wbmcpbm8tcmVwZWF0IDk1JSBjZW50ZXI7IHBhZGRpbmctbGVmdDogMzBweDsgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmJveCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBoZWlnaHQ6IDhweDsgd2lkdGg6IDEwMCU7IGxlZnQ6IDA7IHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwtNTAlKSk7ICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5jaXJjbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDhweDsgaGVpZ2h0OiA4cHg7IGJvcmRlcjoycHggc29saWQgIzFmYjI1YTsgXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDsgdmVydGljYWwtYWxpZ246IHRvcDsgbWFyZ2luOiAwIDFweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1jaXJjbGUgW2RhdGEtdG9nZ2xlPVwiZHJvcGRvd24tY2lyY2xlXCJdIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO3RvcDogNTAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLWNpcmNsZXtcclxuICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tY2lyY2xlLWxpc3QgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMDsgb3ZlcmZsb3c6IGhpZGRlbjsgbGlzdC1zdHlsZTogbm9uZTsgcGFkZGluZzogMDsgbWFyZ2luOiAwOyAgbWFyZ2luLXRvcDogNTBweDsgYmFja2dyb3VuZDogI2ZmZjsgIHotaW5kZXg6IDk5OTsgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luOiAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKXsgYm9yZGVyOiAwOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjNjY2NjY2OyBwb3NpdGlvbjogcmVsYXRpdmU7IGxpbmUtaGVpZ2h0OiA0MHB4OyBwYWRkaW5nLWxlZnQ6IDUwcHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4OyBoZWlnaHQ6IDE4cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IHRvcDogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5kZXRhaWx7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9tYXRlcmlhbC9pY28tcGRmLnBuZ1wiKSBuby1yZXBlYXQ7ICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuZWRpdHsgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1lZGl0LWdyZWVuLnBuZ1wiKSBuby1yZXBlYXQ7ICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaGFwdXN7IGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9tYXRlcmlhbC9pY28tZGVsZXRlLnBuZ1wiKSBuby1yZXBlYXQ7ICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5zaG93e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgbWF4LWhlaWdodDogOTk5OXB4OyBib3JkZXI6IDFweCBzb2xpZCAjRDhEOEQ4OyBwYWRkaW5nOiAxMHB4OyBib3JkZXItcmFkaXVzOiA1cHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDIzMHB4OyBoZWlnaHQ6IDEyMHB4OyBsZWZ0OiAtMTc1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuaGlkZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9IFxyXG4gICAgJi53aXRoLWRhdGV7XHJcbiAgICAgICAgLnJvd3tcclxuICAgICAgICAgICAgLmNvbHtcclxuICAgICAgICAgICAgICAgICYubGVmdHsgd2lkdGg6IDcwJTsgfVxyXG4gICAgICAgICAgICAgICAgJi5yaWdodHsgd2lkdGg6IDMwJTsgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kYXRlLWhpc3Rvcnl7XHJcbiAgICAgICAgICAgIC5sZWZ0e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICAmLnBvaW4ge1xyXG4gICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICAmLnJpZ2h0IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IHRleHQtYWxpZ246IHJpZ2h0OyAgXHJcbiAgICAgICAgICAgICAgICAucG9pbi12YWx1ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO2xldHRlci1zcGFjaW5nOiBub3JtYWw7Y29sb3I6ICMxZmIyNWE7IFxyXG4gICAgICAgICAgICAgICAgICAgICYubWludXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2NiNDY0NjsgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnZhbHVlLXNtIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6ICM5OTk7IGZvbnQtd2VpZ2h0OiBib2xkOyBcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzFmYjI1YTsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmJveC1wYWR7XHJcbiAgICAgICAgcGFkZGluZzogMzBweDsgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAucm93e1xyXG4gICAgICAgICAgICAuY29se1xyXG4gICAgICAgICAgICAgICAgJi5yaWdodHsgd2lkdGg6IDMwJTsgfVxyXG4gICAgICAgICAgICAgICAgJi5sZWZ0eyB3aWR0aDogNzAlOyB9XHJcbiAgICAgICAgICAgICAgICAuYm94LWNpcmNsZXtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgaDJ7IGNvbG9yOiAjMzMzMzMzOyBmb250LXNpemU6IDE4cHg7IGxpbmUtaGVpZ2h0OiA3OHB4OyB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAucm93LXN0YXR1c3tcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbHsgbGluZS1oZWlnaHQ6IDIuOSB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxlZnR7IHdpZHRoOiAzNSU7IH1cclxuICAgICAgICAucmlnaHR7IHdpZHRoOiA2NSU7IH1cclxuICAgICAgICAucHJvZHVjdC1jYXJ0IHtcclxuICAgICAgICAgICAgY29sb3I6ICMzMzM7IGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAmLmdyZWVuLXRleHR7IFxyXG4gICAgICAgICAgICAgICAgc3BhbnsgY29sb3I6ICMxRkIyNUE7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByb2R1Y3QtbWQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwJTtoZWlnaHQ6IDQwcHg7IGJvcmRlcjoxcHggc29saWQgI2VhZWFlYTttYXJnaW4tcmlnaHQ6IC00cHg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoMnB4KTsgICBcclxuICAgICAgICAgICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtoZWlnaHQ6IDEwMCU7fVxyXG4gICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucHJvZHVjdC10aXRsZSB7ICBcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgcGFkZGluZzogMCAwIDAgMTZweDsgZm9udC1zaXplOiAxNnB4OyBcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2OSU7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cyB7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICNkOGQ4ZDg7IFxyXG4gICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCk7ICBcclxuICAgIC5yb3ctaGVhZCB7XHJcbiAgICAgICAgcGFkZGluZzogMThweCAzMHB4OyBiYWNrZ3JvdW5kOiAjNGQ0OTQ1OyBjb2xvcjogI2ZmZjtcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gXHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDRweCA0cHggMCAwKTsgICBcclxuICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpOyAgXHJcbiAgICAgICAgICAgICYubGVmdCB7d2lkdGg6IDgwJTsgcGFkZGluZzogMCA1MHB4IDAgMDt9ICAgIFxyXG4gICAgICAgICAgICAmLnJpZ2h0IHt3aWR0aDogMjAlO30gICBcclxuICAgICAgICAgICAgLmR1cC1pbmZveyBcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLXJpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZGF0ZS1oaXN0b3J5e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgLmlkLW9yZGVyeyBjb2xvcjogI2ZmZjt9XHJcbiAgICAgICAgICAgIC5sZWZ0e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICBcclxuICAgIC5yb3ctbWlkIHsgIFxyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAxMHB4IDMwcHg7ICBcclxuICAgICAgICAmLm1pZHJldmlldyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMjBweCA0MHB4IDIwcHg7ICBcclxuICAgICAgICB9ICAgXHJcbiAgICB9XHJcbn1cclxuXHJcbi5yb3ctcmVzdWx0LXBvaW4ge1xyXG4gICAgYmFja2dyb3VuZDogIzFmYjI1YTsgcGFkZGluZzogMzBweCA1OXB4IDMwcHggNTdweDsgbWFyZ2luLWJvdHRvbTogNDBweDsgICAgXHJcbiAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTsgXHJcbiAgICAucm93IHtcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn1cclxuICAgICAgICAuYm94IHsgXHJcbiAgICAgICAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDsgbWFyZ2luLXJpZ2h0OiA5MHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctcmlnaHQ6IDYycHg7IFxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDsgXHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICNmZmY7IFxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAzNHB4OyBoZWlnaHQ6IDM5cHg7IGNvbnRlbnQ6IFwiXCI7IHRvcDogNTAlOyByaWdodDogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvbi10aXJhcG9pbi1sZy5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgIFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzRweCAzOXB4OyAgICBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsLTUwJSkpOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudmFsdWUtcG9pbiB7ICBcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtmb250LXdlaWdodDogOTAwO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O2xldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogcmlnaHQ7Y29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDE3cHg7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udm91Y2hlci1zZWFyY2ggeyAgXHJcbiAgICBwYWRkaW5nOiAzMHB4IDYwcHg7IGJhY2tncm91bmQ6ICNmNWY1ZjU7IG1hcmdpbi1ib3R0b206IDQwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgIFxyXG4gICAgbGFiZWwgeyBcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246IG1pZGRsZTsgbGluZS1oZWlnaHQ6IDUwcHg7IG1hcmdpbjogMCAyMHB4IDAgMDsgXHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICM2NjY7XHJcbiAgICB9XHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7bGluZS1oZWlnaHQ6IDUwcHg7IGhlaWdodDogNTBweDsgbWFyZ2luOjAgMjBweCAwIDA7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgcGFkZGluZzogMCAxNXB4OyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjNjY2OyB3aWR0aDogMzYwcHg7IFxyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMjVzIGVhc2UtaW4tb3V0KTsgXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNoYWRvdygwcHggMHB4IDVweCAwcHggcmdiYSgzMSwgMTc4LCA5MiwgMC44KSk7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IGxpbmUtaGVpZ2h0OiA1MHB4OyBib3JkZXI6IDA7IGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG4ucm93LXZvdWNoZXIgeyBcclxuICAgIC5yb3cge1xyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfVxyXG4gICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICB3aWR0aDogNDglOyBtYXJnaW46IDAgNCUgNCUgMDsgcG9zaXRpb246IHJlbGF0aXZlOyBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhOyBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybisyKSB7bWFyZ2luOiAwIDAgMCAwO30gIFxyXG4gICAgICAgICAgICAudmFsdWUta3Vwb24ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2MHB4OyBoZWlnaHQ6IDEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2JnLXJlZC1rdXBvbi5wbmcnKSByZXBlYXQteSBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlOyBcclxuICAgICAgICAgICAgICAgIC5ib3gge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogNDVweDsgdG9wOiA1MCU7IGxlZnQ6IDA7IHBhZGRpbmc6IDAgMzBweDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjZmZmOyBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwtNTAlKSk7IFxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO2xpbmUtaGVpZ2h0OiAxMnB4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnBlcmNlbnRhZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50ZXh0IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDE4M3B4OyBcclxuICAgICAgICAgICAgICAgIC5kYXRlIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtjb2xvcjogIzk5OTsgbWFyZ2luOiAwIDAgMThweCAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRlc2NyaXAgeyBcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzM7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjMzMzO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjowIDAgMThweCAwOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC53cmFwLWJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucmVzdWx0LXNlYXJjaCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyOXB4OyBcclxuICAgIC5saXN0IHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTsgIFxyXG4gICAgICAgIGEgeyBcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IDI5cHggMDsgICBcclxuICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS4zMztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZjQ3MTJlOyBtYXJnaW4tYm90dG9tOiAxNXB4OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtsaW5lLWhlaWdodDogMS40MztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzOyBtYXJnaW46IDA7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQoKSB7Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNlYWVhZWE7fSBcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyOXB4IDE1cHggMjlweCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2YyZjJmMjtcclxuICAgICAgICAgICAgICAgIGg0IHtjb2xvcjogI2VhNjcyNTt9XHJcbiAgICAgICAgICAgICAgICBwIHtjb2xvcjogIzIyMjt9IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5tYWluc2xpZGVyLWFyZWEge1xyXG4gICAgcGFkZGluZzogMjBweCAyMHB4IDMwcHggMjBweDsgYm9yZGVyOjFweCBzb2xpZCAjZDhkOGQ4OyBtYXJnaW4tYm90dG9tOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7ICAgIFxyXG4gICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDNweCk7XHJcbiAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbn1cclxuLmZvcm0tYWRkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICAuYnV0dG9uLWFkZCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBib3JkZXI6MXB4IHNvbGlkICNkOGQ4ZDg7IHBhZGRpbmc6IDIwcHg7IGxlZnQ6IDA7IGJvdHRvbTogMDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7ICBcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoM3B4KTsgIFxyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KVxyXG4gICAgICAgIC5pbm4ge1xyXG4gICAgICAgICAgICBib3JkZXI6MXB4IGRhc2hlZCAjZDhkOGQ4OyBwYWRkaW5nOiAxNXB4IDA7ICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDNweCk7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAuaWMtdGV4dCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAzOHB4IDAgMCAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjg7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM5OTk7IFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDMycHg7IGhlaWdodDogMzJweDsgY29udGVudDogXCJcIjsgbGVmdDogNTAlOyB0b3A6IDA7IFxyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvYWRkLXJlZC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUpKTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucmVtb3ZlLWFkZCB7IFxyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDI0cHg7IGhlaWdodDogMjRweDsgYm90dG9tOiAxM3B4OyBsZWZ0OiA1MCU7ICAgXHJcbiAgICAgICAgei1pbmRleDogNTsgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDsgY3Vyc29yOiBwb2ludGVyOyAgICBcclxuICAgICAgICBiYWNrZ3JvdW5kOiNmZmYgdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvdHJhc2gtaWNvLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICBAaW5jbHVkZSBib3hTaGFkb3coMHB4IDFweCA0cHggLTFweCAjMDAwKTsgXHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IFxyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSkpOyBcclxuICAgIH1cclxufVxyXG5cclxuLmZvcm0tdGVzdGkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWJvdHRvbTogMTAwcHg7ICAgICAgICAgIFxyXG4gICAgLnRlc3RpbW9uaS1hcmVhIHsgXHJcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDMwcHggMjBweDsgYm9yZGVyOjFweCBzb2xpZCAjZDhkOGQ4OyBtYXJnaW4tYm90dG9tOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7ICAgIFxyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpO1xyXG4gICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfTsgIFxyXG4gICAgfSAgICAgICAgIFxyXG4gICAgLnBlc2VydGEtYXJlYSB7IFxyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgIHBhZGRpbmctYm90dG9tOiAzMHB4OyAgXHJcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDNweCk7XHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9OyAgXHJcbiAgICB9XHJcbiAgICAuYnV0dG9uLXRlc3RpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IGJvcmRlcjoxcHggc29saWQgI2Q4ZDhkODsgcGFkZGluZzogMjBweDsgbGVmdDogMDsgYm90dG9tOiAwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgIFxyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygzcHgpOyAgXHJcbiAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpXHJcbiAgICAgICAgLmlubiB7XHJcbiAgICAgICAgICAgIGJvcmRlcjoxcHggZGFzaGVkICNkOGQ4ZDg7IHBhZGRpbmc6IDE1cHggMDsgIFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoM3B4KTsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pYy10ZXh0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDM4cHggMCAwIDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuODtsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzk5OTsgXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4OyBjb250ZW50OiBcIlwiOyBsZWZ0OiA1MCU7IHRvcDogMDsgXHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9hZGQtcmVkLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSkpOyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5yZW1vdmUtdGVzdGkgeyBcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAyNHB4OyBoZWlnaHQ6IDI0cHg7IGJvdHRvbTogMTNweDsgbGVmdDogNTAlOyAgIFxyXG4gICAgICAgIHotaW5kZXg6IDU7IHRleHQtaW5kZW50OiAtOTk5OTk5cHg7IGN1cnNvcjogcG9pbnRlcjsgICAgXHJcbiAgICAgICAgYmFja2dyb3VuZDojZmZmIHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL3RyYXNoLWljby5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjsgXHJcbiAgICAgICAgQGluY2x1ZGUgYm94U2hhZG93KDBweCAxcHggNHB4IC0xcHggIzAwMCk7IFxyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1MCUpOyBcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUpKTsgXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxyXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7QGluY2x1ZGUgYm9yZGVyUmFkaXVzKDApO30gICBcclxuLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyIHttYXJnaW4tcmlnaHQ6IDQwcHg7fVxyXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7d2lkdGg6IDZweDsgYmFja2dyb3VuZDogI2VhZWFlYTt9XHJcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge3dpZHRoOiA2cHg7IGJhY2tncm91bmQ6ICM5OTk7fSBcclxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXHJcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcixcclxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5O1xyXG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTEpXCI7IFxyXG59XHJcblxyXG5cclxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA0cHg7IFxyXG59XHJcbi51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQge1xyXG4gICAgei1pbmRleDogMTUgIWltcG9ydGFudDsgIFxyXG59XHJcbi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLCAudWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIHtcclxuICAgIHBhZGRpbmc6IDVweDsgXHJcbn1cclxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiwgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XHJcbiAgICB0b3A6IDVweDsgXHJcbn1cclxuXHJcbi5yb3ctdmlldyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyBcclxuICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfSBcclxuICAgIC5jb2wge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyB3aWR0aDogMzIuNSU7IG1hcmdpbjogMCAxLjIlIDAgMDsgXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6MDt9IFxyXG4gICAgICAgIGg1IHtjb2xvcjogIzY2NjsgdGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW46IDAgMCAxMHB4IDA7fSAgXHJcbiAgICB9XHJcbiAgICAmLnR5cGUtMiB7XHJcbiAgICAgICAgLmNvbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyOC43JTsgXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7d2lkdGg6NDAlO31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJveC1jYXJkIHtcclxuICAgIGhlaWdodDogOTBweDsgXHJcbiAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAmLmJsdWUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICM1N2NiZmU7IGJvcmRlci1ib3R0b206IDIwcHggc29saWQgIzAyOTNkNDsgIFxyXG4gICAgfVxyXG4gICAgJi5ncmVlbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzQ1YjdhZjsgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCAjMzM4OTdlOyAgXHJcbiAgICB9XHJcbiAgICAmLnJlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZhNmE2MjsgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCAjZjUxYzE1OyAgXHJcbiAgICB9XHJcbiAgICAuaWNvIHtcclxuICAgICAgICB3aWR0aDogNTRweDsgaGVpZ2h0OiA1NHB4OyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogNXB4IDAgMCAxMHB4OyBcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxyXG4gICAgICAgICYuY2FsIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvY2FsZW5kYXItZmZmLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDU0cHggNTRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5wZW9wbGUgeyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNmZmYgdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvcGVvcGxlLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyBtYXJnaW4tdG9wOiA4cHg7IFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IFxyXG4gICAgICAgIH1cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IGxpbmUtaGVpZ2h0OiA0MHB4OyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjZmZmOyB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGxlZnQ6IDA7IGJvdHRvbTogMDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnR4dCB7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAxMHB4IDAgNzVweDsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAzOyB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn0gXHJcbiAgICAgICAgLnF0eSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDI0cHg7IG1hcmdpbjogMCAwIDVweCAwOyBcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNtYWxsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNsIHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA1MCU7IHBhZGRpbmc6IDAgMTBweCAwIDA7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtwYWRkaW5nOjAgMCAwIDEwcHg7fSBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5yb3ctY2hhcnRzIHtcclxuICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfVxyXG4gICAgLmNvbCB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiA0OSU7IG1hcmdpbjogMCAyJSAwIDA7XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6MDt9ICBcclxuICAgIH1cclxufVxyXG5cclxuLmhpZ2hjaGFydHMtY3JlZGl0cyB7ZGlzcGxheTogbm9uZTt9IFxyXG4uaGlnaGNoYXJ0cy1heGlzLFxyXG4uaGlnaGNoYXJ0cy15YXhpcyB7ZGlzcGxheTogbm9uZTt9ICBcclxuXHJcbi5kYWlseS1jaGFydCB7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICMwMzkyZDQ7IG1hcmdpbi1ib3R0b206IDIwcHg7ICAgXHJcbiAgICBoNSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzAzOTJkNDsgY29sb3I6ICNmZmY7IGZvbnQtc2l6ZTogMTZweDsgcGFkZGluZzogMTBweCAxMHB4OyBcclxuICAgIH1cclxufSBcclxuLmRhaWx5Y2hhcnQge1xyXG4gICAgcGFkZGluZzoyMHB4IDEwcHg7XHJcbn1cclxuLm1vbnRobHktY2hhcnQge1xyXG4gICAgYm9yZGVyOjFweCBzb2xpZCAjZjE5NTAxOyBtYXJnaW4tYm90dG9tOiAyMHB4OyAgIFxyXG4gICAgaDUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmMTk1MDE7IGNvbG9yOiAjZmZmOyBmb250LXNpemU6IDE2cHg7IHBhZGRpbmc6IDEwcHggMTBweDsgXHJcbiAgICB9XHJcbn0gXHJcbi5tb250aGx5Y2hhcnQge1xyXG4gICAgcGFkZGluZzogMCAyMHB4IDE1cHggMDtcclxufVxyXG4ucXVhcnRlcmx5LWNoYXJ0IHtcclxuICAgIGJvcmRlcjoxcHggc29saWQgI2YzMWMxNDsgbWFyZ2luLWJvdHRvbTogMjBweDsgICBcclxuICAgIGg1IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjMxYzE0OyBjb2xvcjogI2ZmZjsgZm9udC1zaXplOiAxNnB4OyBwYWRkaW5nOiAxMHB4IDEwcHg7IFxyXG4gICAgfVxyXG59IFxyXG4ucXVhcnRlcmx5Y2hhcnQge1xyXG4gICAgcGFkZGluZzogMCAyMHB4IDE1cHggMDtcclxufVxyXG4ubm8tbWFyZ2lueyBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxyXG4uY3VzdG9tLXJhZGlve1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGxhYmVse1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO3RleHQtYWxpZ246cmlnaHQ7Zm9udC1zaXplOiAxNnB4O2xpbmUtaGVpZ2h0OjUwcHg7Y29sb3I6IzQ4NTM1YjsgbWFyZ2luLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgc3BhbntkaXNwbGF5OiBibG9jazt9XHJcbiAgICAgICAgJi5kb3VibGUtbGluZXtsaW5lLWhlaWdodDogMjBweDtsZXR0ZXItc3BhY2luZzogLS41cHg7cGFkZGluZy10b3A6NXB4O1xyXG4gICAgICAgICAgICBzcGFue2NvbG9yOiNhMGE2YTg7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5yYWRpby1idG57XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO3BhZGRpbmctbGVmdDoyNnB4OyBcclxuICAgICAgICBpbnB1dFt0eXBlPXJhZGlvXXtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY28tcmFkaW8ucG5nKTtmbG9hdDpsZWZ0O21hcmdpbjphdXRvO3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7cG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDoxNXB4O2xlZnQ6MDtcclxuICAgICAgICAgICAgJjpjaGVja2Vke2JhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sYmFua3tcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgJi5hY3RpdmUgLmJ0bi1zdGR7YmFja2dyb3VuZDojZjU4MjIwO31cclxuICAgICAgICAucmFkaW9uLWJ0biAuYnRuLXN0ZHtjdXJzb3I6IHBvaW50ZXI7fVxyXG4gICAgfVxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1sZWZ0OiAzNXB4OyBtYXJnaW4tYm90dG9tOiAxMnB4OyBjdXJzb3I6IHBvaW50ZXI7IC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC1tcy11c2VyLXNlbGVjdDogbm9uZTsgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgaW5wdXQgeyBwb3NpdGlvbjogYWJzb2x1dGU7IG9wYWNpdHk6IDA7IGN1cnNvcjogcG9pbnRlcjsgaGVpZ2h0OiAwOyB3aWR0aDogMDsgfVxyXG4gICAgfVxyXG4gICAgLmNoZWNrbWFyayB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyBoZWlnaHQ6IDIwcHg7IHdpZHRoOiAyMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBib3JkZXItcmFkaXVzOiAxMDAlOyBib3JkZXI6IDFweCBzb2xpZCAjNjY2NjY2OyB9XHJcbiAgICAuY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHsgcGFkZGluZzogMTBweDsgYm94LXNpemluZzogYm9yZGVyLWJveDsgYm9yZGVyLWNvbG9yOiAjZjQ3MTJlOyB9XHJcbiAgICAuY2hlY2ttYXJrOmFmdGVyIHsgY29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBub25lOyB3aWR0aDogMTNweDsgaGVpZ2h0OiAxM3B4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQ3MTJlOyB0b3A6NTAlOyBsZWZ0OiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyBib3JkZXItcmFkaXVzOiAxMDAlIH1cclxuICAgIC5jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCB+IC5jaGVja21hcms6YWZ0ZXIgeyBkaXNwbGF5OiBibG9jazsgfVxyXG59XHJcbi5icmVhZGNydW1ie1xyXG4gICAgdWx7XHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgZm9udC13ZWlnaHQ6IDQwMDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXN0cmV0Y2g6IG5vcm1hbDsgbGluZS1oZWlnaHQ6IDEuMjE7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7IHRleHQtYWxpZ246IGxlZnQ7IGNvbG9yOiAjOTk5OyBwYWRkaW5nLXRvcDogN3B4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1sZWZ0OiAwOyBwYWRkaW5nLXJpZ2h0OiAzMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICAgICAmOmFmdGVyeyBwb3NpdGlvbjphYnNvbHV0ZTsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pYy1hcnJvdy1yaWdodC5wbmcpOyB3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4OyByaWdodDogMDsgdG9wOiA0cHg7IH1cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgJjphZnRlcnsgZGlzcGxheTpub25lOyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYXsgY29sb3I6ICMxZmIyNWE7IH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLnN0YXktd2Ege1xyXG4gICAgcG9zaXRpb246IGZpeGVkOyB6LWluZGV4OiA5OTsgcmlnaHQ6IDgwcHg7IGJvdHRvbTogNzVweDtcclxuICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDYwcHg7IGhlaWdodDogNjBweDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDUwJSk7IGZvbnQtc2l6ZTogMDsgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgJi53YSB7YmFja2dyb3VuZDogIzU1Q0Q2QyB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28td2EucG5nJyluby1yZXBlYXQgY2VudGVyO31cclxuICAgIH1cclxufVxyXG4vKiBmb290ZXJcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbmZvb3RlciB7XHJcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgI2RmYzI5ODsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiA1OyBiYWNrZ3JvdW5kOiAjZmZmOyAgIFxyXG4gICAgLmZvb3QtdG9wIHtcclxuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgIzc5NTMxZDsgaGVpZ2h0OiAzNDBweDsgb2JqZWN0LWZpdDogY29udGFpbjsgcGFkZGluZzogNjlweCAwIDkycHggMDsgIFxyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2JnLWZvb3RlLXRvcC5wbmcnKSByZXBlYXQteCAwIDA7IFxyXG4gICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAucm93IHtcclxuICAgICAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAgICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IFxyXG4gICAgICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMTk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDMuMnB4O3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxM3B4IDAgMCAwOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDogbm9ybWFsO2ZvbnQtc3R5bGU6IG5vcm1hbDtmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE5O2xldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAwOyBkaXNwbGF5OiBibG9jazsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojYzBmOWQ3O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5jb2wtMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE3MHB4OyBwYWRkaW5nLXJpZ2h0OiA1OHB4OyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuY29sLTQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgd2lkdGg6IDMxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC5yb3ctc2VhcmNoIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgbWFyZ2luLWJvdHRvbTogMTFweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5maWVsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7IGJhY2tncm91bmQ6ICMxMDUzMmI7IHBvc2l0aW9uOiByZWxhdGl2ZTsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXJ7Y29sb3I6ICNhOWRjYmU7fSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogbm9uZTsgYm9yZGVyOiAwOyBwYWRkaW5nOiAwIDc1cHggMCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O2xldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogbGVmdDtjb2xvcjogI2E5ZGNiZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogNjVweDsgaGVpZ2h0OiAxMDAlOyB0b3A6IDA7IHJpZ2h0OiAwOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lOyBwYWRkaW5nOiAwIDAgMCAwOyBib3JkZXI6IDA7IGN1cnNvcjogcG9pbnRlcjsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTk7bGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZGZjMjk4OyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5ub3RlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O2xpbmUtaGVpZ2h0OiAxLjI1O3RleHQtYWxpZ246IGxlZnQ7Y29sb3I6ICNmZmY7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuYm94LXNvY2lhbG1lZGlhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge0BleHRlbmQgLmFmdGVyX2NsZWFyfTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IHdpZHRoOiAzNnB4OyBoZWlnaHQ6IDM2cHg7IHRleHQtaW5kZW50OiAtOTk5OTk5cHg7IG1hcmdpbjogMCAyMHB4IDAgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuc2MtZmIge2JhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1mYi5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjt9IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5zYy10dyB7YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbWF0ZXJpYWwvaWNvLXR3LnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO30gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnNjLWlnIHtiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tYXRlcmlhbC9pY28taWcucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7fSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuc2MteXQge2JhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby15dC5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjt9IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6IDA7fSAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICB9IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb290LWJvdHRvbSB7XHJcbiAgICAgICAgcGFkZGluZzogMjJweCAwIDIxcHggMDsgXHJcbiAgICAgICAgLm90aGVyLW5hdiB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTo1cHg7ICAgXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbjogMCAtNHB4IDAgMDtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2xpbmUtaGVpZ2h0OiAxLjIxOyBjb2xvcjogIzY2NjsgcGFkZGluZzogMCA3LjVweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge2NvbG9yOiMzMzM7fSAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb3B5cmlnaHQge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IGZvbnQtc2l6ZTogMTRweDtsaW5lLWhlaWdodDogMS4yNTsgY29sb3I6ICM5OTk7IFxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5OyBcclxuICAgICAgICAgICAgICAgICY6aG92ZXIge2NvbG9yOiM2NjY7fSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJveC10cmFja2luZyB7XHJcbiAgICAuaGVhZC10cmFjayB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgcGFkZGluZzogMTJweCAxNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7ICBcclxuICAgICAgICBAaW5jbHVkZSBib3JkZXJSYWRpdXMoNXB4KTsgXHJcbiAgICAgICAgJjphZnRlciB7QGV4dGVuZCAuYWZ0ZXJfY2xlYXJ9XHJcbiAgICAgICAgLmt1cmlyIHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IGJhY2tncm91bmQ6ICNmZmY7IG1hcmdpbi1yaWdodDogMjRweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7IFxyXG4gICAgICAgIH0gXHJcbiAgICAgICAgLmJveC1vcmRlciB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyBtYXJnaW4tcmlnaHQ6IDE3cHg7IHBhZGRpbmc6IDhweCAwIDAgMDsgXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxyXG4gICAgICAgICAgICAgICAgJi5zbWFsbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM2NjY7IGZvbnQtc2l6ZTogMTJweDsgcGFkZGluZzogMCAwIDJweCAwOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYub3JkZXItaWQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgY29sb3I6ICMzMzM7IGZvbnQtd2VpZ2h0OiBib2xkOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuLWNvcHkge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgY29sb3I6ICNmNDcxMmU7IGZvbnQtc2l6ZTogMTJweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7IGxpbmUtaGVpZ2h0OiAxNnB4OyBtYXJnaW46IDI1cHggMCAwIDA7ICAgIFxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDsgY29udGVudDogXCJcIjsgbGVmdDogMDsgdG9wOiAwOyBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljLWNvcHkucG5nJykgbm8tcmVwZWF0IDAgMDsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9IFxyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgLnRyYWNrLWxpc3Qge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTdweCAzMHB4OyBtYXJnaW46IDAgMCAxN3B4IDA7IGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgI2Q4ZDhkODtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgICBcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxNHB4OyBoZWlnaHQ6IDE0cHg7IGJvcmRlcjo1cHggc29saWQgI2RlZGVkZTsgIFxyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjsgbGVmdDogMDsgdG9wOiAxMHB4OyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cyg1MCUpOyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRpbWUge2ZvbnQtc2l6ZTogMTJweDsgY29sb3I6ICM2NjY7IG1hcmdpbi1ib3R0b206IDNweDt9IFxyXG4gICAgICAgICAgICAudHh0IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgY29sb3I6ICMxMTE7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuY3VycmVudCB7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7Ym9yZGVyLWNvbG9yOiNmNDcxMmU7fSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge2JvcmRlci1ib3R0b206IDA7IG1hcmdpbi1ib3R0b206IDA7fSAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5hZGQtY29tbWVudCB7XHJcbiAgICBmaWVsZHNldCB7Ym9yZGVyLWJvdHRvbTogMDsgbWFyZ2luLWJvdHRvbTogMDt9XHJcbiAgICAubGlzdCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAwIDAgMjBweCA5M3B4OyBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNkOGQ4ZDg7ICBcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyBcclxuICAgICAgICAmOmFmdGVyIHtAZXh0ZW5kIC5hZnRlcl9jbGVhcn1cclxuICAgICAgICAuY29sIHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgJi5maWVsZC1pbWFnZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODBweDsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IHBhZGRpbmc6IDEwcHg7IFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuZmllbGQtZGVzY3JpcCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgXHJcbiAgICAgICAgICAgICAgICBwIHttYXJnaW46IDAgMCAwIDA7fSBcclxuICAgICAgICAgICAgICAgIC5jLXRpdGxlIHtmb250LXNpemU6IDE2cHg7IGNvbG9yOiAjMTExOyBtYXJnaW4tYm90dG9tOiAzcHg7fSAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJveC1yYXRlIHttYXJnaW4tYm90dG9tOiAxNXB4O30gXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgcGFkZGluZy1ib3R0b206IDA7IG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ1dHRvbi1hcmVhIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDkzcHg7IFxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLndyYXBfcG9wdXAge1xyXG4gICAgZGlzcGxheTogbm9uZTsgXHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLCAwLjcpOyAgIFxyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7ICAgIFxyXG4gICAgei1pbmRleDogOTk5OTk5O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAucG9wX2lubmVyIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIC5taWRkbGVfcG9wIHtcclxuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICAucG9wdXAtb3ZlcmxheSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyAgXHJcbiAgICAgICAgei1pbmRleDogMTU7IGxlZnQ6IDA7IHRvcDogMDsgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG59XHJcbiNib3hQb3AgeyBcclxuICAgIG1pbi13aWR0aDogNjMwcHg7ICAgIFxyXG4gICAgbWF4LXdpZHRoOiA2MzBweDsgICBcclxuICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gNTBweCBhdXRvOyAgIFxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyAgICAgIFxyXG4gICAgcGFkZGluZzogMjBweCAyNXB4OyBcclxuICAgIEBpbmNsdWRlIGJvcmRlclJhZGl1cygxMHB4KTsgXHJcbiAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9yZGVyLWJveCk7IFxyXG4gICAgLmNsb3NlX3BvcCB7IFxyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICBoZWlnaHQ6IDE2cHg7ICAgICAgICBcclxuICAgICAgICByaWdodDogMjVweDsgXHJcbiAgICAgICAgdG9wOiAyNXB4OyAgXHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHotaW5kZXg6IDU7ICAgXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMjRweDsgaGVpZ2h0OiAycHg7IGJhY2tncm91bmQ6ICNmNDcxMmU7IHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7IGxlZnQ6IDUwJTsgbWFyZ2luOiAtMXB4IDAgMCAtMTJweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg0NWRlZykpOyAgXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC00NWRlZykpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgIFxyXG4gICAgfSAgIFxyXG4gICAgLmNvbnRlbnRfcG9wIHsgICAgICAgICBcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO3Bvc2l0aW9uOiByZWxhdGl2ZTsgZm9udC1zaXplOiAxOHB4OyBcclxuICAgICAgICAuaWYtdmlkZW8geyBcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xyXG4gICAgICAgICAgICBpZnJhbWUge3dpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IGhlaWdodDogMTAwJSAhaW1wb3J0YW50OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDt9XHJcbiAgICAgICAgfSAgICAgICAgICAgXHJcbiAgICAgICAgaW1nIHt3aWR0aDogYXV0bzsgaGVpZ2h0OiBhdXRvO30gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgLmltZyB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGltZyB7b2JqZWN0LWZpdDogY29udGFpbjsgbWFyZ2luOiBhdXRvO30gXHJcbiAgICAgICAgfSBcclxuICAgIH0gICAgIFxyXG4gICAgJi50cmFpbiB7XHJcbiAgICAgICAgbWluLXdpZHRoOiA1MTBweDsgbWF4LXdpZHRoOiA1MTBweDsgXHJcbiAgICB9ICAgIFxyXG4gICAgLnJvdy1yZWd7XHJcbiAgICAgICAgcGFkZGluZzogMCA2NXB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC5jb2x7XHJcbiAgICAgICAgICAgICYuaW1nLCAmLnRleHR7IHdpZHRoOiA0NSU7IG1hcmdpbjogMDsgcGFkZGluZzogMCAxNXB4OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMzMzMzMzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucmVkLXRleHR7IGNvbG9yOiAjQ0I0NjQ2OyBmb250LXNpemU6IDM2cHg7IGxpbmUtaGVpZ2h0OiA0MHB4OyB9XHJcbiAgICB9ICAgICBcclxufVxyXG4ucG9wLWJvbnVze1xyXG4gICAgI2JveFBvcHtcclxuICAgICAgICBwYWRkaW5nOiA0NXB4IDA7IHdpZHRoOiA5NzBweDsgIG1heC13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgLmhlYWRwb3B7IHBhZGRpbmc6IDAgNzBweDsgfVxyXG4gICAgfVxyXG4gICAgLmNhcnQtb3ZlcnZpZXd7XHJcbiAgICAgICAgLnRhYmxlLWNhcnR7IGJvcmRlcjogbm9uZTsgfVxyXG4gICAgICAgICYuaGlzdG9yeXtcclxuICAgICAgICAgICAgdGFibGV7XHJcbiAgICAgICAgICAgICAgICB0aGVhZHtcclxuICAgICAgICAgICAgICAgICAgICB0aHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHsgcGFkZGluZy1sZWZ0OjI1cHg7IHBhZGRpbmctcmlnaHQ6IDA7IH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi53LXByb2R1Y3R7IHdpZHRoOiAzNyU7IH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi53LXByaWNleyB3aWR0aDogMjElOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYudy1zdWJ0b3RhbHsgd2lkdGg6IDE0JTsgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRib2R5e1xyXG4gICAgICAgICAgICAgICAgICAgIHRke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC1jYXJ0eyB3aWR0aDogMTAwJTsgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY2FsbHsgdGV4dC1hbGlnbjogbGVmdDsgfVxyXG4gICAgICAgIC5jZW50ZXJ7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLXRvcDogMjBweDsgfVxyXG4gICAgfVxyXG59XHJcbi5zY19jb250ZW50IHsgICBcclxuICAgIHotaW5kZXg6IDIyOyAgICAgXHJcbiAgICBjb2xvcjogI2JlYmViZTsgXHJcbiAgICBoMyB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgY29sb3I6ICMzMzM7IG1hcmdpbi1ib3R0b206IDE4cHg7IFxyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7IFxyXG4gICAgfVxyXG4gICAgaDV7IGNvbG9yOiAjMzMzMzMzOyBmb250LWZhbWlseTogXCJMYXRvXCI7IGZvbnQtc2l6ZTogMTJweDsgbGluZS1oZWlnaHQ6IDIwcHg7ICB9XHJcbiAgICAuaW5uZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDA7IFxyXG4gICAgfSAgICAgIFxyXG4gICAgLmhlYWRwb3B7XHJcbiAgICAgICAgQGV4dGVuZCAuYWZ0ZXJfY2xlYXJcclxuICAgIH0gIFxyXG59XHJcblxyXG5cclxuLndyYXAtbGVmdC1yaWdodHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAmOmFmdGVyeyBAZXh0ZW5kIC5hZnRlcl9jbGVhciB9XHJcbiAgICBoMXsgZmxvYXQ6IGxlZnQ7IH1cclxuICAgIGF7IGZsb2F0OiByaWdodDsgbWFyZ2luLXRvcDogMTBweDsgfVxyXG4gICAgLnJpZ2h0eyBcclxuICAgICAgICB3aWR0aDogNDAlOyBcclxuICAgICAgICAmLmFkZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvOyBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIC5jb2wtc2VsZWN0LWRhdGUge3dpZHRoOiBhdXRvO31cclxuICAgICAgICAgICAgc2VsZWN0IHt3aWR0aDogMTAwJTsgcGFkZGluZy1yaWdodDogMzBweDt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY29sLXNlbGVjdC1kYXRle1xyXG4gICAgZmxvYXQ6IHJpZ2h0OyBwb3NpdGlvbjogcmVsYXRpdmU7IG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAmOmZpcnN0LWNoaWxkeyBcclxuICAgICAgICB3aWR0aDo3MCU7IG1hcmdpbi1yaWdodDogMS41JTsgZmxvYXQ6IGxlZnQ7IFxyXG4gICAgICAgIHNlbGVjdHsgIHdpZHRoOiA0MCU7IH1cclxuICAgIH1cclxuICAgIHNlbGVjdHtcclxuICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9hcnItZHJvcC1zbS5wbmcpbm8tcmVwZWF0IDk1JSBjZW50ZXI7IGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7IGhlaWdodDogMzVweDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7XHJcbiAgICB9XHJcbiAgICBsYWJlbHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7ICBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjMzMzMzMzOyBmbG9hdDogbGVmdDsgbGluZS1oZWlnaHQ6IDM1cHg7XHJcbiAgICAgICAgd2lkdGg6IDYwJTsgcGFkZGluZy1sZWZ0OjUwcHg7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTtcclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgY29udGVudDonJzsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pYy1jYWxlbmRhci5wbmcpbm8tcmVwZWF0IGNlbnRlcjsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAxNXB4OyB0b3A6IDA7IFxyXG4gICAgICAgICAgICBib3R0b206IDA7IG1hcmdpbjogYXV0byAwOyB3aWR0aDogMThweDsgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc2VjLWlucHV0LXNlbGVjdC10aHJlZXtcclxuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcbiAgICAmOmFmdGVyeyAgQGV4dGVuZCAuYWZ0ZXJfY2xlYXIgfVxyXG4gICAgLmNvbC1zZWxlY3R7IFxyXG4gICAgICAgIGZsb2F0OiBsZWZ0OyBwb3NpdGlvbjogcmVsYXRpdmU7IGJvcmRlcjogMXB4IHNvbGlkICNEOEQ4RDg7IGhlaWdodDogNTBweDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZHsgXHJcbiAgICAgICAgICAgIHdpZHRoOjQ4JTsgbWFyZ2luLXJpZ2h0OiAxLjUlOyBmbG9hdDogbGVmdDsgXHJcbiAgICAgICAgICAgIHNlbGVjdHsgIHdpZHRoOiA1NSU7IGJvcmRlcjogbm9uZTsgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZCgyKXsgd2lkdGg6IDE4JTsgIG1hcmdpbi1yaWdodDogMS41JTsgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZHsgd2lkdGg6IDMwJTsgfVxyXG4gICAgICAgICYuZGF0ZS1yYW5nZXtcclxuICAgICAgICAgICAgaW5wdXRbdHlwZT0ndGV4dCddLHNlbGVjdHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNyU7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgIGhlaWdodDogNTBweDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjMzMzOyBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGxhYmVse1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgIGZvbnQtc2l6ZTogMTRweDsgY29sb3I6ICMzMzMzMzM7IGZsb2F0OiBsZWZ0OyBsaW5lLWhlaWdodDogNTBweDtcclxuICAgICAgICB3aWR0aDogNDUlOyBwYWRkaW5nLWxlZnQ6NTBweDsgQGluY2x1ZGUgYm94U2l6aW5nKGJvcmRlci1ib3gpO1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb250ZW50OicnOyBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2ljLWNhbGVuZGFyLnBuZyluby1yZXBlYXQgY2VudGVyOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDE1cHg7IHRvcDogMDsgXHJcbiAgICAgICAgICAgIGJvdHRvbTogMDsgbWFyZ2luOiBhdXRvIDA7IHdpZHRoOiAxOHB4OyBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgIGlucHV0W3R5cGU9J3RleHQnXSxzZWxlY3R7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgIGhlaWdodDogNTBweDsgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDVweCk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogIzMzMzsgYm9yZGVyOm5vbmU7IGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG4gICAgc2VsZWN0e1xyXG4gICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hdGVyaWFsL2Fyci1kcm9wLXNtLnBuZyluby1yZXBlYXQgOTUlIGNlbnRlcjtcclxuICAgIH1cclxufVxyXG4ubGlzdC1pbmZve1xyXG4gICAgJi5oaXN0b3J5IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyAgXHJcbiAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgY29sb3I6ICM2NjY7XHJcbiAgICAgICAgICAgICYubWQge2ZvbnQtc2l6ZTogMTZweDsgY29sb3I6ICMzMzM7fSAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICB0YWJsZSB7XHJcbiAgICAgICAgICAgIHRoZWFkIHtcclxuICAgICAgICAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTk5OyBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAmLnctcHJvZHVjdCB7d2lkdGg6IDYxJTt9IFxyXG4gICAgICAgICAgICAgICAgICAgICYudy1wcmljZSB7d2lkdGg6IDEyJTt9XHJcbiAgICAgICAgICAgICAgICAgICAgJi53LXF0eSB7d2lkdGg6IDE1JTt9XHJcbiAgICAgICAgICAgICAgICAgICAgJi53LXN1YnRvdGFsIHt3aWR0aDogMTIlO30gXHJcbiAgICAgICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0Ym9keSB7XHJcbiAgICAgICAgICAgICAgICB0ZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgLnByb2R1Y3QtY2FydCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MiU7IGRpc3BsYXk6IGlubGluZS1ibG9jaztwYWRkaW5nOiAwIDUwcHggMCAwOyBtaW4taGVpZ2h0OiAxMHB4OyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib2Rlci1ib3gpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmhhdmUtdm91Y2hlciB7ICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhLnZvdWNoZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEyNXB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNDUlOyByaWdodDogMDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3hTaXppbmcoYm9kZXItYm94KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwgLTQ1JSkpOyAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICYudHItY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC1jYXJ0IHtjb2xvcjogIzY2Njt9IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0Zm9vdCB7XHJcbiAgICAgICAgICAgICAgICAucHJpY2Uge2NvbG9yOiAjY2I0NjQ2O30gIFxyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8qdGQge2JhY2tncm91bmQ6I2VhZWFlYTt9ICAqL1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC50YWJsZS1jYXJ0IHtib3JkZXI6MXB4IHNvbGlkICNlYWVhZWE7IEBpbmNsdWRlIGJvcmRlclJhZGl1cyg0cHgpO30gXHJcbiAgICAucHJvZHVjdC1jYXJ0IHtcclxuICAgICAgICBjb2xvcjogIzMzMzsgZGlzcGxheTogYmxvY2s7IG1pbi1oZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgJi5ncmVlbi10ZXh0eyBcclxuICAgICAgICAgICAgc3BhbnsgY29sb3I6ICMxRkIyNUE7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9kdWN0LW1kIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICB3aWR0aDogMjAlO2hlaWdodDogNTZweDsgYm9yZGVyOjFweCBzb2xpZCAjZWFlYWVhO21hcmdpbi1yaWdodDogLTRweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyUmFkaXVzKDJweCk7ICAgXHJcbiAgICAgICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgICAgICAgICBpbWcge2hlaWdodDogMTAwJTt9XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcm9kdWN0LXRpdGxlIHsgIFxyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBhZGRpbmc6IDAgMCAwIDE2cHg7IGZvbnQtc2l6ZTogMTZweDsgXHJcbiAgICAgICAgICAgIHdpZHRoOiA3OS44JTsgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJveFNpemluZyhib3JkZXItYm94KTsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0bi1yZW1vdmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nOiAwIDAgMCAyMHB4OyBcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDIuODY7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjOTk5O1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOiAxMnB4OyBoZWlnaHQ6IDEwMCU7IGNvbnRlbnQ6IFwiXCI7IGxlZnQ6IDA7IHRvcDogMDsgXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL21hdGVyaWFsL2ljby1yZW1vdmUucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHRhYmxlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTsgXHJcbiAgICAgICAgdGhlYWQge1xyXG4gICAgICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWFlYWVhOyBwYWRkaW5nOiAyNnB4IDlweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtmb250LXdlaWdodDogYm9sZDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMTk7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO3RleHQtYWxpZ246IGNlbnRlcjtjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge3BhZGRpbmctbGVmdDoyOHB4OyBwYWRkaW5nLXJpZ2h0OiAwO30gICBcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7cGFkZGluZy1yaWdodDoyOHB4O30gIFxyXG4gICAgICAgICAgICAgICAgJi53LWNoZWNrIHt3aWR0aDogMyU7IGxpbmUtaGVpZ2h0OiAxNHB4O30gXHJcbiAgICAgICAgICAgICAgICAmLnctcHJvZHVjdCB7d2lkdGg6IDM0JTt0ZXh0LWFsaWduOiBsZWZ0O30gXHJcbiAgICAgICAgICAgICAgICAmLnctcHJpY2Uge3dpZHRoOiAxNyU7dGV4dC1hbGlnbjogcmlnaHQ7fVxyXG4gICAgICAgICAgICAgICAgJi53LXF0eSB7d2lkdGg6IDIxJTt9XHJcbiAgICAgICAgICAgICAgICAmLnctc3VidG90YWwge3dpZHRoOiAxMSU7dGV4dC1hbGlnbjogcmlnaHQ7fSBcclxuICAgICAgICAgICAgICAgICYudy1hY3Rpb24ge3dpZHRoOiA4JTt9XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRib2R5IHtcclxuICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE5cHggMTZweDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2VhZWFlYTtwb3NpdGlvbjogcmVsYXRpdmU7ICBcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7Zm9udC13ZWlnaHQ6IG5vcm1hbDtmb250LXN0eWxlOiBub3JtYWw7Zm9udC1zdHJldGNoOiBub3JtYWw7bGluZS1oZWlnaHQ6IDEuMjE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDt0ZXh0LWFsaWduOiBjZW50ZXI7Y29sb3I6ICM2NjY7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7cGFkZGluZy1sZWZ0OjIwcHg7IHBhZGRpbmctcmlnaHQ6IDA7fSAgIFxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7cGFkZGluZy1yaWdodDoyOHB4O31cclxuICAgICAgICAgICAgICAgICAgICAmLnRkLWNoZWNrIHtsaW5lLWhlaWdodDogMTRweDt9IFxyXG4gICAgICAgICAgICAgICAgICAgICYudGQtcHJvZHVjdCB7dGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy1yaWdodDogMzVweDt9IFxyXG4gICAgICAgICAgICAgICAgICAgICYudGQtcHJpY2Uge3RleHQtYWxpZ246IHJpZ2h0O30gXHJcbiAgICAgICAgICAgICAgICAgICAgJi50ZC1zdWJ0b3RhbCB7dGV4dC1hbGlnbjogcmlnaHQ7fSBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7fSBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubm90ZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7IG1hcmdpbjogNXB4IDA7IGZvbnQtc3R5bGU6IGl0YWxpYzsgY29sb3I6ICM5OTk7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRmb290IHtcclxuICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE5cHggMTZweDsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zdHlsZTogbm9ybWFsO2ZvbnQtc3RyZXRjaDogbm9ybWFsO2xpbmUtaGVpZ2h0OiAxLjIxO1xyXG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7dGV4dC1hbGlnbjogY2VudGVyO2NvbG9yOiAjNjY2O1xyXG4gICAgICAgICAgICAgICAgICAgIC50eHQtdG90YWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyB0b3A6IDhweDsgbGVmdDogLTEwMCU7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOTVweDsgbWFyZ2luLWxlZnQ6IC04MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtwYWRkaW5nLWxlZnQ6MjhweDsgcGFkZGluZy1yaWdodDogMDt9ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtwYWRkaW5nLXJpZ2h0OjI4cHg7fVxyXG4gICAgICAgICAgICAgICAgICAgICYudGYtY2hlY2sge2xpbmUtaGVpZ2h0OiAxNHB4O30gIFxyXG4gICAgICAgICAgICAgICAgICAgICYudGYtcHJvZHVjdCB7dGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy1yaWdodDogMzVweDsgZm9udC1zaXplOiAxNnB4O30gIFxyXG4gICAgICAgICAgICAgICAgICAgICYudGYtc3VidG90YWwge3RleHQtYWxpZ246IHJpZ2h0O30gICBcclxuICAgICAgICAgICAgICAgICAgICAmLnRmLXRvdGFsLXByaWNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7ICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLnRvdGFsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyBwYWRkaW5nLXJpZ2h0OiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IFxyXG4gICAgICAgICAgICAgICAgICAgIH0gICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRhYmxlLWNhcnR7IG1hcmdpbi1ib3R0b206IDQwcHg7IG92ZXJmbG93LXg6IGF1dG87IH1cclxuICAgIHRhYmxle1xyXG4gICAgICAgIHRoZWFke1xyXG4gICAgICAgICAgICB0cntcclxuICAgICAgICAgICAgICAgIHRoe1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7IHRleHQtYWxpZ246bGVmdDsgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHsgdGV4dC1hbGlnbjpyaWdodDsgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRib2R5e1xyXG4gICAgICAgICAgICB0cntcclxuICAgICAgICAgICAgICAgIHRke1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7IHRleHQtYWxpZ246bGVmdDsgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHsgdGV4dC1hbGlnbjpyaWdodDsgfVxyXG4gICAgICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmljby1kb3dubG9hZC1vcmFuZ2V7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9tYXRlcmlhbC9pY28tZG93bmxvYWQtb3JhbmdlLnBuZykgbm8tcmVwZWF0OyB3aWR0aDoyMHB4OyBoZWlnaHQ6IDIwcHg7ICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRmb290e1xyXG4gICAgICAgICAgICB0cjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgdGR7IFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzFGQjI1QTsgY29sb3I6ICNmZmY7IGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7IHRleHQtYWxpZ246bGVmdDsgfVxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZHsgdGV4dC1hbGlnbjpyaWdodDsgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cdFxyXG4gICAgQ29tcGFueSAgICA6IFBUIFdlYiBBcmNoaXRlY3QgVGVjaG5vbG9neSAtIHdlYmFycS5jb21cclxuICAgIERvY3VtZW50ICAgOiBTdHlsZXNoZWV0XHJcbiAgICBBdXRob3IgICAgIDogRnJvbnRFbmQgVGVhbSAgXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuLyogaW1wb3J0IGJvdXJib24gLSBodHRwOi8vYm91cmJvbi5pby9kb2NzICovXHJcbkBpbXBvcnQgXCJib3VyYm9uL2JvdXJib25cIjtcclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCRhdHRyKXtcclxuICAgIHRyYW5zaXRpb246ICRhdHRyO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkYXR0cjtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogJGF0dHI7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogJGF0dHI7XHJcbiAgICAtby10cmFuc2l0aW9uOiAkYXR0cjtcclxufVxyXG5AbWl4aW4gdHJhbnNmb3JtKCRhdHRyKXtcclxuICAgIHRyYW5zZm9ybTogJGF0dHI7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogJGF0dHI7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogJGF0dHI7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiAkYXR0cjtcclxuICAgIC1vLXRyYW5zZm9ybTogJGF0dHI7XHJcbn1cclxuQG1peGluIGJvcmRlclJhZGl1cygkYXR0cil7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYXR0cjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJGF0dHI7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6ICRhdHRyO1xyXG4gICAgLW1zLWJvcmRlci1yYWRpdXM6ICRhdHRyO1xyXG4gICAgLW8tYm9yZGVyLXJhZGl1czogJGF0dHI7XHJcbn1cclxuQG1peGluIGJveFNoYWRvdygkYXR0cil7XHJcbiAgICBib3gtc2hhZG93OiAgJGF0dHI7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6ICRhdHRyO1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiAkYXR0cjtcclxuICAgIC1tcy1ib3gtc2hhZG93OiAkYXR0cjtcclxuICAgIC1vLWJveC1zaGFkb3c6ICRhdHRyXHJcbn1cclxuQG1peGluIGJveFNpemluZygkYXR0cil7XHJcbiAgICBib3gtc2l6aW5nOiAgJGF0dHI7XHJcbiAgICAtd2Via2l0LWJveC1zaXppbmc6ICRhdHRyO1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiAkYXR0cjtcclxuICAgIC1tcy1ib3gtc2l6aW5nOiAkYXR0cjtcclxuICAgIC1vLWJveC1zaXppbmc6ICRhdHRyXHJcbn1cclxuQG1peGluIHBsYWNlaG9sZGVyIHtcclxuICAgIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7QGNvbnRlbnR9XHJcbiAgICA6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICAge0Bjb250ZW50fVxyXG4gICAgOjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgIHtAY29udGVudH1cclxuICAgIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIgICAgICB7QGNvbnRlbnR9ICBcclxufVxyXG5AbWl4aW4gYm94U2l6aW5nKCRhdHRyKXtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogJGF0dHI7XHJcbiAgICAtbW96LWJveC1zaXppbmc6ICRhdHRyO1xyXG4gICAgYm94LXNpemluZzogJGF0dHI7XHJcbn1cclxuQG1peGluIGNsZWFyZml4eyBcclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlcntcclxuICAgICAgICBjb250ZW50OiBcIiBcIjsgXHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7IFxyXG4gICAgfVxyXG4gICAgJjphZnRlcntcclxuICAgICAgICBkaXNwbGF5OiBibG9jazsgXHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgLyptYXJnaW4tdG9wOiAtMXB4OyovXHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG4gICAgJntcclxuICAgICAgICAqem9vbTogMTtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gdHJhbnNmb3Jtb3JpZ2luKCRhdHRyKXtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJGF0dHI7XHJcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRhdHRyO1xyXG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogJGF0dHI7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkYXR0cjtcclxufVxyXG5cclxuXHJcbi8qIGNvbG9yIGdsb2JhbFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuJGNfMTExOiAjMTExO1xyXG4kY18zMzM6ICMzMzM7XHJcbiRjXzY2NjogIzY2NjtcclxuJGNfOTk5OiAjOTk5O1xyXG4kY19lYTogI2VhZWFlYTtcclxuIiwiLy8gQm91cmJvbiA0LjIuN1xyXG4vLyBodHRwOi8vYm91cmJvbi5pb1xyXG4vLyBDb3B5cmlnaHQgMjAxMS0yMDE1IHRob3VnaHRib3QsIGluYy5cclxuLy8gTUlUIExpY2Vuc2VcclxuXHJcbkBpbXBvcnQgXCJzZXR0aW5ncy9wcmVmaXhlclwiO1xyXG5AaW1wb3J0IFwic2V0dGluZ3MvcHgtdG8tZW1cIjtcclxuQGltcG9ydCBcInNldHRpbmdzL2Fzc2V0LXBpcGVsaW5lXCI7XHJcblxyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2Fzc2lnbi1pbnB1dHNcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9jb250YWluc1wiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2NvbnRhaW5zLWZhbHN5XCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvaXMtbGVuZ3RoXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvaXMtbGlnaHRcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1udW1iZXJcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1zaXplXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvcHgtdG8tZW1cIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9weC10by1yZW1cIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9zaGFkZVwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3N0cmlwLXVuaXRzXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdGludFwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3RyYW5zaXRpb24tcHJvcGVydHktbmFtZVwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3VucGFja1wiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL21vZHVsYXItc2NhbGVcIjtcclxuXHJcbkBpbXBvcnQgXCJoZWxwZXJzL2NvbnZlcnQtdW5pdHNcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvZGlyZWN0aW9uYWwtdmFsdWVzXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLWFuZ2xlLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItZ3JhZGllbnQtcGFyc2VyXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvcmFkaWFsLWFyZy1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvcmFkaWFsLWdyYWRpZW50LXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9yZW5kZXItZ3JhZGllbnRzXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL3NoYXBlLXNpemUtc3RyaXBwZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvc3RyLXRvLW51bVwiO1xyXG5cclxuQGltcG9ydCBcImNzczMvYW5pbWF0aW9uXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2FwcGVhcmFuY2VcIjtcclxuQGltcG9ydCBcImNzczMvYmFja2ZhY2UtdmlzaWJpbGl0eVwiO1xyXG5AaW1wb3J0IFwiY3NzMy9iYWNrZ3JvdW5kXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2JhY2tncm91bmQtaW1hZ2VcIjtcclxuQGltcG9ydCBcImNzczMvYm9yZGVyLWltYWdlXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2NhbGNcIjtcclxuQGltcG9ydCBcImNzczMvY29sdW1uc1wiO1xyXG5AaW1wb3J0IFwiY3NzMy9maWx0ZXJcIjtcclxuQGltcG9ydCBcImNzczMvZmxleC1ib3hcIjtcclxuQGltcG9ydCBcImNzczMvZm9udC1mYWNlXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2ZvbnQtZmVhdHVyZS1zZXR0aW5nc1wiO1xyXG5AaW1wb3J0IFwiY3NzMy9oaWRwaS1tZWRpYS1xdWVyeVwiO1xyXG5AaW1wb3J0IFwiY3NzMy9oeXBoZW5zXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2ltYWdlLXJlbmRlcmluZ1wiO1xyXG5AaW1wb3J0IFwiY3NzMy9rZXlmcmFtZXNcIjtcclxuQGltcG9ydCBcImNzczMvbGluZWFyLWdyYWRpZW50XCI7XHJcbkBpbXBvcnQgXCJjc3MzL3BlcnNwZWN0aXZlXCI7XHJcbkBpbXBvcnQgXCJjc3MzL3BsYWNlaG9sZGVyXCI7XHJcbkBpbXBvcnQgXCJjc3MzL3JhZGlhbC1ncmFkaWVudFwiO1xyXG5AaW1wb3J0IFwiY3NzMy9zZWxlY3Rpb25cIjtcclxuQGltcG9ydCBcImNzczMvdGV4dC1kZWNvcmF0aW9uXCI7XHJcbkBpbXBvcnQgXCJjc3MzL3RyYW5zZm9ybVwiO1xyXG5AaW1wb3J0IFwiY3NzMy90cmFuc2l0aW9uXCI7XHJcbkBpbXBvcnQgXCJjc3MzL3VzZXItc2VsZWN0XCI7XHJcblxyXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1jb2xvclwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1yYWRpdXNcIjtcclxuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItc3R5bGVcIjtcclxuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItd2lkdGhcIjtcclxuQGltcG9ydCBcImFkZG9ucy9idXR0b25zXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvY2xlYXJmaXhcIjtcclxuQGltcG9ydCBcImFkZG9ucy9lbGxpcHNpc1wiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2ZvbnQtc3RhY2tzXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvaGlkZS10ZXh0XCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvbWFyZ2luXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvcGFkZGluZ1wiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3Bvc2l0aW9uXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvcHJlZml4ZXJcIjtcclxuQGltcG9ydCBcImFkZG9ucy9yZXRpbmEtaW1hZ2VcIjtcclxuQGltcG9ydCBcImFkZG9ucy9zaXplXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvdGV4dC1pbnB1dHNcIjtcclxuQGltcG9ydCBcImFkZG9ucy90aW1pbmctZnVuY3Rpb25zXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvdHJpYW5nbGVcIjtcclxuQGltcG9ydCBcImFkZG9ucy93b3JkLXdyYXBcIjtcclxuXHJcbkBpbXBvcnQgXCJib3VyYm9uLWRlcHJlY2F0ZWQtdXBjb21pbmdcIjtcclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIG9yIGRpc2FibGUgdmVuZG9yIHByZWZpeGVzXHJcblxyXG4kcHJlZml4LWZvci13ZWJraXQ6ICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRwcmVmaXgtZm9yLW1vemlsbGE6ICAgdHJ1ZSAhZGVmYXVsdDtcclxuJHByZWZpeC1mb3ItbWljcm9zb2Z0OiB0cnVlICFkZWZhdWx0O1xyXG4kcHJlZml4LWZvci1vcGVyYTogICAgIHRydWUgIWRlZmF1bHQ7XHJcbiRwcmVmaXgtZm9yLXNwZWM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuIiwiJGVtLWJhc2U6IDE2cHggIWRlZmF1bHQ7XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBBIGdsb2JhbCBzZXR0aW5nIHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSBgJGFzc2V0LXBpcGVsaW5lYCB2YXJpYWJsZSBmb3IgYWxsIGZ1bmN0aW9ucyB0aGF0IGFjY2VwdCBpdC5cclxuLy8vXHJcbi8vLyBAdHlwZSBCb29sXHJcblxyXG4kYXNzZXQtcGlwZWxpbmU6IGZhbHNlICFkZWZhdWx0O1xyXG4iLCJAZnVuY3Rpb24gYXNzaWduLWlucHV0cygkaW5wdXRzLCAkcHNldWRvOiBudWxsKSB7XHJcbiAgJGxpc3Q6ICgpO1xyXG5cclxuICBAZWFjaCAkaW5wdXQgaW4gJGlucHV0cyB7XHJcbiAgICAkaW5wdXQ6IHVucXVvdGUoJGlucHV0KTtcclxuICAgICRpbnB1dDogaWYoJHBzZXVkbywgJGlucHV0ICsgXCI6XCIgKyAkcHNldWRvLCAkaW5wdXQpO1xyXG4gICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJGlucHV0LCBjb21tYSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRsaXN0O1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBDaGVja3MgaWYgYSBsaXN0IGNvbnRhaW5zIGEgdmFsdWUocykuXHJcbi8vL1xyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdFxyXG4vLy8gICBUaGUgbGlzdCB0byBjaGVjayBhZ2FpbnN0LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHVlc1xyXG4vLy8gICBBIHNpbmdsZSB2YWx1ZSBvciBsaXN0IG9mIHZhbHVlcyB0byBjaGVjayBmb3IuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIGNvbnRhaW5zKCRsaXN0LCAkdmFsdWUpXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Qm9vbH1cclxuXHJcbkBmdW5jdGlvbiBjb250YWlucygkbGlzdCwgJHZhbHVlcy4uLikge1xyXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcclxuICAgIEBpZiB0eXBlLW9mKGluZGV4KCRsaXN0LCAkdmFsdWUpKSAhPSBcIm51bWJlclwiIHtcclxuICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gdHJ1ZTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ2hlY2tzIGlmIGEgbGlzdCBkb2VzIG5vdCBjb250YWlucyBhIHZhbHVlLlxyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3RcclxuLy8vICAgVGhlIGxpc3QgdG8gY2hlY2sgYWdhaW5zdC5cclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtCb29sfVxyXG5cclxuQGZ1bmN0aW9uIGNvbnRhaW5zLWZhbHN5KCRsaXN0KSB7XHJcbiAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xyXG4gICAgQGlmIG5vdCAkaXRlbSB7XHJcbiAgICAgIEByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gZmFsc2U7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1MgbGVuZ3RoLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdmFsdWVcclxuXHJcbkBmdW5jdGlvbiBpcy1sZW5ndGgoJHZhbHVlKSB7XHJcbiAgQHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudWxsXCIgYW5kIChzdHItc2xpY2UoJHZhbHVlICsgXCJcIiwgMSwgNCkgPT0gXCJjYWxjXCJcclxuICAgICAgIG9yIGluZGV4KGF1dG8gaW5oZXJpdCBpbml0aWFsIDAsICR2YWx1ZSlcclxuICAgICAgIG9yICh0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiBhbmQgbm90KHVuaXRsZXNzKCR2YWx1ZSkpKSk7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb2dyYW1hdGljYWxseSBkZXRlcm1pbmVzIHdoZXRoZXIgYSBjb2xvciBpcyBsaWdodCBvciBkYXJrLlxyXG4vLy9cclxuLy8vIEBsaW5rIGh0dHA6Ly9yb2JvdHMudGhvdWdodGJvdC5jb20vY2xvc2VyLWxvb2stY29sb3ItbGlnaHRuZXNzXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtDb2xvciAoSGV4KX0gJGNvbG9yXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIGlzLWxpZ2h0KCRjb2xvcilcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtCb29sfVxyXG5cclxuQGZ1bmN0aW9uIGlzLWxpZ2h0KCRoZXgtY29sb3IpIHtcclxuICAkLWxvY2FsLXJlZDogcmVkKHJnYmEoJGhleC1jb2xvciwgMSkpO1xyXG4gICQtbG9jYWwtZ3JlZW46IGdyZWVuKHJnYmEoJGhleC1jb2xvciwgMSkpO1xyXG4gICQtbG9jYWwtYmx1ZTogYmx1ZShyZ2JhKCRoZXgtY29sb3IsIDEpKTtcclxuICAkLWxvY2FsLWxpZ2h0bmVzczogKCQtbG9jYWwtcmVkICogMC4yMTI2ICsgJC1sb2NhbC1ncmVlbiAqIDAuNzE1MiArICQtbG9jYWwtYmx1ZSAqIDAuMDcyMikgLyAyNTU7XHJcblxyXG4gIEByZXR1cm4gJC1sb2NhbC1saWdodG5lc3MgPiAwLjY7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBudW1iZXIuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnNcclxuXHJcbkBmdW5jdGlvbiBpcy1udW1iZXIoJHZhbHVlKSB7XHJcbiAgQHJldHVybiBjb250YWlucyhcIjBcIiBcIjFcIiBcIjJcIiBcIjNcIiBcIjRcIiBcIjVcIiBcIjZcIiBcIjdcIiBcIjhcIiBcIjlcIiAwIDEgMiAzIDQgNSA2IDcgOCA5LCAkdmFsdWUpO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBDaGVja3MgZm9yIGEgdmFsaWQgQ1NTIHNpemUuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR2YWx1ZVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnNcclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gaXMtbGVuZ3RoXHJcblxyXG5AZnVuY3Rpb24gaXMtc2l6ZSgkdmFsdWUpIHtcclxuICBAcmV0dXJuIGlzLWxlbmd0aCgkdmFsdWUpXHJcbiAgICAgICAgICBvciBjb250YWlucyhcImZpbGxcIiBcImZpdC1jb250ZW50XCIgXCJtaW4tY29udGVudFwiIFwibWF4LWNvbnRlbnRcIiwgJHZhbHVlKTtcclxufVxyXG4iLCIvLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcclxuLy8gZWcuIGZvciBhIHJlbGF0aW9uYWwgdmFsdWUgb2YgMTJweCB3cml0ZSBlbSgxMikgd2hlbiB0aGUgcGFyZW50IGlzIDE2cHhcclxuLy8gaWYgdGhlIHBhcmVudCBpcyBhbm90aGVyIHZhbHVlIHNheSAyNHB4IHdyaXRlIGVtKDEyLCAyNClcclxuXHJcbkBmdW5jdGlvbiBlbSgkcHh2YWwsICRiYXNlOiAkZW0tYmFzZSkge1xyXG4gIEBpZiBub3QgdW5pdGxlc3MoJHB4dmFsKSB7XHJcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XHJcbiAgfVxyXG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcclxuICAgICRiYXNlOiBzdHJpcC11bml0cygkYmFzZSk7XHJcbiAgfVxyXG4gIEByZXR1cm4gKCRweHZhbCAvICRiYXNlKSAqIDFlbTtcclxufVxyXG4iLCIvLyBDb252ZXJ0IHBpeGVscyB0byByZW1zXHJcbi8vIGVnLiBmb3IgYSByZWxhdGlvbmFsIHZhbHVlIG9mIDEycHggd3JpdGUgcmVtKDEyKVxyXG4vLyBBc3N1bWVzICRlbS1iYXNlIGlzIHRoZSBmb250LXNpemUgb2YgPGh0bWw+XHJcblxyXG5AZnVuY3Rpb24gcmVtKCRweHZhbCkge1xyXG4gIEBpZiBub3QgdW5pdGxlc3MoJHB4dmFsKSB7XHJcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XHJcbiAgfVxyXG5cclxuICAkYmFzZTogJGVtLWJhc2U7XHJcbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xyXG4gICAgJGJhc2U6IHN0cmlwLXVuaXRzKCRiYXNlKTtcclxuICB9XHJcbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMXJlbTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gTWl4ZXMgYSBjb2xvciB3aXRoIGJsYWNrLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyIChQZXJjZW50YWdlKX0gJHBlcmNlbnRcclxuLy8vICAgVGhlIGFtb3VudCBvZiBibGFjayB0byBiZSBtaXhlZCBpbi5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCNmZmJiNTIsIDYwJSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0YTIwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Q29sb3J9XHJcblxyXG5AZnVuY3Rpb24gc2hhZGUoJGNvbG9yLCAkcGVyY2VudCkge1xyXG4gIEByZXR1cm4gbWl4KCMwMDAsICRjb2xvciwgJHBlcmNlbnQpO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBTdHJpcHMgdGhlIHVuaXQgZnJvbSBhIG51bWJlci5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlciAoV2l0aCBVbml0KX0gJHZhbHVlXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgICRkaW1lbnNpb246IHN0cmlwLXVuaXRzKDEwZW0pO1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgJGRpbWVuc2lvbjogMTA7XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyIChVbml0bGVzcyl9XHJcblxyXG5AZnVuY3Rpb24gc3RyaXAtdW5pdHMoJHZhbHVlKSB7XHJcbiAgQHJldHVybiAoJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKSk7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCB3aGl0ZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlciAoUGVyY2VudGFnZSl9ICRwZXJjZW50XHJcbi8vLyAgIFRoZSBhbW91bnQgb2Ygd2hpdGUgdG8gYmUgbWl4ZWQgaW4uXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aW50KCM2ZWNhYTYsIDQwJSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYThkZmM5O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Q29sb3J9XHJcblxyXG5AZnVuY3Rpb24gdGludCgkY29sb3IsICRwZXJjZW50KSB7XHJcbiAgQHJldHVybiBtaXgoI2ZmZiwgJGNvbG9yLCAkcGVyY2VudCk7XHJcbn1cclxuIiwiLy8gUmV0dXJuIHZlbmRvci1wcmVmaXhlZCBwcm9wZXJ0eSBuYW1lcyBpZiBhcHByb3ByaWF0ZVxyXG4vLyBFeGFtcGxlOiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCh0cmFuc2Zvcm0sIGNvbG9yLCBiYWNrZ3JvdW5kKSwgbW96KSAtPiAtbW96LXRyYW5zZm9ybSwgY29sb3IsIGJhY2tncm91bmRcclxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG5AZnVuY3Rpb24gdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygkcHJvcHMsICR2ZW5kb3I6IGZhbHNlKSB7XHJcbiAgJG5ldy1wcm9wczogKCk7XHJcblxyXG4gIEBlYWNoICRwcm9wIGluICRwcm9wcyB7XHJcbiAgICAkbmV3LXByb3BzOiBhcHBlbmQoJG5ldy1wcm9wcywgdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lKCRwcm9wLCAkdmVuZG9yKSwgY29tbWEpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkbmV3LXByb3BzO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lKCRwcm9wLCAkdmVuZG9yOiBmYWxzZSkge1xyXG4gIC8vIHB1dCBvdGhlciBwcm9wZXJ0aWVzIHRoYXQgbmVlZCB0byBiZSBwcmVmaXhlZCBoZXJlIGFzd2VsbFxyXG4gIEBpZiAkdmVuZG9yIGFuZCAkcHJvcCA9PSB0cmFuc2Zvcm0ge1xyXG4gICAgQHJldHVybiB1bnF1b3RlKCctJyskdmVuZG9yKyctJyskcHJvcCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIEByZXR1cm4gJHByb3A7XHJcbiAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBDb252ZXJ0cyBzaG9ydGhhbmQgdG8gdGhlIDQtdmFsdWUgc3ludGF4LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3J0aGFuZFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgbWFyZ2luOiB1bnBhY2soMWVtIDJlbSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBtYXJnaW46IDFlbSAyZW0gMWVtIDJlbTtcclxuLy8vICAgfVxyXG5cclxuQGZ1bmN0aW9uIHVucGFjaygkc2hvcnRoYW5kKSB7XHJcbiAgQGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAxIHtcclxuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpO1xyXG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDIge1xyXG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDIpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMik7XHJcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMyB7XHJcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDMpIG50aCgkc2hvcnRoYW5kLCAyKTtcclxuICB9IEBlbHNlIHtcclxuICAgIEByZXR1cm4gJHNob3J0aGFuZDtcclxuICB9XHJcbn1cclxuIiwiLy8gU2NhbGluZyBWYXJpYWJsZXNcclxuJGdvbGRlbjogICAgICAgICAgIDEuNjE4O1xyXG4kbWlub3Itc2Vjb25kOiAgICAgMS4wNjc7XHJcbiRtYWpvci1zZWNvbmQ6ICAgICAxLjEyNTtcclxuJG1pbm9yLXRoaXJkOiAgICAgIDEuMjtcclxuJG1ham9yLXRoaXJkOiAgICAgIDEuMjU7XHJcbiRwZXJmZWN0LWZvdXJ0aDogICAxLjMzMztcclxuJGF1Z21lbnRlZC1mb3VydGg6IDEuNDE0O1xyXG4kcGVyZmVjdC1maWZ0aDogICAgMS41O1xyXG4kbWlub3Itc2l4dGg6ICAgICAgMS42O1xyXG4kbWFqb3Itc2l4dGg6ICAgICAgMS42Njc7XHJcbiRtaW5vci1zZXZlbnRoOiAgICAxLjc3ODtcclxuJG1ham9yLXNldmVudGg6ICAgIDEuODc1O1xyXG4kb2N0YXZlOiAgICAgICAgICAgMjtcclxuJG1ham9yLXRlbnRoOiAgICAgIDIuNTtcclxuJG1ham9yLWVsZXZlbnRoOiAgIDIuNjY3O1xyXG4kbWFqb3ItdHdlbGZ0aDogICAgMztcclxuJGRvdWJsZS1vY3RhdmU6ICAgIDQ7XHJcblxyXG4kbW9kdWxhci1zY2FsZS1yYXRpbzogJHBlcmZlY3QtZm91cnRoICFkZWZhdWx0O1xyXG4kbW9kdWxhci1zY2FsZS1iYXNlOiBlbSgkZW0tYmFzZSkgIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gbW9kdWxhci1zY2FsZSgkaW5jcmVtZW50LCAkdmFsdWU6ICRtb2R1bGFyLXNjYWxlLWJhc2UsICRyYXRpbzogJG1vZHVsYXItc2NhbGUtcmF0aW8pIHtcclxuICAkdjE6IG50aCgkdmFsdWUsIDEpO1xyXG4gICR2MjogbnRoKCR2YWx1ZSwgbGVuZ3RoKCR2YWx1ZSkpO1xyXG4gICR2YWx1ZTogJHYxO1xyXG5cclxuICAvLyBzY2FsZSAkdjIgdG8ganVzdCBhYm92ZSAkdjFcclxuICBAd2hpbGUgJHYyID4gJHYxIHtcclxuICAgICR2MjogKCR2MiAvICRyYXRpbyk7IC8vIHdpbGwgYmUgb2ZmLWJ5LTFcclxuICB9XHJcbiAgQHdoaWxlICR2MiA8ICR2MSB7XHJcbiAgICAkdjI6ICgkdjIgKiAkcmF0aW8pOyAvLyB3aWxsIGZpeCBvZmYtYnktMVxyXG4gIH1cclxuXHJcbiAgLy8gY2hlY2sgQUZURVIgc2NhbGluZyAkdjIgdG8gcHJldmVudCBkb3VibGUtY291bnRpbmcgY29ybmVyLWNhc2VcclxuICAkZG91YmxlLXN0cmFuZGVkOiAkdjIgPiAkdjE7XHJcblxyXG4gIEBpZiAkaW5jcmVtZW50ID4gMCB7XHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRpbmNyZW1lbnQge1xyXG4gICAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCBhbmQgKCR2MSAqICRyYXRpbykgPiAkdjIge1xyXG4gICAgICAgICR2YWx1ZTogJHYyO1xyXG4gICAgICAgICR2MjogKCR2MiAqICRyYXRpbyk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICR2MTogKCR2MSAqICRyYXRpbyk7XHJcbiAgICAgICAgJHZhbHVlOiAkdjE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkaW5jcmVtZW50IDwgMCB7XHJcbiAgICAvLyBhZGp1c3QgJHYyIHRvIGp1c3QgYmVsb3cgJHYxXHJcbiAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCB7XHJcbiAgICAgICR2MjogKCR2MiAvICRyYXRpbyk7XHJcbiAgICB9XHJcblxyXG4gICAgQGZvciAkaSBmcm9tICRpbmNyZW1lbnQgdGhyb3VnaCAtMSB7XHJcbiAgICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIGFuZCAoJHYxIC8gJHJhdGlvKSA8ICR2MiB7XHJcbiAgICAgICAgJHZhbHVlOiAkdjI7XHJcbiAgICAgICAgJHYyOiAoJHYyIC8gJHJhdGlvKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgJHYxOiAoJHYxIC8gJHJhdGlvKTtcclxuICAgICAgICAkdmFsdWU6ICR2MTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkdmFsdWU7XHJcbn1cclxuIiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG4vLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHN0ci10by1udW0gZm4uXHJcbi8vIFNvdXJjZTogaHR0cDovL3Nhc3NtZWlzdGVyLmNvbS9naXN0Lzk2NDc0MDhcclxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG5AZnVuY3Rpb24gX2NvbnZlcnQtdW5pdHMoJG51bWJlciwgJHVuaXQpIHtcclxuICAkc3RyaW5nczogXCJweFwiLCBcImNtXCIsIFwibW1cIiwgXCIlXCIsIFwiY2hcIiwgXCJwaWNhXCIsIFwiaW5cIiwgXCJlbVwiLCBcInJlbVwiLCBcInB0XCIsIFwicGNcIiwgXCJleFwiLCBcInZ3XCIsIFwidmhcIiwgXCJ2bWluXCIsIFwidm1heFwiLCBcImRlZ1wiLCBcInJhZFwiLCBcImdyYWRcIiwgXCJ0dXJuXCI7XHJcbiAgJHVuaXRzOiAgIDFweCwgMWNtLCAxbW0sIDElLCAxY2gsIDFwaWNhLCAxaW4sIDFlbSwgMXJlbSwgMXB0LCAxcGMsIDFleCwgMXZ3LCAxdmgsIDF2bWluLCAxdm1heCwgMWRlZywgMXJhZCwgMWdyYWQsIDF0dXJuO1xyXG4gICRpbmRleDogaW5kZXgoJHN0cmluZ3MsICR1bml0KTtcclxuXHJcbiAgQGlmIG5vdCAkaW5kZXgge1xyXG4gICAgQHdhcm4gXCJVbmtub3duIHVuaXQgYCN7JHVuaXR9YC5cIjtcclxuICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBAaWYgdHlwZS1vZigkbnVtYmVyKSAhPSBcIm51bWJlclwiIHtcclxuICAgIEB3YXJuIFwiYCN7JG51bWJlcn0gaXMgbm90IGEgbnVtYmVyYFwiO1xyXG4gICAgQHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJG51bWJlciAqIG50aCgkdW5pdHMsICRpbmRleCk7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIERpcmVjdGlvbmFsLXByb3BlcnR5IG1peGlucyBhcmUgc2hvcnRoYW5kcyBmb3Igd3JpdGluZyBwcm9wZXJ0aWVzIGxpa2UgdGhlIGZvbGxvd2luZ1xyXG4vLy9cclxuLy8vIEBpZ25vcmUgWW91IGNhbiBhbHNvIHVzZSBgZmFsc2VgIGluc3RlYWQgb2YgYG51bGxgLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBkaXJlY3Rpb25hbCB2YWx1ZXNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1zdHlsZShkb3R0ZWQgbnVsbCk7XHJcbi8vLyAgICAgQGluY2x1ZGUgbWFyZ2luKG51bGwgMCAxMHB4KTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IGRvdHRlZDtcclxuLy8vICAgICBib3JkZXItdG9wLXN0eWxlOiBkb3R0ZWQ7XHJcbi8vLyAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuLy8vICAgICBtYXJnaW4tbGVmdDogMDtcclxuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnRhaW5zLWZhbHN5XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TGlzdH1cclxuXHJcbkBmdW5jdGlvbiBjb2xsYXBzZS1kaXJlY3Rpb25hbHMoJHZhbHMpIHtcclxuICAkb3V0cHV0OiBudWxsO1xyXG5cclxuICAkYTogbnRoKCR2YWxzLCAxKTtcclxuICAkYjogaWYobGVuZ3RoKCR2YWxzKSA8IDIsICRhLCBudGgoJHZhbHMsIDIpKTtcclxuICAkYzogaWYobGVuZ3RoKCR2YWxzKSA8IDMsICRhLCBudGgoJHZhbHMsIDMpKTtcclxuICAkZDogaWYobGVuZ3RoKCR2YWxzKSA8IDIsICRhLCBudGgoJHZhbHMsIGlmKGxlbmd0aCgkdmFscykgPCA0LCAyLCA0KSkpO1xyXG5cclxuICBAaWYgJGEgPT0gMCB7ICRhOiAwOyB9XHJcbiAgQGlmICRiID09IDAgeyAkYjogMDsgfVxyXG4gIEBpZiAkYyA9PSAwIHsgJGM6IDA7IH1cclxuICBAaWYgJGQgPT0gMCB7ICRkOiAwOyB9XHJcblxyXG4gIEBpZiAkYSA9PSAkYiBhbmQgJGEgPT0gJGMgYW5kICRhID09ICRkIHsgJG91dHB1dDogJGE7ICAgICAgICAgIH1cclxuICBAZWxzZSBpZiAkYSA9PSAkYyBhbmQgJGIgPT0gJGQgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiOyAgICAgICB9XHJcbiAgQGVsc2UgaWYgJGIgPT0gJGQgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYzsgICAgfVxyXG4gIEBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgJG91dHB1dDogJGEgJGIgJGMgJGQ7IH1cclxuXHJcbiAgQHJldHVybiAkb3V0cHV0O1xyXG59XHJcblxyXG4vLy8gT3V0cHV0IGRpcmVjdGlvbmFsIHByb3BlcnRpZXMsIGZvciBpbnN0YW5jZSBgbWFyZ2luYC5cclxuLy8vXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByZVxyXG4vLy8gICBQcmVmaXggdG8gdXNlXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN1ZlxyXG4vLy8gICBTdWZmaXggdG8gdXNlXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICR2YWxzXHJcbi8vLyAgIExpc3Qgb2YgdmFsdWVzXHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb2xsYXBzZS1kaXJlY3Rpb25hbHNcclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnMtZmFsc3lcclxuXHJcbkBtaXhpbiBkaXJlY3Rpb25hbC1wcm9wZXJ0eSgkcHJlLCAkc3VmLCAkdmFscykge1xyXG4gIC8vIFByb3BlcnR5IE5hbWVzXHJcbiAgJHRvcDogICAgJHByZSArIFwiLXRvcFwiICAgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcclxuICAkYm90dG9tOiAkcHJlICsgXCItYm90dG9tXCIgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xyXG4gICRsZWZ0OiAgICRwcmUgKyBcIi1sZWZ0XCIgICArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XHJcbiAgJHJpZ2h0OiAgJHByZSArIFwiLXJpZ2h0XCIgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcclxuICAkYWxsOiAgICAkcHJlICsgICAgICAgICAgICAgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcclxuXHJcbiAgJHZhbHM6IGNvbGxhcHNlLWRpcmVjdGlvbmFscygkdmFscyk7XHJcblxyXG4gIEBpZiBjb250YWlucy1mYWxzeSgkdmFscykge1xyXG4gICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyR0b3B9OiBudGgoJHZhbHMsIDEpOyB9XHJcblxyXG4gICAgQGlmIGxlbmd0aCgkdmFscykgPT0gMSB7XHJcbiAgICAgIEBpZiBudGgoJHZhbHMsIDEpIHsgI3skcmlnaHR9OiBudGgoJHZhbHMsIDEpOyB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRyaWdodH06IG50aCgkdmFscywgMik7IH1cclxuICAgIH1cclxuXHJcbiAgICBAaWYgbGVuZ3RoKCR2YWxzKSA9PSAyIHtcclxuICAgICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDEpOyB9XHJcbiAgICAgIEBpZiBudGgoJHZhbHMsIDIpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCAyKTsgfVxyXG4gICAgfSBAZWxzZSBpZiBsZW5ndGgoJHZhbHMpID09IDMge1xyXG4gICAgICBAaWYgbnRoKCR2YWxzLCAzKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMyk7IH1cclxuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDIpOyB9XHJcbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFscykgPT0gNCB7XHJcbiAgICAgIEBpZiBudGgoJHZhbHMsIDMpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAzKTsgfVxyXG4gICAgICBAaWYgbnRoKCR2YWxzLCA0KSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgNCk7IH1cclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgICN7JGFsbH06ICR2YWxzO1xyXG4gIH1cclxufVxyXG4iLCIvLyBVc2VkIGZvciBjcmVhdGluZyB0aGUgc291cmNlIHN0cmluZyBmb3IgZm9udHMgdXNpbmcgQGZvbnQtZmFjZVxyXG4vLyBSZWZlcmVuY2U6IGh0dHA6Ly9nb28uZ2wvUnUxYktQXHJcblxyXG5AZnVuY3Rpb24gZm9udC11cmwtcHJlZml4ZXIoJGFzc2V0LXBpcGVsaW5lKSB7XHJcbiAgQGlmICRhc3NldC1waXBlbGluZSA9PSB0cnVlIHtcclxuICAgIEByZXR1cm4gZm9udC11cmw7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAcmV0dXJuIHVybDtcclxuICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBmb250LXNvdXJjZS1kZWNsYXJhdGlvbihcclxuICAkZm9udC1mYW1pbHksXHJcbiAgJGZpbGUtcGF0aCxcclxuICAkYXNzZXQtcGlwZWxpbmUsXHJcbiAgJGZpbGUtZm9ybWF0cyxcclxuICAkZm9udC11cmwpIHtcclxuXHJcbiAgJHNyYzogKCk7XHJcblxyXG4gICRmb3JtYXRzLW1hcDogKFxyXG4gICAgZW90OiAgIFwiI3skZmlsZS1wYXRofS5lb3Q/I2llZml4XCIgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXHJcbiAgICB3b2ZmMjogXCIjeyRmaWxlLXBhdGh9LndvZmYyXCIgZm9ybWF0KFwid29mZjJcIiksXHJcbiAgICB3b2ZmOiAgXCIjeyRmaWxlLXBhdGh9LndvZmZcIiBmb3JtYXQoXCJ3b2ZmXCIpLFxyXG4gICAgdHRmOiAgIFwiI3skZmlsZS1wYXRofS50dGZcIiBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcclxuICAgIHN2ZzogICBcIiN7JGZpbGUtcGF0aH0uc3ZnIyN7JGZvbnQtZmFtaWx5fVwiIGZvcm1hdChcInN2Z1wiKVxyXG4gICk7XHJcblxyXG4gIEBlYWNoICRrZXksICR2YWx1ZXMgaW4gJGZvcm1hdHMtbWFwIHtcclxuICAgIEBpZiBjb250YWlucygkZmlsZS1mb3JtYXRzLCAka2V5KSB7XHJcbiAgICAgICRmaWxlLXBhdGg6IG50aCgkdmFsdWVzLCAxKTtcclxuICAgICAgJGZvbnQtZm9ybWF0OiBudGgoJHZhbHVlcywgMik7XHJcblxyXG4gICAgICBAaWYgJGFzc2V0LXBpcGVsaW5lID09IHRydWUge1xyXG4gICAgICAgICRzcmM6IGFwcGVuZCgkc3JjLCBmb250LXVybCgkZmlsZS1wYXRoKSAkZm9udC1mb3JtYXQsIGNvbW1hKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgJHNyYzogYXBwZW5kKCRzcmMsIHVybCgkZmlsZS1wYXRoKSAkZm9udC1mb3JtYXQsIGNvbW1hKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkc3JjO1xyXG59XHJcbiIsIkBmdW5jdGlvbiBfZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtdHlwZSwgJGdyYWRpZW50LXBvc2l0aW9ucykge1xyXG4gIEBpZiAkZ3JhZGllbnQtcG9zaXRpb25zXHJcbiAgYW5kICgkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIpXHJcbiAgYW5kICh0eXBlLW9mKCRncmFkaWVudC1wb3NpdGlvbnMpICE9IGNvbG9yKSB7XHJcbiAgICAkZ3JhZGllbnQtcG9zaXRpb25zOiBfbGluZWFyLXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXBvc2l0aW9ucyk7XHJcbiAgfVxyXG4gIEBlbHNlIGlmICRncmFkaWVudC1wb3NpdGlvbnNcclxuICBhbmQgKCRncmFkaWVudC10eXBlID09IHJhZGlhbClcclxuICBhbmQgKHR5cGUtb2YoJGdyYWRpZW50LXBvc2l0aW9ucykgIT0gY29sb3IpIHtcclxuICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9yYWRpYWwtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zaXRpb25zKTtcclxuICB9XHJcbiAgQHJldHVybiAkZ3JhZGllbnQtcG9zaXRpb25zO1xyXG59XHJcbiIsIi8vIFByaXZhdGUgZnVuY3Rpb24gZm9yIGxpbmVhci1ncmFkaWVudC1wYXJzZXJcclxuQGZ1bmN0aW9uIF9saW5lYXItYW5nbGUtcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCkge1xyXG4gICRvZmZzZXQ6IG51bGw7XHJcbiAgJHVuaXQtc2hvcnQ6ICBzdHItc2xpY2UoJGZpcnN0LXZhbCwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSAtIDIsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xyXG4gICR1bml0LWxvbmc6ICAgc3RyLXNsaWNlKCRmaXJzdC12YWwsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkgLSAzLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcclxuXHJcbiAgQGlmICgkdW5pdC1sb25nID09IFwiZ3JhZFwiKSBvclxyXG4gICAgICAoJHVuaXQtbG9uZyA9PSBcInR1cm5cIikge1xyXG4gICAgJG9mZnNldDogaWYoJHVuaXQtbG9uZyA9PSBcImdyYWRcIiwgLTEwMGdyYWQgKiAzLCAtMC43NXR1cm4pO1xyXG4gIH1cclxuXHJcbiAgQGVsc2UgaWYgKCR1bml0LXNob3J0ID09IFwiZGVnXCIpIG9yXHJcbiAgICAgICAgICAgKCR1bml0LXNob3J0ID09IFwicmFkXCIpIHtcclxuICAgICRvZmZzZXQ6IGlmKCR1bml0LXNob3J0ID09IFwiZGVnXCIsIC05MCAqIDMsIDEuNnJhZCk7XHJcbiAgfVxyXG5cclxuICBAaWYgJG9mZnNldCB7XHJcbiAgICAkbnVtOiBfc3RyLXRvLW51bSgkZmlyc3QtdmFsKTtcclxuXHJcbiAgICBAcmV0dXJuIChcclxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRwcmVmaXggKyAoJG9mZnNldCAtICRudW0pICsgJHN1ZmZpeCxcclxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iLCJAZnVuY3Rpb24gX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoJGltYWdlKSB7XHJcbiAgJGltYWdlOiB1bnF1b3RlKCRpbWFnZSk7XHJcbiAgJGdyYWRpZW50czogKCk7XHJcbiAgJHN0YXJ0OiBzdHItaW5kZXgoJGltYWdlLCBcIihcIik7XHJcbiAgJGVuZDogc3RyLWluZGV4KCRpbWFnZSwgXCIsXCIpO1xyXG4gICRmaXJzdC12YWw6IHN0ci1zbGljZSgkaW1hZ2UsICRzdGFydCArIDEsICRlbmQgLSAxKTtcclxuXHJcbiAgJHByZWZpeDogc3RyLXNsaWNlKCRpbWFnZSwgMSwgJHN0YXJ0KTtcclxuICAkc3VmZml4OiBzdHItc2xpY2UoJGltYWdlLCAkZW5kLCBzdHItbGVuZ3RoKCRpbWFnZSkpO1xyXG5cclxuICAkaGFzLW11bHRpcGxlLXZhbHM6IHN0ci1pbmRleCgkZmlyc3QtdmFsLCBcIiBcIik7XHJcbiAgJGhhcy1zaW5nbGUtcG9zaXRpb246IHVucXVvdGUoX3Bvc2l0aW9uLWZsaXBwZXIoJGZpcnN0LXZhbCkgKyBcIlwiKTtcclxuICAkaGFzLWFuZ2xlOiBpcy1udW1iZXIoc3RyLXNsaWNlKCRmaXJzdC12YWwsIDEsIDEpKTtcclxuXHJcbiAgQGlmICRoYXMtbXVsdGlwbGUtdmFscyB7XHJcbiAgICAkZ3JhZGllbnRzOiBfbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlcigkaW1hZ2UsICRmaXJzdC12YWwsICRwcmVmaXgsICRzdWZmaXgsICRoYXMtbXVsdGlwbGUtdmFscyk7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkaGFzLXNpbmdsZS1wb3NpdGlvbiAhPSBcIlwiIHtcclxuICAgICRwb3M6IHVucXVvdGUoJGhhcy1zaW5nbGUtcG9zaXRpb24gKyBcIlwiKTtcclxuXHJcbiAgICAkZ3JhZGllbnRzOiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRwcmVmaXggKyBcInRvIFwiICsgJHBvcyArICRzdWZmaXhcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkaGFzLWFuZ2xlIHtcclxuICAgIC8vIFJvdGF0ZSBkZWdyZWUgZm9yIHdlYmtpdFxyXG4gICAgJGdyYWRpZW50czogX2xpbmVhci1hbmdsZS1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4KTtcclxuICB9XHJcblxyXG4gIEBlbHNlIHtcclxuICAgICRncmFkaWVudHM6IChcclxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcclxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkZ3JhZGllbnRzO1xyXG59XHJcbiIsIkBmdW5jdGlvbiBfbGluZWFyLXBvc2l0aW9ucy1wYXJzZXIoJHBvcykge1xyXG4gICR0eXBlOiB0eXBlLW9mKG50aCgkcG9zLCAxKSk7XHJcbiAgJHNwZWM6IG51bGw7XHJcbiAgJGRlZ3JlZTogbnVsbDtcclxuICAkc2lkZTogbnVsbDtcclxuICAkY29ybmVyOiBudWxsO1xyXG4gICRsZW5ndGg6IGxlbmd0aCgkcG9zKTtcclxuICAvLyBQYXJzZSBTaWRlIGFuZCBjb3JuZXIgcG9zaXRpb25zXHJcbiAgQGlmICgkbGVuZ3RoID4gMSkge1xyXG4gICAgQGlmIG50aCgkcG9zLCAxKSA9PSBcInRvXCIgeyAvLyBOZXdlciBzeW50YXhcclxuICAgICAgJHNpZGU6IG50aCgkcG9zLCAyKTtcclxuXHJcbiAgICAgIEBpZiAkbGVuZ3RoID09IDIgeyAvLyBlZy4gdG8gdG9wXHJcbiAgICAgICAgLy8gU3dhcCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcclxuICAgICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcihudGgoJHBvcywgMikpO1xyXG4gICAgICB9XHJcbiAgICAgIEBlbHNlIGlmICRsZW5ndGggPT0gMyB7IC8vIGVnLiB0byB0b3AgbGVmdFxyXG4gICAgICAgICRjb3JuZXI6IG50aCgkcG9zLCAzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJGxlbmd0aCA9PSAyIHsgLy8gT2xkZXIgc3ludGF4IChcInRvcCBsZWZ0XCIpXHJcbiAgICAgICRzaWRlOiBfcG9zaXRpb24tZmxpcHBlcihudGgoJHBvcywgMSkpO1xyXG4gICAgICAkY29ybmVyOiBfcG9zaXRpb24tZmxpcHBlcihudGgoJHBvcywgMikpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJsZWZ0IHRvcFwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJ0b3AgbGVmdFwiKSB7XHJcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInJpZ2h0IHRvcFwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJ0b3AgcmlnaHRcIikge1xyXG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJyaWdodCBib3R0b21cIikgb3IgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwiYm90dG9tIHJpZ2h0XCIpIHtcclxuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwibGVmdCBib3R0b21cIikgb3IgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwiYm90dG9tIGxlZnRcIikge1xyXG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XHJcbiAgICB9XHJcbiAgICAkc3BlYzogdG8gJHNpZGUgJGNvcm5lcjtcclxuICB9XHJcbiAgQGVsc2UgaWYgJGxlbmd0aCA9PSAxIHtcclxuICAgIC8vIFN3YXAgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XHJcbiAgICBAaWYgJHR5cGUgPT0gc3RyaW5nIHtcclxuICAgICAgJGRlZ3JlZTogJHBvcztcclxuICAgICAgJHNwZWM6IHRvIF9wb3NpdGlvbi1mbGlwcGVyKCRwb3MpO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAkZGVncmVlOiAtMjcwIC0gJHBvczsgLy9yb3RhdGUgdGhlIGdyYWRpZW50IG9wcG9zaXRlIGZyb20gc3BlY1xyXG4gICAgICAkc3BlYzogJHBvcztcclxuICAgIH1cclxuICB9XHJcbiAgJGRlZ3JlZTogdW5xdW90ZSgkZGVncmVlICsgXCIsXCIpO1xyXG4gICRzcGVjOiAgIHVucXVvdGUoJHNwZWMgKyBcIixcIik7XHJcbiAgQHJldHVybiAkZGVncmVlICRzcGVjO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gX3Bvc2l0aW9uLWZsaXBwZXIoJHBvcykge1xyXG4gIEByZXR1cm4gaWYoJHBvcyA9PSBsZWZ0LCByaWdodCwgbnVsbClcclxuICAgICAgICAgaWYoJHBvcyA9PSByaWdodCwgbGVmdCwgbnVsbClcclxuICAgICAgICAgaWYoJHBvcyA9PSB0b3AsIGJvdHRvbSwgbnVsbClcclxuICAgICAgICAgaWYoJHBvcyA9PSBib3R0b20sIHRvcCwgbnVsbCk7XHJcbn1cclxuIiwiLy8gUHJpdmF0ZSBmdW5jdGlvbiBmb3IgbGluZWFyLWdyYWRpZW50LXBhcnNlclxyXG5AZnVuY3Rpb24gX2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4LCAkaGFzLW11bHRpcGxlLXZhbHMpIHtcclxuICAkdmFsLTE6IHN0ci1zbGljZSgkZmlyc3QtdmFsLCAxLCAkaGFzLW11bHRpcGxlLXZhbHMgLSAxKTtcclxuICAkdmFsLTI6IHN0ci1zbGljZSgkZmlyc3QtdmFsLCAkaGFzLW11bHRpcGxlLXZhbHMgKyAxLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcclxuICAkdmFsLTM6IG51bGw7XHJcbiAgJGhhcy12YWwtMzogc3RyLWluZGV4KCR2YWwtMiwgXCIgXCIpO1xyXG5cclxuICBAaWYgJGhhcy12YWwtMyB7XHJcbiAgICAkdmFsLTM6IHN0ci1zbGljZSgkdmFsLTIsICRoYXMtdmFsLTMgKyAxLCBzdHItbGVuZ3RoKCR2YWwtMikpO1xyXG4gICAgJHZhbC0yOiBzdHItc2xpY2UoJHZhbC0yLCAxLCAkaGFzLXZhbC0zIC0gMSk7XHJcbiAgfVxyXG5cclxuICAkcG9zOiBfcG9zaXRpb24tZmxpcHBlcigkdmFsLTEpIF9wb3NpdGlvbi1mbGlwcGVyKCR2YWwtMikgX3Bvc2l0aW9uLWZsaXBwZXIoJHZhbC0zKTtcclxuICAkcG9zOiB1bnF1b3RlKCRwb3MgKyBcIlwiKTtcclxuXHJcbiAgLy8gVXNlIG9sZCBzcGVjIGZvciB3ZWJraXRcclxuICBAaWYgJHZhbC0xID09IFwidG9cIiB7XHJcbiAgICBAcmV0dXJuIChcclxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRwcmVmaXggKyAkcG9zICsgJHN1ZmZpeCxcclxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8gQnJpbmcgdGhlIGNvZGUgdXAgdG8gc3BlY1xyXG4gIEBlbHNlIHtcclxuICAgIEByZXR1cm4gKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJGltYWdlLFxyXG4gICAgICBzcGVjLWltYWdlOiAkcHJlZml4ICsgXCJ0byBcIiArICRwb3MgKyAkc3VmZml4XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iLCJAZnVuY3Rpb24gX3JhZGlhbC1hcmctcGFyc2VyKCRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZSkge1xyXG4gIEBlYWNoICR2YWx1ZSBpbiAkZzEsICRnMiB7XHJcbiAgICAkZmlyc3QtdmFsOiBudGgoJHZhbHVlLCAxKTtcclxuICAgICRwb3MtdHlwZTogIHR5cGUtb2YoJGZpcnN0LXZhbCk7XHJcbiAgICAkc3BlYy1hdC1pbmRleDogbnVsbDtcclxuXHJcbiAgICAvLyBEZXRlcm1pbmUgaWYgc3BlYyB3YXMgcGFzc2VkIHRvIG1peGluXHJcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IGxpc3Qge1xyXG4gICAgICAkc3BlYy1hdC1pbmRleDogaWYoaW5kZXgoJHZhbHVlLCBhdCksIGluZGV4KCR2YWx1ZSwgYXQpLCBmYWxzZSk7XHJcbiAgICB9XHJcbiAgICBAaWYgJHNwZWMtYXQtaW5kZXgge1xyXG4gICAgICBAaWYgJHNwZWMtYXQtaW5kZXggPiAxIHtcclxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkc3BlYy1hdC1pbmRleCAtIDEpIHtcclxuICAgICAgICAgICRzaGFwZS1zaXplOiAkc2hhcGUtc2l6ZSBudGgoJHZhbHVlLCAkaSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcclxuICAgICAgICAgICRwb3M6ICRwb3MgbnRoKCR2YWx1ZSwgJGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAZWxzZSBpZiAkc3BlYy1hdC1pbmRleCA9PSAxIHtcclxuICAgICAgICBAZm9yICRpIGZyb20gKCRzcGVjLWF0LWluZGV4ICsgMSkgdGhyb3VnaCBsZW5ndGgoJHZhbHVlKSB7XHJcbiAgICAgICAgICAkcG9zOiAkcG9zIG50aCgkdmFsdWUsICRpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJGcxOiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIElmIG5vdCBzcGVjIGNhbGN1bGF0ZSBjb3JyZWN0IHZhbHVlc1xyXG4gICAgQGVsc2Uge1xyXG4gICAgICBAaWYgKCRwb3MtdHlwZSAhPSBjb2xvcikgb3IgKCRmaXJzdC12YWwgIT0gXCJ0cmFuc3BhcmVudFwiKSB7XHJcbiAgICAgICAgQGlmICgkcG9zLXR5cGUgPT0gbnVtYmVyKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY2VudGVyXCIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJ0b3BcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInJpZ2h0XCIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJib3R0b21cIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImxlZnRcIikge1xyXG5cclxuICAgICAgICAgICRwb3M6ICR2YWx1ZTtcclxuXHJcbiAgICAgICAgICBAaWYgJHBvcyA9PSAkZzEge1xyXG4gICAgICAgICAgICAkZzE6IG51bGw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAZWxzZSBpZlxyXG4gICAgICAgICAgICgkZmlyc3QtdmFsID09IFwiZWxsaXBzZVwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY2lyY2xlXCIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjbG9zZXN0LXNpZGVcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3QtY29ybmVyXCIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJmYXJ0aGVzdC1zaWRlXCIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJmYXJ0aGVzdC1jb3JuZXJcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNvbnRhaW5cIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNvdmVyXCIpIHtcclxuXHJcbiAgICAgICAgICAkc2hhcGUtc2l6ZTogJHZhbHVlO1xyXG5cclxuICAgICAgICAgIEBpZiAkdmFsdWUgPT0gJGcxIHtcclxuICAgICAgICAgICAgJGcxOiBudWxsO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIEBlbHNlIGlmICR2YWx1ZSA9PSAkZzIge1xyXG4gICAgICAgICAgICAkZzI6IG51bGw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEByZXR1cm4gJGcxLCAkZzIsICRwb3MsICRzaGFwZS1zaXplO1xyXG59XHJcbiIsIkBmdW5jdGlvbiBfcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXBvcykge1xyXG4gICRzaGFwZS1zaXplOiBudGgoJGdyYWRpZW50LXBvcywgMSk7XHJcbiAgJHBvczogICAgICAgIG50aCgkZ3JhZGllbnQtcG9zLCAyKTtcclxuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XHJcblxyXG4gICRwcmUtc3BlYzogdW5xdW90ZShpZigkcG9zLCBcIiN7JHBvc30sIFwiLCBudWxsKSlcclxuICAgICAgICAgICAgIHVucXVvdGUoaWYoJHNoYXBlLXNpemUsIFwiI3skc2hhcGUtc2l6ZX0sXCIsIG51bGwpKTtcclxuICAkcG9zLXNwZWM6IGlmKCRwb3MsIFwiYXQgI3skcG9zfVwiLCBudWxsKTtcclxuXHJcbiAgJHNwZWM6IFwiI3skc2hhcGUtc2l6ZS1zcGVjfSAjeyRwb3Mtc3BlY31cIjtcclxuXHJcbiAgLy8gQWRkIGNvbW1hXHJcbiAgQGlmICgkc3BlYyAhPSBcIiAgXCIpIHtcclxuICAgICRzcGVjOiBcIiN7JHNwZWN9LFwiO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkcHJlLXNwZWMgJHNwZWM7XHJcbn1cclxuIiwiQGZ1bmN0aW9uIF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSkge1xyXG4gICRpbWFnZTogdW5xdW90ZSgkaW1hZ2UpO1xyXG4gICRncmFkaWVudHM6ICgpO1xyXG4gICRzdGFydDogc3RyLWluZGV4KCRpbWFnZSwgXCIoXCIpO1xyXG4gICRlbmQ6IHN0ci1pbmRleCgkaW1hZ2UsIFwiLFwiKTtcclxuICAkZmlyc3QtdmFsOiBzdHItc2xpY2UoJGltYWdlLCAkc3RhcnQgKyAxLCAkZW5kIC0gMSk7XHJcblxyXG4gICRwcmVmaXg6IHN0ci1zbGljZSgkaW1hZ2UsIDEsICRzdGFydCk7XHJcbiAgJHN1ZmZpeDogc3RyLXNsaWNlKCRpbWFnZSwgJGVuZCwgc3RyLWxlbmd0aCgkaW1hZ2UpKTtcclxuXHJcbiAgJGlzLXNwZWMtc3ludGF4OiBzdHItaW5kZXgoJGZpcnN0LXZhbCwgXCJhdFwiKTtcclxuXHJcbiAgQGlmICRpcy1zcGVjLXN5bnRheCBhbmQgJGlzLXNwZWMtc3ludGF4ID4gMSB7XHJcbiAgICAka2V5d29yZDogc3RyLXNsaWNlKCRmaXJzdC12YWwsIDEsICRpcy1zcGVjLXN5bnRheCAtIDIpO1xyXG4gICAgJHBvczogc3RyLXNsaWNlKCRmaXJzdC12YWwsICRpcy1zcGVjLXN5bnRheCArIDMsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xyXG4gICAgJHBvczogYXBwZW5kKCRwb3MsICRrZXl3b3JkLCBjb21tYSk7XHJcblxyXG4gICAgJGdyYWRpZW50czogKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkaXMtc3BlYy1zeW50YXggPT0gMSB7XHJcbiAgICAkcG9zOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgJGlzLXNwZWMtc3ludGF4ICsgMywgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XHJcblxyXG4gICAgJGdyYWRpZW50czogKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiBzdHItaW5kZXgoJGltYWdlLCBcImNvdmVyXCIpIG9yIHN0ci1pbmRleCgkaW1hZ2UsIFwiY29udGFpblwiKSB7XHJcbiAgICBAd2FybiBcIlJhZGlhbC1ncmFkaWVudCBuZWVkcyB0byBiZSB1cGRhdGVkIHRvIGNvbmZvcm0gdG8gbGF0ZXN0IHNwZWMuXCI7XHJcblxyXG4gICAgJGdyYWRpZW50czogKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IG51bGwsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIHtcclxuICAgICRncmFkaWVudHM6IChcclxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcclxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkZ3JhZGllbnRzO1xyXG59XHJcbiIsIi8vIFVzZXIgZm9yIGxpbmVhciBhbmQgcmFkaWFsIGdyYWRpZW50cyB3aXRoaW4gYmFja2dyb3VuZC1pbWFnZSBvciBib3JkZXItaW1hZ2UgcHJvcGVydGllc1xyXG5cclxuQGZ1bmN0aW9uIF9yZW5kZXItZ3JhZGllbnRzKCRncmFkaWVudC1wb3NpdGlvbnMsICRncmFkaWVudHMsICRncmFkaWVudC10eXBlLCAkdmVuZG9yOiBmYWxzZSkge1xyXG4gICRwcmUtc3BlYzogbnVsbDtcclxuICAkc3BlYzogbnVsbDtcclxuICAkdmVuZG9yLWdyYWRpZW50czogbnVsbDtcclxuICBAaWYgJGdyYWRpZW50LXR5cGUgPT0gbGluZWFyIHtcclxuICAgIEBpZiAkZ3JhZGllbnQtcG9zaXRpb25zIHtcclxuICAgICAgJHByZS1zcGVjOiBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMSk7XHJcbiAgICAgICRzcGVjOiAgICAgbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDIpO1xyXG4gICAgfVxyXG4gIH1cclxuICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSByYWRpYWwge1xyXG4gICAgJHByZS1zcGVjOiBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMSk7XHJcbiAgICAkc3BlYzogICAgIG50aCgkZ3JhZGllbnQtcG9zaXRpb25zLCAyKTtcclxuICB9XHJcblxyXG4gIEBpZiAkdmVuZG9yIHtcclxuICAgICR2ZW5kb3ItZ3JhZGllbnRzOiAtI3skdmVuZG9yfS0jeyRncmFkaWVudC10eXBlfS1ncmFkaWVudCgjeyRwcmUtc3BlY30gJGdyYWRpZW50cyk7XHJcbiAgfVxyXG4gIEBlbHNlIGlmICR2ZW5kb3IgPT0gZmFsc2Uge1xyXG4gICAgJHZlbmRvci1ncmFkaWVudHM6IFwiI3skZ3JhZGllbnQtdHlwZX0tZ3JhZGllbnQoI3skc3BlY30gI3skZ3JhZGllbnRzfSlcIjtcclxuICAgICR2ZW5kb3ItZ3JhZGllbnRzOiB1bnF1b3RlKCR2ZW5kb3ItZ3JhZGllbnRzKTtcclxuICB9XHJcbiAgQHJldHVybiAkdmVuZG9yLWdyYWRpZW50cztcclxufVxyXG4iLCJAZnVuY3Rpb24gX3NoYXBlLXNpemUtc3RyaXBwZXIoJHNoYXBlLXNpemUpIHtcclxuICAkc2hhcGUtc2l6ZS1zcGVjOiBudWxsO1xyXG4gIEBlYWNoICR2YWx1ZSBpbiAkc2hhcGUtc2l6ZSB7XHJcbiAgICBAaWYgKCR2YWx1ZSA9PSBcImNvdmVyXCIpIG9yICgkdmFsdWUgPT0gXCJjb250YWluXCIpIHtcclxuICAgICAgJHZhbHVlOiBudWxsO1xyXG4gICAgfVxyXG4gICAgJHNoYXBlLXNpemUtc3BlYzogXCIjeyRzaGFwZS1zaXplLXNwZWN9ICN7JHZhbHVlfVwiO1xyXG4gIH1cclxuICBAcmV0dXJuICRzaGFwZS1zaXplLXNwZWM7XHJcbn1cclxuIiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG4vLyBIZWxwZXIgZnVuY3Rpb24gZm9yIGxpbmVhci9yYWRpYWwtZ3JhZGllbnQtcGFyc2Vycy5cclxuLy8gU291cmNlOiBodHRwOi8vc2Fzc21laXN0ZXIuY29tL2dpc3QvOTY0NzQwOFxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbkBmdW5jdGlvbiBfc3RyLXRvLW51bSgkc3RyaW5nKSB7XHJcbiAgLy8gTWF0cmljZXNcclxuICAkc3RyaW5nczogXCIwXCIgXCIxXCIgXCIyXCIgXCIzXCIgXCI0XCIgXCI1XCIgXCI2XCIgXCI3XCIgXCI4XCIgXCI5XCI7XHJcbiAgJG51bWJlcnM6ICAwICAgMSAgIDIgICAzICAgNCAgIDUgICA2ICAgNyAgIDggICA5O1xyXG5cclxuICAvLyBSZXN1bHRcclxuICAkcmVzdWx0OiAwO1xyXG4gICRkaXZpZGVyOiAwO1xyXG4gICRtaW51czogZmFsc2U7XHJcblxyXG4gIC8vIExvb3BpbmcgdGhyb3VnaCBhbGwgY2hhcmFjdGVyc1xyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyLWxlbmd0aCgkc3RyaW5nKSB7XHJcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHN0cmluZywgJGksICRpKTtcclxuICAgICRpbmRleDogaW5kZXgoJHN0cmluZ3MsICRjaGFyYWN0ZXIpO1xyXG5cclxuICAgIEBpZiAkY2hhcmFjdGVyID09IFwiLVwiIHtcclxuICAgICAgJG1pbnVzOiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIGlmICRjaGFyYWN0ZXIgPT0gXCIuXCIge1xyXG4gICAgICAkZGl2aWRlcjogMTtcclxuICAgIH1cclxuXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIEBpZiBub3QgJGluZGV4IHtcclxuICAgICAgICAkcmVzdWx0OiBpZigkbWludXMsICRyZXN1bHQgKiAtMSwgJHJlc3VsdCk7XHJcbiAgICAgICAgQHJldHVybiBfY29udmVydC11bml0cygkcmVzdWx0LCBzdHItc2xpY2UoJHN0cmluZywgJGkpKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJG51bWJlcjogbnRoKCRudW1iZXJzLCAkaW5kZXgpO1xyXG5cclxuICAgICAgQGlmICRkaXZpZGVyID09IDAge1xyXG4gICAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2Uge1xyXG4gICAgICAgIC8vIE1vdmUgdGhlIGRlY2ltYWwgZG90IHRvIHRoZSBsZWZ0XHJcbiAgICAgICAgJGRpdmlkZXI6ICRkaXZpZGVyICogMTA7XHJcbiAgICAgICAgJG51bWJlcjogJG51bWJlciAvICRkaXZpZGVyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgJG51bWJlcjtcclxuICAgIH1cclxuICB9XHJcbiAgQHJldHVybiBpZigkbWludXMsICRyZXN1bHQgKiAtMSwgJHJlc3VsdCk7XHJcbn1cclxuIiwiLy8gaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy1hbmltYXRpb25zLyN0aGUtYW5pbWF0aW9uLW5hbWUtcHJvcGVydHktXHJcbi8vIEVhY2ggb2YgdGhlc2UgbWl4aW5zIHN1cHBvcnQgY29tbWEgc2VwYXJhdGVkIGxpc3RzIG9mIHZhbHVlcywgd2hpY2ggYWxsb3dzIGRpZmZlcmVudCB0cmFuc2l0aW9ucyBmb3IgaW5kaXZpZHVhbCBwcm9wZXJ0aWVzIHRvIGJlIGRlc2NyaWJlZCBpbiBhIHNpbmdsZSBzdHlsZSBydWxlLiBFYWNoIHZhbHVlIGluIHRoZSBsaXN0IGNvcnJlc3BvbmRzIHRvIHRoZSB2YWx1ZSBhdCB0aGF0IHNhbWUgcG9zaXRpb24gaW4gdGhlIG90aGVyIHByb3BlcnRpZXMuXHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb25zLi4uKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLCAkYW5pbWF0aW9ucywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lcy4uLikge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1uYW1lLCAkbmFtZXMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJHRpbWVzLi4uKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWR1cmF0aW9uLCAkdGltZXMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCRtb3Rpb25zLi4uKSB7XHJcbiAgLy8gZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCR2YWx1ZXMuLi4pIHtcclxuICAvLyBpbmZpbml0ZSB8IDxudW1iZXI+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgJHZhbHVlcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbnMuLi4pIHtcclxuICAvLyBub3JtYWwgfCBhbHRlcm5hdGVcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZGlyZWN0aW9uLCAkZGlyZWN0aW9ucywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1wbGF5LXN0YXRlKCRzdGF0ZXMuLi4pIHtcclxuICAvLyBydW5uaW5nIHwgcGF1c2VkXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLXBsYXktc3RhdGUsICRzdGF0ZXMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJHRpbWVzLi4uKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWRlbGF5LCAkdGltZXMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRtb2Rlcy4uLikge1xyXG4gIC8vIG5vbmUgfCBmb3J3YXJkcyB8IGJhY2t3YXJkcyB8IGJvdGhcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZmlsbC1tb2RlLCAkbW9kZXMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuIiwiQG1peGluIGFwcGVhcmFuY2UoJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYXBwZWFyYW5jZSwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XHJcbn1cclxuIiwiQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihiYWNrZmFjZS12aXNpYmlsaXR5LCAkdmlzaWJpbGl0eSwgd2Via2l0IHNwZWMpO1xyXG59XHJcbiIsIi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cclxuLy8gQmFja2dyb3VuZCBwcm9wZXJ0eSBmb3IgYWRkaW5nIG11bHRpcGxlIGJhY2tncm91bmRzIHVzaW5nIHNob3J0aGFuZFxyXG4vLyBub3RhdGlvbi5cclxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG5cclxuQG1peGluIGJhY2tncm91bmQoJGJhY2tncm91bmRzLi4uKSB7XHJcbiAgJHdlYmtpdC1iYWNrZ3JvdW5kczogKCk7XHJcbiAgJHNwZWMtYmFja2dyb3VuZHM6ICgpO1xyXG5cclxuICBAZWFjaCAkYmFja2dyb3VuZCBpbiAkYmFja2dyb3VuZHMge1xyXG4gICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiAoKTtcclxuICAgICRzcGVjLWJhY2tncm91bmQ6ICgpO1xyXG4gICAgJGJhY2tncm91bmQtdHlwZTogdHlwZS1vZigkYmFja2dyb3VuZCk7XHJcblxyXG4gICAgQGlmICRiYWNrZ3JvdW5kLXR5cGUgPT0gc3RyaW5nIG9yICRiYWNrZ3JvdW5kLXR5cGUgPT0gbGlzdCB7XHJcbiAgICAgICRiYWNrZ3JvdW5kLXN0cjogaWYoJGJhY2tncm91bmQtdHlwZSA9PSBsaXN0LCBudGgoJGJhY2tncm91bmQsIDEpLCAkYmFja2dyb3VuZCk7XHJcblxyXG4gICAgICAkdXJsLXN0cjogICAgICAgc3RyLXNsaWNlKCRiYWNrZ3JvdW5kLXN0ciwgMSwgMyk7XHJcbiAgICAgICRncmFkaWVudC10eXBlOiBzdHItc2xpY2UoJGJhY2tncm91bmQtc3RyLCAxLCA2KTtcclxuXHJcbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcclxuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gICAgICAgICRzcGVjLWJhY2tncm91bmQ6ICAgJGJhY2tncm91bmQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwibGluZWFyXCIge1xyXG4gICAgICAgICRncmFkaWVudHM6IF9saW5lYXItZ3JhZGllbnQtcGFyc2VyKFwiI3skYmFja2dyb3VuZH1cIik7XHJcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcInJhZGlhbFwiIHtcclxuICAgICAgICAkZ3JhZGllbnRzOiBfcmFkaWFsLWdyYWRpZW50LXBhcnNlcihcIiN7JGJhY2tncm91bmR9XCIpO1xyXG4gICAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xyXG4gICAgICAgICRzcGVjLWJhY2tncm91bmQ6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2Uge1xyXG4gICAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICAkYmFja2dyb3VuZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIHtcclxuICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgICAgJHNwZWMtYmFja2dyb3VuZDogICAkYmFja2dyb3VuZDtcclxuICAgIH1cclxuXHJcbiAgICAkd2Via2l0LWJhY2tncm91bmRzOiBhcHBlbmQoJHdlYmtpdC1iYWNrZ3JvdW5kcywgJHdlYmtpdC1iYWNrZ3JvdW5kLCBjb21tYSk7XHJcbiAgICAkc3BlYy1iYWNrZ3JvdW5kczogICBhcHBlbmQoJHNwZWMtYmFja2dyb3VuZHMsICAgJHNwZWMtYmFja2dyb3VuZCwgICBjb21tYSk7XHJcbiAgfVxyXG5cclxuICBiYWNrZ3JvdW5kOiAkd2Via2l0LWJhY2tncm91bmRzO1xyXG4gIGJhY2tncm91bmQ6ICRzcGVjLWJhY2tncm91bmRzO1xyXG59XHJcbiIsIi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cclxuLy8gQmFja2dyb3VuZC1pbWFnZSBwcm9wZXJ0eSBmb3IgYWRkaW5nIG11bHRpcGxlIGJhY2tncm91bmQgaW1hZ2VzIHdpdGhcclxuLy8gZ3JhZGllbnRzLCBvciBmb3Igc3RyaW5naW5nIG11bHRpcGxlIGdyYWRpZW50cyB0b2dldGhlci5cclxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG5cclxuQG1peGluIGJhY2tncm91bmQtaW1hZ2UoJGltYWdlcy4uLikge1xyXG4gICR3ZWJraXQtaW1hZ2VzOiAoKTtcclxuICAkc3BlYy1pbWFnZXM6ICgpO1xyXG5cclxuICBAZWFjaCAkaW1hZ2UgaW4gJGltYWdlcyB7XHJcbiAgICAkd2Via2l0LWltYWdlOiAoKTtcclxuICAgICRzcGVjLWltYWdlOiAoKTtcclxuXHJcbiAgICBAaWYgKHR5cGUtb2YoJGltYWdlKSA9PSBzdHJpbmcpIHtcclxuICAgICAgJHVybC1zdHI6ICAgICAgIHN0ci1zbGljZSgkaW1hZ2UsIDEsIDMpO1xyXG4gICAgICAkZ3JhZGllbnQtdHlwZTogc3RyLXNsaWNlKCRpbWFnZSwgMSwgNik7XHJcblxyXG4gICAgICBAaWYgJHVybC1zdHIgPT0gXCJ1cmxcIiB7XHJcbiAgICAgICAgJHdlYmtpdC1pbWFnZTogJGltYWdlO1xyXG4gICAgICAgICRzcGVjLWltYWdlOiAgICRpbWFnZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJsaW5lYXJcIiB7XHJcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoJGltYWdlKTtcclxuICAgICAgICAkd2Via2l0LWltYWdlOiAgbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xyXG4gICAgICAgICRzcGVjLWltYWdlOiAgICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcInJhZGlhbFwiIHtcclxuICAgICAgICAkZ3JhZGllbnRzOiBfcmFkaWFsLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpO1xyXG4gICAgICAgICR3ZWJraXQtaW1hZ2U6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcclxuICAgICAgICAkc3BlYy1pbWFnZTogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJHdlYmtpdC1pbWFnZXM6IGFwcGVuZCgkd2Via2l0LWltYWdlcywgJHdlYmtpdC1pbWFnZSwgY29tbWEpO1xyXG4gICAgJHNwZWMtaW1hZ2VzOiAgIGFwcGVuZCgkc3BlYy1pbWFnZXMsICAgJHNwZWMtaW1hZ2UsICAgY29tbWEpO1xyXG4gIH1cclxuXHJcbiAgYmFja2dyb3VuZC1pbWFnZTogJHdlYmtpdC1pbWFnZXM7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogJHNwZWMtaW1hZ2VzO1xyXG59XHJcbiIsIkBtaXhpbiBib3JkZXItaW1hZ2UoJGJvcmRlcnMuLi4pIHtcclxuICAkd2Via2l0LWJvcmRlcnM6ICgpO1xyXG4gICRzcGVjLWJvcmRlcnM6ICgpO1xyXG5cclxuICBAZWFjaCAkYm9yZGVyIGluICRib3JkZXJzIHtcclxuICAgICR3ZWJraXQtYm9yZGVyOiAoKTtcclxuICAgICRzcGVjLWJvcmRlcjogKCk7XHJcbiAgICAkYm9yZGVyLXR5cGU6IHR5cGUtb2YoJGJvcmRlcik7XHJcblxyXG4gICAgQGlmICRib3JkZXItdHlwZSA9PSBzdHJpbmcgb3IgbGlzdCB7XHJcbiAgICAgICRib3JkZXItc3RyOiBpZigkYm9yZGVyLXR5cGUgPT0gbGlzdCwgbnRoKCRib3JkZXIsIDEpLCAkYm9yZGVyKTtcclxuXHJcbiAgICAgICR1cmwtc3RyOiAgICAgICBzdHItc2xpY2UoJGJvcmRlci1zdHIsIDEsIDMpO1xyXG4gICAgICAkZ3JhZGllbnQtdHlwZTogc3RyLXNsaWNlKCRib3JkZXItc3RyLCAxLCA2KTtcclxuXHJcbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcclxuICAgICAgICAkd2Via2l0LWJvcmRlcjogJGJvcmRlcjtcclxuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgJGJvcmRlcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJsaW5lYXJcIiB7XHJcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoXCIjeyRib3JkZXJ9XCIpO1xyXG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtYm9yZGVyOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwicmFkaWFsXCIge1xyXG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKFwiI3skYm9yZGVyfVwiKTtcclxuICAgICAgICAkd2Via2l0LWJvcmRlcjogbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xyXG4gICAgICAgICRzcGVjLWJvcmRlcjogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6ICRib3JkZXI7XHJcbiAgICAgICAgJHNwZWMtYm9yZGVyOiAgICRib3JkZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICR3ZWJraXQtYm9yZGVyOiAkYm9yZGVyO1xyXG4gICAgICAkc3BlYy1ib3JkZXI6ICAgJGJvcmRlcjtcclxuICAgIH1cclxuXHJcbiAgICAkd2Via2l0LWJvcmRlcnM6IGFwcGVuZCgkd2Via2l0LWJvcmRlcnMsICR3ZWJraXQtYm9yZGVyLCBjb21tYSk7XHJcbiAgICAkc3BlYy1ib3JkZXJzOiAgIGFwcGVuZCgkc3BlYy1ib3JkZXJzLCAgICRzcGVjLWJvcmRlciwgICBjb21tYSk7XHJcbiAgfVxyXG5cclxuICAtd2Via2l0LWJvcmRlci1pbWFnZTogJHdlYmtpdC1ib3JkZXJzO1xyXG4gICAgICAgICAgYm9yZGVyLWltYWdlOiAkc3BlYy1ib3JkZXJzO1xyXG4gICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxufVxyXG5cclxuLy9FeGFtcGxlczpcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKHVybChcImltYWdlLnBuZ1wiKSk7XHJcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZSh1cmwoXCJpbWFnZS5wbmdcIikgMjAgc3RyZXRjaCk7XHJcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG9yYW5nZSwgeWVsbG93KSk7XHJcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG9yYW5nZSwgeWVsbG93KSBzdHJldGNoKTtcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpIDIwIDMwIDQwIDUwIHN0cmV0Y2ggcm91bmQpO1xyXG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UocmFkaWFsLWdyYWRpZW50KHRvcCwgY292ZXIsIG9yYW5nZSwgeWVsbG93LCBvcmFuZ2UpKTtcclxuIiwiQG1peGluIGNhbGMoJHByb3BlcnR5LCAkdmFsdWUpIHtcclxuICAjeyRwcm9wZXJ0eX06IC13ZWJraXQtY2FsYygjeyR2YWx1ZX0pO1xyXG4gICN7JHByb3BlcnR5fTogY2FsYygjeyR2YWx1ZX0pO1xyXG59XHJcbiIsIkBtaXhpbiBjb2x1bW5zKCRhcmc6IGF1dG8pIHtcclxuICAvLyA8Y29sdW1uLWNvdW50PiB8fCA8Y29sdW1uLXdpZHRoPlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbnMsICRhcmcsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tY291bnQoJGludDogYXV0bykge1xyXG4gIC8vIGF1dG8gfHwgaW50ZWdlclxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1jb3VudCwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1nYXAoJGxlbmd0aDogbm9ybWFsKSB7XHJcbiAgLy8gbm9ybWFsIHx8IGxlbmd0aFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1nYXAsICRsZW5ndGgsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tZmlsbCgkYXJnOiBhdXRvKSB7XHJcbiAgLy8gYXV0byB8fCBsZW5ndGhcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tZmlsbCwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1ydWxlKCRhcmcpIHtcclxuICAvLyA8Ym9yZGVyLXdpZHRoPiB8fCA8Ym9yZGVyLXN0eWxlPiB8fCA8Y29sb3I+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXJ1bGUsICRhcmcsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tcnVsZS1jb2xvcigkY29sb3IpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS1jb2xvciwgJGNvbG9yLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLXJ1bGUtc3R5bGUoJHN0eWxlOiBub25lKSB7XHJcbiAgLy8gbm9uZSB8IGhpZGRlbiB8IGRhc2hlZCB8IGRvdHRlZCB8IGRvdWJsZSB8IGdyb292ZSB8IGluc2V0IHwgaW5zZXQgfCBvdXRzZXQgfCByaWRnZSB8IHNvbGlkXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXJ1bGUtc3R5bGUsICRzdHlsZSwgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1ydWxlLXdpZHRoICgkd2lkdGg6IG5vbmUpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS13aWR0aCwgJHdpZHRoLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLXNwYW4oJGFyZzogbm9uZSkge1xyXG4gIC8vIG5vbmUgfHwgYWxsXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXNwYW4sICRhcmcsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4td2lkdGgoJGxlbmd0aDogYXV0bykge1xyXG4gIC8vIGF1dG8gfHwgbGVuZ3RoXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLXdpZHRoLCAkbGVuZ3RoLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcbiIsIkBtaXhpbiBmaWx0ZXIoJGZ1bmN0aW9uOiBub25lKSB7XHJcbiAgLy8gPGZpbHRlci1mdW5jdGlvbj4gWzxmaWx0ZXItZnVuY3Rpb25dKiB8IG5vbmVcclxuICBAaW5jbHVkZSBwcmVmaXhlcihmaWx0ZXIsICRmdW5jdGlvbiwgd2Via2l0IHNwZWMpO1xyXG59XHJcbiIsIi8vIENTUzMgRmxleGlibGUgQm94IE1vZGVsIGFuZCBwcm9wZXJ0eSBkZWZhdWx0c1xyXG5cclxuLy8gQ3VzdG9tIHNob3J0aGFuZCBub3RhdGlvbiBmb3IgZmxleGJveFxyXG5AbWl4aW4gYm94KCRvcmllbnQ6IGlubGluZS1heGlzLCAkcGFjazogc3RhcnQsICRhbGlnbjogc3RyZXRjaCkge1xyXG4gIEBpbmNsdWRlIGRpc3BsYXktYm94O1xyXG4gIEBpbmNsdWRlIGJveC1vcmllbnQoJG9yaWVudCk7XHJcbiAgQGluY2x1ZGUgYm94LXBhY2soJHBhY2spO1xyXG4gIEBpbmNsdWRlIGJveC1hbGlnbigkYWxpZ24pO1xyXG59XHJcblxyXG5AbWl4aW4gZGlzcGxheS1ib3gge1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gIGRpc3BsYXk6IC1tb3otYm94O1xyXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94OyAvLyBJRSAxMFxyXG4gIGRpc3BsYXk6IGJveDtcclxufVxyXG5cclxuQG1peGluIGJveC1vcmllbnQoJG9yaWVudDogaW5saW5lLWF4aXMpIHtcclxuLy8gaG9yaXpvbnRhbHx2ZXJ0aWNhbHxpbmxpbmUtYXhpc3xibG9jay1heGlzfGluaGVyaXRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtb3JpZW50LCAkb3JpZW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYm94LXBhY2soJHBhY2s6IHN0YXJ0KSB7XHJcbi8vIHN0YXJ0fGVuZHxjZW50ZXJ8anVzdGlmeVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1wYWNrLCAkcGFjaywgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1wYWNrOiAkcGFjazsgLy8gSUUgMTBcclxufVxyXG5cclxuQG1peGluIGJveC1hbGlnbigkYWxpZ246IHN0cmV0Y2gpIHtcclxuLy8gc3RhcnR8ZW5kfGNlbnRlcnxiYXNlbGluZXxzdHJldGNoXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWFsaWduLCAkYWxpZ24sIHdlYmtpdCBtb3ogc3BlYyk7XHJcbiAgLW1zLWZsZXgtYWxpZ246ICRhbGlnbjsgLy8gSUUgMTBcclxufVxyXG5cclxuQG1peGluIGJveC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogbm9ybWFsKSB7XHJcbi8vIG5vcm1hbHxyZXZlcnNlfGluaGVyaXRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZGlyZWN0aW9uLCAkZGlyZWN0aW9uLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjsgLy8gSUUgMTBcclxufVxyXG5cclxuQG1peGluIGJveC1saW5lcygkbGluZXM6IHNpbmdsZSkge1xyXG4vLyBzaW5nbGV8bXVsdGlwbGVcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRsaW5lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGJveC1vcmRpbmFsLWdyb3VwKCRpbnQ6IDEpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtb3JkaW5hbC1ncm91cCwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1vcmRlcjogJGludDsgLy8gSUUgMTBcclxufVxyXG5cclxuQG1peGluIGJveC1mbGV4KCR2YWx1ZTogMCkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbiAgLW1zLWZsZXg6ICR2YWx1ZTsgLy8gSUUgMTBcclxufVxyXG5cclxuQG1peGluIGJveC1mbGV4LWdyb3VwKCRpbnQ6IDEpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZmxleC1ncm91cCwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuLy8gQ1NTMyBGbGV4aWJsZSBCb3ggTW9kZWwgYW5kIHByb3BlcnR5IGRlZmF1bHRzXHJcbi8vIFVuaWZpZWQgYXR0cmlidXRlcyBmb3IgMjAwOSwgMjAxMSwgYW5kIDIwMTIgZmxhdm91cnMuXHJcblxyXG4vLyAyMDA5IC0gZGlzcGxheSAoYm94IHwgaW5saW5lLWJveClcclxuLy8gMjAxMSAtIGRpc3BsYXkgKGZsZXhib3ggfCBpbmxpbmUtZmxleGJveClcclxuLy8gMjAxMiAtIGRpc3BsYXkgKGZsZXggfCBpbmxpbmUtZmxleClcclxuQG1peGluIGRpc3BsYXkoJHZhbHVlKSB7XHJcbi8vIGZsZXggfCBpbmxpbmUtZmxleFxyXG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4XCIge1xyXG4gICAgLy8gMjAwOVxyXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICBkaXNwbGF5OiAtbW96LWJveDtcclxuICAgIGRpc3BsYXk6IGJveDtcclxuXHJcbiAgICAvLyAyMDEyXHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICBkaXNwbGF5OiAtbW96LWZsZXg7XHJcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDsgLy8gMjAxMSAoSUUgMTApXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiaW5saW5lLWZsZXhcIiB7XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1ib3g7XHJcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1ib3g7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYm94O1xyXG5cclxuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XHJcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xyXG4gICAgZGlzcGxheTogLW1zLWlubGluZS1mbGV4Ym94O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBkaXNwbGF5OiAkdmFsdWU7XHJcbiAgfVxyXG59XHJcblxyXG4vLyAyMDA5IC0gYm94LWZsZXggKGludGVnZXIpXHJcbi8vIDIwMTEgLSBmbGV4IChkZWNpbWFsIHwgd2lkdGggZGVjaW1hbClcclxuLy8gMjAxMiAtIGZsZXggKGludGVnZXIgaW50ZWdlciB3aWR0aClcclxuQG1peGluIGZsZXgoJHZhbHVlKSB7XHJcblxyXG4gIC8vIEdyYWIgZmxleC1ncm93IGZvciBvbGRlciBicm93c2Vycy5cclxuICAkZmxleC1ncm93OiBudGgoJHZhbHVlLCAxKTtcclxuXHJcbiAgLy8gMjAwOVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LCAkZmxleC1ncm93LCB3ZWJraXQgbW96IHNwZWMpO1xyXG5cclxuICAvLyAyMDExIChJRSAxMCksIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtb3JpZW50ICggaG9yaXpvbnRhbCB8IHZlcnRpY2FsIHwgaW5saW5lLWF4aXMgfCBibG9jay1heGlzKVxyXG4vLyAgICAgIC0gYm94LWRpcmVjdGlvbiAobm9ybWFsIHwgcmV2ZXJzZSlcclxuLy8gMjAxMSAtIGZsZXgtZGlyZWN0aW9uIChyb3cgfCByb3ctcmV2ZXJzZSB8IGNvbHVtbiB8IGNvbHVtbi1yZXZlcnNlKVxyXG4vLyAyMDEyIC0gZmxleC1kaXJlY3Rpb24gKHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2UpXHJcbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkdmFsdWU6IHJvdykge1xyXG5cclxuICAvLyBBbHQgdmFsdWVzLlxyXG4gICR2YWx1ZS0yMDA5OiAkdmFsdWU7XHJcbiAgJHZhbHVlLTIwMTE6ICR2YWx1ZTtcclxuICAkZGlyZWN0aW9uOiBub3JtYWw7XHJcblxyXG4gIEBpZiAkdmFsdWUgPT0gcm93IHtcclxuICAgICR2YWx1ZS0yMDA5OiBob3Jpem9udGFsO1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwicm93LXJldmVyc2VcIiB7XHJcbiAgICAkdmFsdWUtMjAwOTogaG9yaXpvbnRhbDtcclxuICAgICRkaXJlY3Rpb246IHJldmVyc2U7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gY29sdW1uIHtcclxuICAgICR2YWx1ZS0yMDA5OiB2ZXJ0aWNhbDtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImNvbHVtbi1yZXZlcnNlXCIge1xyXG4gICAgJHZhbHVlLTIwMDk6IHZlcnRpY2FsO1xyXG4gICAgJGRpcmVjdGlvbjogcmV2ZXJzZTtcclxuICB9XHJcblxyXG4gIC8vIDIwMDlcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtb3JpZW50LCAkdmFsdWUtMjAwOSwgd2Via2l0IG1veiBzcGVjKTtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZGlyZWN0aW9uLCAkZGlyZWN0aW9uLCB3ZWJraXQgbW96IHNwZWMpO1xyXG5cclxuICAvLyAyMDEyXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1kaXJlY3Rpb24sICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMSAoSUUgMTApXHJcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkdmFsdWU7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtbGluZXMgKHNpbmdsZSB8IG11bHRpcGxlKVxyXG4vLyAyMDExIC0gZmxleC13cmFwIChub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlKVxyXG4vLyAyMDEyIC0gZmxleC13cmFwIChub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlKVxyXG5AbWl4aW4gZmxleC13cmFwKCR2YWx1ZTogbm93cmFwKSB7XHJcbiAgLy8gQWx0IHZhbHVlc1xyXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcclxuICBAaWYgJHZhbHVlID09IG5vd3JhcCB7XHJcbiAgICAkYWx0LXZhbHVlOiBzaW5nbGU7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gd3JhcCB7XHJcbiAgICAkYWx0LXZhbHVlOiBtdWx0aXBsZTtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcIndyYXAtcmV2ZXJzZVwiIHtcclxuICAgICRhbHQtdmFsdWU6IG11bHRpcGxlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWxpbmVzLCAkYWx0LXZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtd3JhcCwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIHNwZWMpO1xyXG59XHJcblxyXG4vLyAyMDA5IC0gVE9ETzogcGFyc2UgdmFsdWVzIGludG8gZmxleC1kaXJlY3Rpb24vZmxleC13cmFwXHJcbi8vIDIwMTEgLSBUT0RPOiBwYXJzZSB2YWx1ZXMgaW50byBmbGV4LWRpcmVjdGlvbi9mbGV4LXdyYXBcclxuLy8gMjAxMiAtIGZsZXgtZmxvdyAoZmxleC1kaXJlY3Rpb24gfHwgZmxleC13cmFwKVxyXG5AbWl4aW4gZmxleC1mbG93KCR2YWx1ZSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtZmxvdywgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG4vLyAyMDA5IC0gYm94LW9yZGluYWwtZ3JvdXAgKGludGVnZXIpXHJcbi8vIDIwMTEgLSBmbGV4LW9yZGVyIChpbnRlZ2VyKVxyXG4vLyAyMDEyIC0gb3JkZXIgKGludGVnZXIpXHJcbkBtaXhpbiBvcmRlcigkaW50OiAwKSB7XHJcbiAgLy8gMjAwOVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmRpbmFsLWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG5cclxuICAvLyAyMDEyXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIob3JkZXIsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKVxyXG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50O1xyXG59XHJcblxyXG4vLyAyMDEyIC0gZmxleC1ncm93IChudW1iZXIpXHJcbkBtaXhpbiBmbGV4LWdyb3coJG51bWJlcjogMCkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtZ3JvdywgJG51bWJlciwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1wb3NpdGl2ZTogJG51bWJlcjtcclxufVxyXG5cclxuLy8gMjAxMiAtIGZsZXgtc2hyaW5rIChudW1iZXIpXHJcbkBtaXhpbiBmbGV4LXNocmluaygkbnVtYmVyOiAxKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1zaHJpbmssICRudW1iZXIsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbiAgLW1zLWZsZXgtbmVnYXRpdmU6ICRudW1iZXI7XHJcbn1cclxuXHJcbi8vIDIwMTIgLSBmbGV4LWJhc2lzIChudW1iZXIpXHJcbkBtaXhpbiBmbGV4LWJhc2lzKCR3aWR0aDogYXV0bykge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtYmFzaXMsICR3aWR0aCwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogJHdpZHRoO1xyXG59XHJcblxyXG4vLyAyMDA5IC0gYm94LXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSlcclxuLy8gMjAxMSAtIGZsZXgtcGFjayAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBqdXN0aWZ5KVxyXG4vLyAyMDEyIC0ganVzdGlmeS1jb250ZW50IChmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kKVxyXG5AbWl4aW4ganVzdGlmeS1jb250ZW50KCR2YWx1ZTogZmxleC1zdGFydCkge1xyXG5cclxuICAvLyBBbHQgdmFsdWVzLlxyXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcclxuICBAaWYgJHZhbHVlID09IFwiZmxleC1zdGFydFwiIHtcclxuICAgICRhbHQtdmFsdWU6IHN0YXJ0O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XHJcbiAgICAkYWx0LXZhbHVlOiBlbmQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1iZXR3ZWVuXCIge1xyXG4gICAgJGFsdC12YWx1ZToganVzdGlmeTtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInNwYWNlLWFyb3VuZFwiIHtcclxuICAgICRhbHQtdmFsdWU6IGRpc3RyaWJ1dGU7XHJcbiAgfVxyXG5cclxuICAvLyAyMDA5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXBhY2ssICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihqdXN0aWZ5LWNvbnRlbnQsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xyXG5cclxuICAvLyAyMDExIChJRSAxMClcclxuICAtbXMtZmxleC1wYWNrOiAkYWx0LXZhbHVlO1xyXG59XHJcblxyXG4vLyAyMDA5IC0gYm94LWFsaWduIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcclxuLy8gMjAxMSAtIGZsZXgtYWxpZ24gKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxyXG4vLyAyMDEyIC0gYWxpZ24taXRlbXMgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcclxuQG1peGluIGFsaWduLWl0ZW1zKCR2YWx1ZTogc3RyZXRjaCkge1xyXG5cclxuICAkYWx0LXZhbHVlOiAkdmFsdWU7XHJcblxyXG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xyXG4gICAgJGFsdC12YWx1ZTogc3RhcnQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcclxuICAgICRhbHQtdmFsdWU6IGVuZDtcclxuICB9XHJcblxyXG4gIC8vIDIwMDlcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtYWxpZ24sICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1pdGVtcywgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKVxyXG4gIC1tcy1mbGV4LWFsaWduOiAkYWx0LXZhbHVlO1xyXG59XHJcblxyXG4vLyAyMDExIC0gZmxleC1pdGVtLWFsaWduIChhdXRvIHwgc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXHJcbi8vIDIwMTIgLSBhbGlnbi1zZWxmIChhdXRvIHwgZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxyXG5AbWl4aW4gYWxpZ24tc2VsZigkdmFsdWU6IGF1dG8pIHtcclxuXHJcbiAgJHZhbHVlLTIwMTE6ICR2YWx1ZTtcclxuICBAaWYgJHZhbHVlID09IFwiZmxleC1zdGFydFwiIHtcclxuICAgICR2YWx1ZS0yMDExOiBzdGFydDtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xyXG4gICAgJHZhbHVlLTIwMTE6IGVuZDtcclxuICB9XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1zZWxmLCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKVxyXG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246ICR2YWx1ZS0yMDExO1xyXG59XHJcblxyXG4vLyAyMDExIC0gZmxleC1saW5lLXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSB8IGRpc3RyaWJ1dGUgfCBzdHJldGNoKVxyXG4vLyAyMDEyIC0gYWxpZ24tY29udGVudCAoZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2gpXHJcbkBtaXhpbiBhbGlnbi1jb250ZW50KCR2YWx1ZTogc3RyZXRjaCkge1xyXG5cclxuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xyXG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xyXG4gICAgJHZhbHVlLTIwMTE6IHN0YXJ0O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XHJcbiAgICAkdmFsdWUtMjAxMTogZW5kO1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYmV0d2VlblwiIHtcclxuICAgICR2YWx1ZS0yMDExOiBqdXN0aWZ5O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYXJvdW5kXCIge1xyXG4gICAgJHZhbHVlLTIwMTE6IGRpc3RyaWJ1dGU7XHJcbiAgfVxyXG5cclxuICAvLyAyMDEyXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYWxpZ24tY29udGVudCwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG5cclxuICAvLyAyMDExIChJRSAxMClcclxuICAtbXMtZmxleC1saW5lLXBhY2s6ICR2YWx1ZS0yMDExO1xyXG59XHJcbiIsIkBtaXhpbiBmb250LWZhY2UoXHJcbiAgJGZvbnQtZmFtaWx5LFxyXG4gICRmaWxlLXBhdGgsXHJcbiAgJHdlaWdodDogbm9ybWFsLFxyXG4gICRzdHlsZTogbm9ybWFsLFxyXG4gICRhc3NldC1waXBlbGluZTogJGFzc2V0LXBpcGVsaW5lLFxyXG4gICRmaWxlLWZvcm1hdHM6IGVvdCB3b2ZmMiB3b2ZmIHR0ZiBzdmcpIHtcclxuXHJcbiAgJGZvbnQtdXJsLXByZWZpeDogZm9udC11cmwtcHJlZml4ZXIoJGFzc2V0LXBpcGVsaW5lKTtcclxuXHJcbiAgQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xyXG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xyXG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XHJcblxyXG4gICAgc3JjOiBmb250LXNvdXJjZS1kZWNsYXJhdGlvbihcclxuICAgICAgJGZvbnQtZmFtaWx5LFxyXG4gICAgICAkZmlsZS1wYXRoLFxyXG4gICAgICAkYXNzZXQtcGlwZWxpbmUsXHJcbiAgICAgICRmaWxlLWZvcm1hdHMsXHJcbiAgICAgICRmb250LXVybC1wcmVmaXhcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiIsIkBtaXhpbiBmb250LWZlYXR1cmUtc2V0dGluZ3MoJHNldHRpbmdzLi4uKSB7XHJcbiAgQGlmIGxlbmd0aCgkc2V0dGluZ3MpID09IDAgeyAkc2V0dGluZ3M6IG5vbmU7IH1cclxuICBAaW5jbHVkZSBwcmVmaXhlcihmb250LWZlYXR1cmUtc2V0dGluZ3MsICRzZXR0aW5ncywgd2Via2l0IG1veiBtcyBzcGVjKTtcclxufVxyXG4iLCIvLyBIaURQSSBtaXhpbi4gRGVmYXVsdCB2YWx1ZSBzZXQgdG8gMS4zIHRvIHRhcmdldCBHb29nbGUgTmV4dXMgNyAoaHR0cDovL2JqYW5nby5jb20vYXJ0aWNsZXMvbWluLWRldmljZS1waXhlbC1yYXRpby8pXHJcbkBtaXhpbiBoaWRwaSgkcmF0aW86IDEuMykge1xyXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHJhdGlvfS8xKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiByb3VuZCgkcmF0aW8gKiA5NmRwaSkpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246ICRyYXRpbyAqIDFkcHB4KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuIiwiQG1peGluIGh5cGhlbnMoJGh5cGhlbmF0aW9uOiBub25lKSB7XHJcbiAgLy8gbm9uZSB8IG1hbnVhbCB8IGF1dG9cclxuICBAaW5jbHVkZSBwcmVmaXhlcihoeXBoZW5zLCAkaHlwaGVuYXRpb24sIHdlYmtpdCBtb3ogbXMgc3BlYyk7XHJcbn1cclxuIiwiQG1peGluIGltYWdlLXJlbmRlcmluZyAoJG1vZGU6YXV0bykge1xyXG5cclxuICBAaWYgKCRtb2RlID09IGNyaXNwLWVkZ2VzKSB7XHJcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBuZWFyZXN0LW5laWdoYm9yOyAvLyBJRTgrXHJcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC1tb3otY3Jpc3AtZWRnZXM7XHJcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC1vLWNyaXNwLWVkZ2VzO1xyXG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAtd2Via2l0LW9wdGltaXplLWNvbnRyYXN0O1xyXG4gICAgaW1hZ2UtcmVuZGVyaW5nOiBjcmlzcC1lZGdlcztcclxuICB9XHJcblxyXG4gIEBlbHNlIHtcclxuICAgIGltYWdlLXJlbmRlcmluZzogJG1vZGU7XHJcbiAgfVxyXG59XHJcbiIsIi8vIEFkZHMga2V5ZnJhbWVzIGJsb2NrcyBmb3Igc3VwcG9ydGVkIHByZWZpeGVzLCByZW1vdmluZyByZWR1bmRhbnQgcHJlZml4ZXMgaW4gdGhlIGJsb2NrJ3MgY29udGVudFxyXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XHJcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0OiAgICAkcHJlZml4LWZvci13ZWJraXQ7XHJcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3ItbW96aWxsYTogICAkcHJlZml4LWZvci1tb3ppbGxhO1xyXG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdDogJHByZWZpeC1mb3ItbWljcm9zb2Z0O1xyXG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW9wZXJhOiAgICAgJHByZWZpeC1mb3Itb3BlcmE7XHJcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itc3BlYzogICAgICAkcHJlZml4LWZvci1zcGVjO1xyXG5cclxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0IHtcclxuICAgIEBpbmNsdWRlIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKTtcclxuICAgICRwcmVmaXgtZm9yLXdlYmtpdDogdHJ1ZSAhZ2xvYmFsO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzICN7JG5hbWV9IHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3ItbW96aWxsYSB7XHJcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XHJcbiAgICAkcHJlZml4LWZvci1tb3ppbGxhOiB0cnVlICFnbG9iYWw7XHJcbiAgICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICRwcmVmaXgtZm9yLXdlYmtpdDogICAgJG9yaWdpbmFsLXByZWZpeC1mb3Itd2Via2l0ICAgICFnbG9iYWw7XHJcbiAgJHByZWZpeC1mb3ItbW96aWxsYTogICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhICAgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1taWNyb3NvZnQ6ICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdCAhZ2xvYmFsO1xyXG4gICRwcmVmaXgtZm9yLW9wZXJhOiAgICAgJG9yaWdpbmFsLXByZWZpeC1mb3Itb3BlcmEgICAgICFnbG9iYWw7XHJcbiAgJHByZWZpeC1mb3Itc3BlYzogICAgICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjICAgICAgIWdsb2JhbDtcclxuXHJcbiAgQGlmICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWMge1xyXG4gICAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAbWl4aW4gbGluZWFyLWdyYWRpZW50KCRwb3MsICRnMSwgJGcyOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnMzogbnVsbCwgJGc0OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnNTogbnVsbCwgJGc2OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnNzogbnVsbCwgJGc4OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnOTogbnVsbCwgJGcxMDogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkZmFsbGJhY2s6IG51bGwpIHtcclxuICAvLyBEZXRlY3Qgd2hhdCB0eXBlIG9mIHZhbHVlIGV4aXN0cyBpbiAkcG9zXHJcbiAgJHBvcy10eXBlOiB0eXBlLW9mKG50aCgkcG9zLCAxKSk7XHJcbiAgJHBvcy1zcGVjOiBudWxsO1xyXG4gICRwb3MtZGVncmVlOiBudWxsO1xyXG5cclxuICAvLyBJZiAkcG9zIGlzIG1pc3NpbmcgZnJvbSBtaXhpbiwgcmVhc3NpZ24gdmFycyBhbmQgYWRkIGRlZmF1bHQgcG9zaXRpb25cclxuICBAaWYgKCRwb3MtdHlwZSA9PSBjb2xvcikgb3IgKG50aCgkcG9zLCAxKSA9PSBcInRyYW5zcGFyZW50XCIpICB7XHJcbiAgICAkZzEwOiAkZzk7ICRnOTogJGc4OyAkZzg6ICRnNzsgJGc3OiAkZzY7ICRnNjogJGc1O1xyXG4gICAgJGc1OiAkZzQ7ICRnNDogJGczOyAkZzM6ICRnMjsgJGcyOiAkZzE7ICRnMTogJHBvcztcclxuICAgICRwb3M6IG51bGw7XHJcbiAgfVxyXG5cclxuICBAaWYgJHBvcyB7XHJcbiAgICAkcG9zaXRpb25zOiBfbGluZWFyLXBvc2l0aW9ucy1wYXJzZXIoJHBvcyk7XHJcbiAgICAkcG9zLWRlZ3JlZTogbnRoKCRwb3NpdGlvbnMsIDEpO1xyXG4gICAgJHBvcy1zcGVjOiAgIG50aCgkcG9zaXRpb25zLCAyKTtcclxuICB9XHJcblxyXG4gICRmdWxsOiAkZzEsICRnMiwgJGczLCAkZzQsICRnNSwgJGc2LCAkZzcsICRnOCwgJGc5LCAkZzEwO1xyXG5cclxuICAvLyBTZXQgJGcxIGFzIHRoZSBkZWZhdWx0IGZhbGxiYWNrIGNvbG9yXHJcbiAgJGZhbGxiYWNrLWNvbG9yOiBudGgoJGcxLCAxKTtcclxuXHJcbiAgLy8gSWYgJGZhbGxiYWNrIGlzIGEgY29sb3IgdXNlIHRoYXQgY29sb3IgYXMgdGhlIGZhbGxiYWNrIGNvbG9yXHJcbiAgQGlmICh0eXBlLW9mKCRmYWxsYmFjaykgPT0gY29sb3IpIG9yICgkZmFsbGJhY2sgPT0gXCJ0cmFuc3BhcmVudFwiKSB7XHJcbiAgICAkZmFsbGJhY2stY29sb3I6ICRmYWxsYmFjaztcclxuICB9XHJcblxyXG4gIGJhY2tncm91bmQtY29sb3I6ICRmYWxsYmFjay1jb2xvcjtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkcG9zLWRlZ3JlZSAkZnVsbCk7IC8vIFNhZmFyaSA1LjErLCBDaHJvbWVcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1bnF1b3RlKFwibGluZWFyLWdyYWRpZW50KCN7JHBvcy1zcGVjfSN7JGZ1bGx9KVwiKTtcclxufVxyXG4iLCJAbWl4aW4gcGVyc3BlY3RpdmUoJGRlcHRoOiBub25lKSB7XHJcbiAgLy8gbm9uZSB8IDxsZW5ndGg+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIocGVyc3BlY3RpdmUsICRkZXB0aCwgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkdmFsdWU6IDUwJSA1MCUpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihwZXJzcGVjdGl2ZS1vcmlnaW4sICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG4iLCJAbWl4aW4gcGxhY2Vob2xkZXIge1xyXG4gICRwbGFjZWhvbGRlcnM6IFwiOi13ZWJraXQtaW5wdXRcIiBcIjotbW96XCIgXCItbW96XCIgXCItbXMtaW5wdXRcIjtcclxuICBAZWFjaCAkcGxhY2Vob2xkZXIgaW4gJHBsYWNlaG9sZGVycyB7XHJcbiAgICAmOiN7JHBsYWNlaG9sZGVyfS1wbGFjZWhvbGRlciB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBSZXF1aXJlcyBTYXNzIDMuMStcclxuQG1peGluIHJhZGlhbC1ncmFkaWVudCgkZzEsICRnMixcclxuICAgICAgICAgICAgICAgICAgICAgICAkZzM6IG51bGwsICRnNDogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkZzU6IG51bGwsICRnNjogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkZzc6IG51bGwsICRnODogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkZzk6IG51bGwsICRnMTA6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJHBvczogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkc2hhcGUtc2l6ZTogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkZmFsbGJhY2s6IG51bGwpIHtcclxuXHJcbiAgJGRhdGE6IF9yYWRpYWwtYXJnLXBhcnNlcigkZzEsICRnMiwgJHBvcywgJHNoYXBlLXNpemUpO1xyXG4gICRnMTogIG50aCgkZGF0YSwgMSk7XHJcbiAgJGcyOiAgbnRoKCRkYXRhLCAyKTtcclxuICAkcG9zOiBudGgoJGRhdGEsIDMpO1xyXG4gICRzaGFwZS1zaXplOiBudGgoJGRhdGEsIDQpO1xyXG5cclxuICAkZnVsbDogJGcxLCAkZzIsICRnMywgJGc0LCAkZzUsICRnNiwgJGc3LCAkZzgsICRnOSwgJGcxMDtcclxuXHJcbiAgLy8gU3RyaXAgZGVwcmVjYXRlZCBjb3Zlci9jb250YWluIGZvciBzcGVjXHJcbiAgJHNoYXBlLXNpemUtc3BlYzogX3NoYXBlLXNpemUtc3RyaXBwZXIoJHNoYXBlLXNpemUpO1xyXG5cclxuICAvLyBTZXQgJGcxIGFzIHRoZSBkZWZhdWx0IGZhbGxiYWNrIGNvbG9yXHJcbiAgJGZpcnN0LWNvbG9yOiBudGgoJGZ1bGwsIDEpO1xyXG4gICRmYWxsYmFjay1jb2xvcjogbnRoKCRmaXJzdC1jb2xvciwgMSk7XHJcblxyXG4gIEBpZiAodHlwZS1vZigkZmFsbGJhY2spID09IGNvbG9yKSBvciAoJGZhbGxiYWNrID09IFwidHJhbnNwYXJlbnRcIikge1xyXG4gICAgJGZhbGxiYWNrLWNvbG9yOiAkZmFsbGJhY2s7XHJcbiAgfVxyXG5cclxuICAvLyBBZGQgQ29tbWFzIGFuZCBzcGFjZXNcclxuICAkc2hhcGUtc2l6ZTogaWYoJHNoYXBlLXNpemUsIFwiI3skc2hhcGUtc2l6ZX0sIFwiLCBudWxsKTtcclxuICAkcG9zOiAgICAgICAgaWYoJHBvcywgXCIjeyRwb3N9LCBcIiwgbnVsbCk7XHJcbiAgJHBvcy1zcGVjOiAgIGlmKCRwb3MsIFwiYXQgI3skcG9zfVwiLCBudWxsKTtcclxuICAkc2hhcGUtc2l6ZS1zcGVjOiBpZigoJHNoYXBlLXNpemUtc3BlYyAhPSBcIiBcIikgYW5kICgkcG9zID09IG51bGwpLCBcIiN7JHNoYXBlLXNpemUtc3BlY30sIFwiLCBcIiN7JHNoYXBlLXNpemUtc3BlY30gXCIpO1xyXG5cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAgJGZhbGxiYWNrLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KCN7JHBvc30jeyRzaGFwZS1zaXplfSN7JGZ1bGx9KTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoI3skc2hhcGUtc2l6ZS1zcGVjfSN7JHBvcy1zcGVjfSN7JGZ1bGx9KTtcclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gT3V0cHV0cyB0aGUgc3BlYyBhbmQgcHJlZml4ZWQgdmVyc2lvbnMgb2YgdGhlIGA6OnNlbGVjdGlvbmAgcHNldWRvLWVsZW1lbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtCb29sfSAkY3VycmVudC1zZWxlY3RvciBbZmFsc2VdXHJcbi8vLyAgIElmIHNldCB0byBgdHJ1ZWAsIGl0IHRha2VzIHRoZSBjdXJyZW50IGVsZW1lbnQgaW50byBjb25zaWRlcmF0aW9uLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgc2VsZWN0aW9uKHRydWUpIHtcclxuLy8vICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XHJcbi8vLyAgICAgfVxyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudDo6LW1vei1zZWxlY3Rpb24ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5lbGVtZW50OjpzZWxlY3Rpb24ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiBzZWxlY3Rpb24oJGN1cnJlbnQtc2VsZWN0b3I6IGZhbHNlKSB7XHJcbiAgQGlmICRjdXJyZW50LXNlbGVjdG9yIHtcclxuICAgICY6Oi1tb3otc2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6c2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICA6Oi1tb3otc2VsZWN0aW9uIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgOjpzZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQG1peGluIHRleHQtZGVjb3JhdGlvbigkdmFsdWUpIHtcclxuLy8gPHRleHQtZGVjb3JhdGlvbi1saW5lPiB8fCA8dGV4dC1kZWNvcmF0aW9uLXN0eWxlPiB8fCA8dGV4dC1kZWNvcmF0aW9uLWNvbG9yPlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRleHQtZGVjb3JhdGlvbiwgJHZhbHVlLCBtb3opO1xyXG59XHJcblxyXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLWxpbmUoJGxpbmU6IG5vbmUpIHtcclxuLy8gbm9uZSB8fCB1bmRlcmxpbmUgfHwgb3ZlcmxpbmUgfHwgbGluZS10aHJvdWdoXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLWxpbmUsICRsaW5lLCBtb3opO1xyXG59XHJcblxyXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLXN0eWxlKCRzdHlsZTogc29saWQpIHtcclxuLy8gc29saWQgfHwgZG91YmxlIHx8IGRvdHRlZCB8fCBkYXNoZWQgfHwgd2F2eVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRleHQtZGVjb3JhdGlvbi1zdHlsZSwgJHN0eWxlLCBtb3ogd2Via2l0KTtcclxufVxyXG5cclxuQG1peGluIHRleHQtZGVjb3JhdGlvbi1jb2xvcigkY29sb3I6IGN1cnJlbnRDb2xvcikge1xyXG4vLyBjdXJyZW50Q29sb3IgfHwgPGNvbG9yPlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRleHQtZGVjb3JhdGlvbi1jb2xvciwgJGNvbG9yLCBtb3opO1xyXG59XHJcbiIsIkBtaXhpbiB0cmFuc2Zvcm0oJHByb3BlcnR5OiBub25lKSB7XHJcbiAgLy8gbm9uZSB8IDx0cmFuc2Zvcm0tZnVuY3Rpb24+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLCAkcHJvcGVydHksIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJGF4ZXM6IDUwJSkge1xyXG4gIC8vIHgtYXhpcyAtIGxlZnQgfCBjZW50ZXIgfCByaWdodCAgfCBsZW5ndGggfCAlXHJcbiAgLy8geS1heGlzIC0gdG9wICB8IGNlbnRlciB8IGJvdHRvbSB8IGxlbmd0aCB8ICVcclxuICAvLyB6LWF4aXMgLSAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuZ3RoXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLW9yaWdpbiwgJGF4ZXMsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zZm9ybS1zdHlsZSgkc3R5bGU6IGZsYXQpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tc3R5bGUsICRzdHlsZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xyXG59XHJcbiIsIi8vIFNob3J0aGFuZCBtaXhpbi4gU3VwcG9ydHMgbXVsdGlwbGUgcGFyZW50aGVzZXMtZGVsaW1pbmF0ZWQgdmFsdWVzIGZvciBlYWNoIHZhcmlhYmxlLlxyXG4vLyBFeGFtcGxlOiBAaW5jbHVkZSB0cmFuc2l0aW9uIChhbGwgMnMgZWFzZS1pbi1vdXQpO1xyXG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChvcGFjaXR5IDFzIGVhc2UtaW4gMnMsIHdpZHRoIDJzIGVhc2Utb3V0KTtcclxuLy8gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSAodHJhbnNmb3JtLCBvcGFjaXR5KTtcclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCRwcm9wZXJ0aWVzLi4uKSB7XHJcbiAgLy8gRml4IGZvciB2ZW5kb3ItcHJlZml4IHRyYW5zZm9ybSBwcm9wZXJ0eVxyXG4gICRuZWVkcy1wcmVmaXhlczogZmFsc2U7XHJcbiAgJHdlYmtpdDogKCk7XHJcbiAgJG1vejogKCk7XHJcbiAgJHNwZWM6ICgpO1xyXG5cclxuICAvLyBDcmVhdGUgbGlzdHMgZm9yIHZlbmRvci1wcmVmaXhlZCB0cmFuc2Zvcm1cclxuICBAZWFjaCAkbGlzdCBpbiAkcHJvcGVydGllcyB7XHJcbiAgICBAaWYgbnRoKCRsaXN0LCAxKSA9PSBcInRyYW5zZm9ybVwiIHtcclxuICAgICAgJG5lZWRzLXByZWZpeGVzOiB0cnVlO1xyXG4gICAgICAkbGlzdDE6IC13ZWJraXQtdHJhbnNmb3JtO1xyXG4gICAgICAkbGlzdDI6IC1tb3otdHJhbnNmb3JtO1xyXG4gICAgICAkbGlzdDM6ICgpO1xyXG5cclxuICAgICAgQGVhY2ggJHZhciBpbiAkbGlzdCB7XHJcbiAgICAgICAgJGxpc3QzOiBqb2luKCRsaXN0MywgJHZhcik7XHJcblxyXG4gICAgICAgIEBpZiAkdmFyICE9IFwidHJhbnNmb3JtXCIge1xyXG4gICAgICAgICAgJGxpc3QxOiBqb2luKCRsaXN0MSwgJHZhcik7XHJcbiAgICAgICAgICAkbGlzdDI6IGpvaW4oJGxpc3QyLCAkdmFyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICR3ZWJraXQ6IGFwcGVuZCgkd2Via2l0LCAkbGlzdDEpO1xyXG4gICAgICAkbW96OiAgICBhcHBlbmQoJG1veiwgICAgJGxpc3QyKTtcclxuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0Myk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJHdlYmtpdDogYXBwZW5kKCR3ZWJraXQsICRsaXN0LCBjb21tYSk7XHJcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdCwgY29tbWEpO1xyXG4gICAgICAkc3BlYzogICBhcHBlbmQoJHNwZWMsICAgJGxpc3QsIGNvbW1hKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkbmVlZHMtcHJlZml4ZXMge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkd2Via2l0O1xyXG4gICAgICAgLW1vei10cmFuc2l0aW9uOiAkbW96O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkc3BlYztcclxuICB9IEBlbHNlIHtcclxuICAgIEBpZiBsZW5ndGgoJHByb3BlcnRpZXMpID49IDEge1xyXG4gICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLCAkcHJvcGVydGllcywgd2Via2l0IG1veiBzcGVjKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkcHJvcGVydGllczogYWxsIDAuMTVzIGVhc2Utb3V0IDBzO1xyXG4gICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLCAkcHJvcGVydGllcywgd2Via2l0IG1veiBzcGVjKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCRwcm9wZXJ0aWVzLi4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBcIndlYmtpdFwiKTtcclxuICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwibW96XCIpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygkcHJvcGVydGllcywgZmFsc2UpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdGltZXMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLWR1cmF0aW9uLCAkdGltZXMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkbW90aW9ucy4uLikge1xyXG4gIC8vIGVhc2UgfCBsaW5lYXIgfCBlYXNlLWluIHwgZWFzZS1vdXQgfCBlYXNlLWluLW91dCB8IGN1YmljLWJlemllcigpXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sICRtb3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdGltZXMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLWRlbGF5LCAkdGltZXMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuIiwiQG1peGluIHVzZXItc2VsZWN0KCR2YWx1ZTogbm9uZSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHVzZXItc2VsZWN0LCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1jb2xvcmAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXHJcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBib3JkZXItY29sb3IoI2E2MGI1NSAjNzZjZDljIG51bGwgI2U4YWUxYSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBib3JkZXItbGVmdC1jb2xvcjogI2U4YWUxYTtcclxuLy8vICAgICBib3JkZXItcmlnaHQtY29sb3I6ICM3NmNkOWM7XHJcbi8vLyAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2E2MGI1NTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcclxuLy8vXHJcbi8vLyBAb3V0cHV0IGBib3JkZXItY29sb3JgXHJcblxyXG5AbWl4aW4gYm9yZGVyLWNvbG9yKCR2YWxzLi4uKSB7XHJcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCBjb2xvciwgJHZhbHMuLi4pO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBib3JkZXItcmFkaXVzYCBvbiBib3RoIGNvcm5lcnMgb24gdGhlIHNpZGUgb2YgYSBib3guXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyYWRpaVxyXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudC1vbmUge1xyXG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDVweCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5lbGVtZW50LXR3byB7XHJcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDNweCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50LW9uZSB7XHJcbi8vLyAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xyXG4vLy8gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5lbGVtZW50LXR3byB7XHJcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4O1xyXG4vLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYGJvcmRlci1yYWRpdXNgXHJcblxyXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGlpKSB7XHJcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGlpO1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaWk7XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpaSkge1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaWk7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpaTtcclxufVxyXG5cclxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpaSkge1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpaTtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpaSkge1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpaTtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaWk7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1zdHlsZWAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXHJcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBib3JkZXItc3R5bGUoZGFzaGVkIG51bGwgc29saWQpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XHJcbi8vLyAgICAgYm9yZGVyLXRvcC1zdHlsZTogZGFzaGVkO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYGJvcmRlci1zdHlsZWBcclxuXHJcbkBtaXhpbiBib3JkZXItc3R5bGUoJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHN0eWxlLCAkdmFscy4uLik7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci13aWR0aGAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXHJcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBib3JkZXItd2lkdGgoMWVtIG51bGwgMjBweCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyMHB4O1xyXG4vLy8gICAgIGJvcmRlci10b3Atd2lkdGg6IDFlbTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcclxuLy8vXHJcbi8vLyBAb3V0cHV0IGBib3JkZXItd2lkdGhgXHJcblxyXG5AbWl4aW4gYm9yZGVyLXdpZHRoKCR2YWxzLi4uKSB7XHJcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCB3aWR0aCwgJHZhbHMuLi4pO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBHZW5lcmF0ZXMgdmFyaWFibGVzIGZvciBhbGwgYnV0dG9ucy4gUGxlYXNlIG5vdGUgdGhhdCB5b3UgbXVzdCB1c2UgaW50ZXJwb2xhdGlvbiBvbiB0aGUgdmFyaWFibGU6IGAjeyRhbGwtYnV0dG9uc31gLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAjeyRhbGwtYnV0dG9uc30ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgICN7JGFsbC1idXR0b25zLWZvY3VzfSxcclxuLy8vICAgI3skYWxsLWJ1dHRvbnMtaG92ZXJ9IHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1hY3RpdmV9IHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICBidXR0b24sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgYnV0dG9uOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXHJcbi8vLyAgIGJ1dHRvbjpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICBidXR0b246YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTphY3RpdmUge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGY7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZSBhc3NpZ24taW5wdXRzXHJcbi8vL1xyXG4vLy8gQHR5cGUgTGlzdFxyXG4vLy9cclxuLy8vIEB0b2RvIFJlbW92ZSBkb3VibGUgYXNzaWduZWQgdmFyaWFibGVzIChMaW5lcyA1OeKAkzYyKSBpbiB2NS4wLjBcclxuXHJcbiRidXR0b25zLWxpc3Q6ICdidXR0b24nLFxyXG4gICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImJ1dHRvblwiXScsXHJcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicmVzZXRcIl0nLFxyXG4gICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSc7XHJcblxyXG4kYWxsLWJ1dHRvbnM6ICAgICAgICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QpO1xyXG4kYWxsLWJ1dHRvbnMtYWN0aXZlOiBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGFjdGl2ZSk7XHJcbiRhbGwtYnV0dG9ucy1mb2N1czogIGFzc2lnbi1pbnB1dHMoJGJ1dHRvbnMtbGlzdCwgZm9jdXMpO1xyXG4kYWxsLWJ1dHRvbnMtaG92ZXI6ICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGhvdmVyKTtcclxuXHJcbiRhbGwtYnV0dG9uLWlucHV0czogICAgICAgICRhbGwtYnV0dG9ucztcclxuJGFsbC1idXR0b24taW5wdXRzLWFjdGl2ZTogJGFsbC1idXR0b25zLWFjdGl2ZTtcclxuJGFsbC1idXR0b24taW5wdXRzLWZvY3VzOiAgJGFsbC1idXR0b25zLWZvY3VzO1xyXG4kYWxsLWJ1dHRvbi1pbnB1dHMtaG92ZXI6ICAkYWxsLWJ1dHRvbnMtaG92ZXI7XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBpbmNsdWRlIGEgY2xlYXJmaXggZm9yIGNvbnRhaW5pbmcgZmxvYXRzLlxyXG4vLy9cclxuLy8vIEBsaW5rIGh0dHA6Ly9jc3Ntb2pvLmNvbS9sYXRlc3RfbmV3X2NsZWFyZml4X3NvX2Zhci9cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudDo6YWZ0ZXIge1xyXG4vLy8gICAgIGNsZWFyOiBib3RoO1xyXG4vLy8gICAgIGNvbnRlbnQ6IFwiXCI7XHJcbi8vLyAgICAgZGlzcGxheTogdGFibGU7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBUcnVuY2F0ZXMgdGV4dCBhbmQgYWRkcyBhbiBlbGxpcHNpcyB0byByZXByZXNlbnQgb3ZlcmZsb3cuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMTAwJV1cclxuLy8vICAgTWF4LXdpZHRoIGZvciB0aGUgc3RyaW5nIHRvIHJlc3BlY3QgYmVmb3JlIGJlaW5nIHRydW5jYXRlZFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgZWxsaXBzaXM7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbi8vLyAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4vLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vLyAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbi8vLyAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuLy8vICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIGVsbGlwc2lzKCR3aWR0aDogMTAwJSkge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXgtd2lkdGg6ICR3aWR0aDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd29yZC13cmFwOiBub3JtYWw7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEdlb3JnaWEgZm9udCBzdGFjay5cclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcblxyXG4kZ2VvcmdpYTogXCJHZW9yZ2lhXCIsIFwiQ2FtYnJpYVwiLCBcIlRpbWVzIE5ldyBSb21hblwiLCBcIlRpbWVzXCIsIHNlcmlmO1xyXG5cclxuLy8vIEhlbHZldGljYSBmb250IHN0YWNrLlxyXG4vLy9cclxuLy8vIEB0eXBlIExpc3RcclxuXHJcbiRoZWx2ZXRpY2E6IFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgXCJSb2JvdG9cIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xyXG5cclxuLy8vIEx1Y2lkYSBHcmFuZGUgZm9udCBzdGFjay5cclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcblxyXG4kbHVjaWRhLWdyYW5kZTogXCJMdWNpZGEgR3JhbmRlXCIsIFwiVGFob21hXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XHJcblxyXG4vLy8gTW9ub3NwYWNlIGZvbnQgc3RhY2suXHJcbi8vL1xyXG4vLy8gQHR5cGUgTGlzdFxyXG5cclxuJG1vbm9zcGFjZTogXCJCaXRzdHJlYW0gVmVyYSBTYW5zIE1vbm9cIiwgXCJDb25zb2xhc1wiLCBcIkNvdXJpZXJcIiwgbW9ub3NwYWNlO1xyXG5cclxuLy8vIFZlcmRhbmEgZm9udCBzdGFjay5cclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcblxyXG4kdmVyZGFuYTogXCJWZXJkYW5hXCIsIFwiR2VuZXZhXCIsIHNhbnMtc2VyaWY7XHJcbiIsIi8vLyBIaWRlcyB0aGUgdGV4dCBpbiBhbiBlbGVtZW50LCBjb21tb25seSB1c2VkIHRvIHNob3cgYW4gaW1hZ2UuIFNvbWUgZWxlbWVudHMgd2lsbCBuZWVkIGJsb2NrLWxldmVsIHN0eWxlcyBhcHBsaWVkLlxyXG4vLy9cclxuLy8vIEBsaW5rIGh0dHA6Ly96ZWxkbWFuLmNvbS8yMDEyLzAzLzAxL3JlcGxhY2luZy10aGUtOTk5OXB4LWhhY2stbmV3LWltYWdlLXJlcGxhY2VtZW50XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBoaWRlLXRleHQ7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4vLy8gICAgIHRleHQtaW5kZW50OiAxMDElO1xyXG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAdG9kbyBSZW1vdmUgaGVpZ2h0IGFyZ3VtZW50IGluIHY1LjAuMFxyXG5cclxuQG1peGluIGhpZGUtdGV4dCgkaGVpZ2h0OiBudWxsKSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LWluZGVudDogMTAxJTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cclxuICBAaWYgJGhlaWdodCB7XHJcbiAgICBAd2FybiBcIlRoZSBgaGlkZS10ZXh0YCBtaXhpbiBoYXMgY2hhbmdlZCBhbmQgbm8gbG9uZ2VyIHJlcXVpcmVzIGEgaGVpZ2h0LiBUaGUgaGVpZ2h0IGFyZ3VtZW50IHdpbGwgbm8gbG9uZ2VyIGJlIGFjY2VwdGVkIGluIHY1LjAuMFwiO1xyXG4gIH1cclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgbWFyZ2luYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIG1hcmdpbihudWxsIDEwcHggM2VtIDIwdmgpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgbWFyZ2luLWJvdHRvbTogM2VtO1xyXG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAyMHZoO1xyXG4vLy8gICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcclxuLy8vXHJcbi8vLyBAb3V0cHV0IGBtYXJnaW5gXHJcblxyXG5AbWl4aW4gbWFyZ2luKCR2YWxzLi4uKSB7XHJcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkobWFyZ2luLCBmYWxzZSwgJHZhbHMuLi4pO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBwYWRkaW5nYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHBhZGRpbmcoMTJ2aCBudWxsIDEwcHggNSUpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbi8vLyAgICAgcGFkZGluZy1sZWZ0OiA1JTtcclxuLy8vICAgICBwYWRkaW5nLXRvcDogMTJ2aDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcclxuLy8vXHJcbi8vLyBAb3V0cHV0IGBwYWRkaW5nYFxyXG5cclxuQG1peGluIHBhZGRpbmcoJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShwYWRkaW5nLCBmYWxzZSwgJHZhbHMuLi4pO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3Igc2V0dGluZyBhbiBlbGVtZW504oCZcyBwb3NpdGlvbi4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7UG9zaXRpb259ICRwb3NpdGlvbiBbcmVsYXRpdmVdXHJcbi8vLyAgIEEgQ1NTIHBvc2l0aW9uIHZhbHVlXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkY29vcmRpbmF0ZXMgW251bGwgbnVsbCBudWxsIG51bGxdXHJcbi8vLyAgIExpc3Qgb2YgdmFsdWVzIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgNC12YWx1ZSBzeW50YXggZm9yIHRoZSBlZGdlcyBvZiBhIGJveFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDEwZW0pO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgbGVmdDogMTBlbTtcclxuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbi8vLyAgICAgdG9wOiAwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gdW5wYWNrXHJcblxyXG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uOiByZWxhdGl2ZSwgJGNvb3JkaW5hdGVzOiBudWxsIG51bGwgbnVsbCBudWxsKSB7XHJcbiAgQGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSBsaXN0IHtcclxuICAgICRjb29yZGluYXRlczogJHBvc2l0aW9uO1xyXG4gICAgJHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gICRjb29yZGluYXRlczogdW5wYWNrKCRjb29yZGluYXRlcyk7XHJcblxyXG4gICRvZmZzZXRzOiAoXHJcbiAgICB0b3A6ICAgIG50aCgkY29vcmRpbmF0ZXMsIDEpLFxyXG4gICAgcmlnaHQ6ICBudGgoJGNvb3JkaW5hdGVzLCAyKSxcclxuICAgIGJvdHRvbTogbnRoKCRjb29yZGluYXRlcywgMyksXHJcbiAgICBsZWZ0OiAgIG50aCgkY29vcmRpbmF0ZXMsIDQpXHJcbiAgKTtcclxuXHJcbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcclxuXHJcbiAgQGVhY2ggJG9mZnNldCwgJHZhbHVlIGluICRvZmZzZXRzIHtcclxuICAgIEBpZiBpcy1sZW5ndGgoJHZhbHVlKSB7XHJcbiAgICAgICN7JG9mZnNldH06ICR2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEEgbWl4aW4gZm9yIGdlbmVyYXRpbmcgdmVuZG9yIHByZWZpeGVzIG9uIG5vbi1zdGFuZGFyZGl6ZWQgcHJvcGVydGllcy5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5XHJcbi8vLyAgIFByb3BlcnR5IHRvIHByZWZpeFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlXHJcbi8vLyAgIFZhbHVlIHRvIHVzZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJHByZWZpeGVzXHJcbi8vLyAgIFByZWZpeGVzIHRvIGRlZmluZVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXJhZGl1cywgMTBweCwgd2Via2l0IG1zIHNwZWMpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4vLy8gICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcclxuLy8vICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci13ZWJraXRcclxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3ItbW96aWxsYVxyXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1taWNyb3NvZnRcclxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itb3BlcmFcclxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itc3BlY1xyXG5cclxuQG1peGluIHByZWZpeGVyKCRwcm9wZXJ0eSwgJHZhbHVlLCAkcHJlZml4ZXMpIHtcclxuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XHJcbiAgICBAaWYgJHByZWZpeCA9PSB3ZWJraXQge1xyXG4gICAgICBAaWYgJHByZWZpeC1mb3Itd2Via2l0IHtcclxuICAgICAgICAtd2Via2l0LSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbW96IHtcclxuICAgICAgQGlmICRwcmVmaXgtZm9yLW1vemlsbGEge1xyXG4gICAgICAgIC1tb3otI3skcHJvcGVydHl9OiAkdmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBtcyB7XHJcbiAgICAgIEBpZiAkcHJlZml4LWZvci1taWNyb3NvZnQge1xyXG4gICAgICAgIC1tcy0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG8ge1xyXG4gICAgICBAaWYgJHByZWZpeC1mb3Itb3BlcmEge1xyXG4gICAgICAgIC1vLSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gc3BlYyB7XHJcbiAgICAgIEBpZiAkcHJlZml4LWZvci1zcGVjIHtcclxuICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSAge1xyXG4gICAgICBAd2FybiBcIlVucmVjb2duaXplZCBwcmVmaXg6ICN7JHByZWZpeH1cIjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCkge1xyXG4gICRwcmVmaXgtZm9yLXdlYmtpdDogICAgZmFsc2UgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgIGZhbHNlICFnbG9iYWw7XHJcbiAgJHByZWZpeC1mb3ItbWljcm9zb2Z0OiBmYWxzZSAhZ2xvYmFsO1xyXG4gICRwcmVmaXgtZm9yLW9wZXJhOiAgICAgZmFsc2UgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1zcGVjOiAgICAgIGZhbHNlICFnbG9iYWw7XHJcbn1cclxuIiwiQG1peGluIHJldGluYS1pbWFnZSgkZmlsZW5hbWUsICRiYWNrZ3JvdW5kLXNpemUsICRleHRlbnNpb246IHBuZywgJHJldGluYS1maWxlbmFtZTogbnVsbCwgJHJldGluYS1zdWZmaXg6IF8yeCwgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUpIHtcclxuICBAaWYgJGFzc2V0LXBpcGVsaW5lIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybChcIiN7JGZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogICAgICAgdXJsKFwiI3skZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBoaWRwaSB7XHJcbiAgICBAaWYgJGFzc2V0LXBpcGVsaW5lIHtcclxuICAgICAgQGlmICRyZXRpbmEtZmlsZW5hbWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybChcIiN7JHJldGluYS1maWxlbmFtZX0uI3skZXh0ZW5zaW9ufVwiKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skZmlsZW5hbWV9I3skcmV0aW5hLXN1ZmZpeH0uI3skZXh0ZW5zaW9ufVwiKTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIEBpZiAkcmV0aW5hLWZpbGVuYW1lIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRyZXRpbmEtZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGZpbGVuYW1lfSN7JHJldGluYS1zdWZmaXh9LiN7JGV4dGVuc2lvbn1cIik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRiYWNrZ3JvdW5kLXNpemU7XHJcbiAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBTZXRzIHRoZSBgd2lkdGhgIGFuZCBgaGVpZ2h0YCBvZiB0aGUgZWxlbWVudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRzaXplXHJcbi8vLyAgIEEgbGlzdCBvZiBhdCBtb3N0IDIgc2l6ZSB2YWx1ZXMuXHJcbi8vL1xyXG4vLy8gICBJZiB0aGVyZSBpcyBvbmx5IGEgc2luZ2xlIHZhbHVlIGluIGAkc2l6ZWAgaXQgaXMgdXNlZCBmb3IgYm90aCB3aWR0aCBhbmQgaGVpZ2h0LiBBbGwgdW5pdHMgYXJlIHN1cHBvcnRlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHNpemUoMmVtKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBzaXplKGF1dG8gMTBlbSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcclxuLy8vICAgICB3aWR0aDogMmVtO1xyXG4vLy8gICAgIGhlaWdodDogMmVtO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xyXG4vLy8gICAgIHdpZHRoOiBhdXRvO1xyXG4vLy8gICAgIGhlaWdodDogMTBlbTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEB0b2RvIFJlZmFjdG9yIGluIDUuMC4wIHRvIHVzZSBhIGNvbW1hLXNlcGFyYXRlZCBhcmd1bWVudFxyXG5cclxuQG1peGluIHNpemUoJHZhbHVlKSB7XHJcbiAgJHdpZHRoOiBudGgoJHZhbHVlLCAxKTtcclxuICAkaGVpZ2h0OiAkd2lkdGg7XHJcblxyXG4gIEBpZiBsZW5ndGgoJHZhbHVlKSA+IDEge1xyXG4gICAgJGhlaWdodDogbnRoKCR2YWx1ZSwgMik7XHJcbiAgfVxyXG5cclxuICBAaWYgaXMtc2l6ZSgkaGVpZ2h0KSB7XHJcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiBcImAjeyRoZWlnaHR9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJGhlaWdodGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XHJcbiAgfVxyXG5cclxuICBAaWYgaXMtc2l6ZSgkd2lkdGgpIHtcclxuICAgIHdpZHRoOiAkd2lkdGg7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiBcImAjeyR3aWR0aH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkd2lkdGhgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xyXG4gIH1cclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gR2VuZXJhdGVzIHZhcmlhYmxlcyBmb3IgYWxsIHRleHQtYmFzZWQgaW5wdXRzLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IHVzZSBpbnRlcnBvbGF0aW9uIG9uIHRoZSB2YXJpYWJsZTogYCN7JGFsbC10ZXh0LWlucHV0c31gLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHN9IHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjAwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtZm9jdXN9LFxyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtaG92ZXJ9IHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGYwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlfSB7XHJcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwZjtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl0sXHJcbi8vLyAgIHRleHRhcmVhIHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjAwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcclxuLy8vICAgdGV4dGFyZWE6Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJjb2xvclwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJtb250aFwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGVsXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cInRpbWVcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ1cmxcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmhvdmVyLFxyXG4vLy8gICB0ZXh0YXJlYTpob3ZlciB7XHJcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzBmMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmFjdGl2ZSxcclxuLy8vICAgdGV4dGFyZWE6YWN0aXZlIHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUgYXNzaWduLWlucHV0c1xyXG4vLy9cclxuLy8vIEB0eXBlIExpc3RcclxuXHJcbiR0ZXh0LWlucHV0cy1saXN0OiAnaW5wdXRbdHlwZT1cImNvbG9yXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZVwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJlbWFpbFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cIm1vbnRoXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwibnVtYmVyXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJzZWFyY2hcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZWxcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZXh0XCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwidGltZVwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInVybFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cIndlZWtcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0Om5vdChbdHlwZV0pJyxcclxuICAgICAgICAgICAgICAgICAgICd0ZXh0YXJlYSc7XHJcblxyXG4kYWxsLXRleHQtaW5wdXRzOiAgICAgICAgYXNzaWduLWlucHV0cygkdGV4dC1pbnB1dHMtbGlzdCk7XHJcbiRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlOiBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBhY3RpdmUpO1xyXG4kYWxsLXRleHQtaW5wdXRzLWZvY3VzOiAgYXNzaWduLWlucHV0cygkdGV4dC1pbnB1dHMtbGlzdCwgZm9jdXMpO1xyXG4kYWxsLXRleHQtaW5wdXRzLWhvdmVyOiAgYXNzaWduLWlucHV0cygkdGV4dC1pbnB1dHMtbGlzdCwgaG92ZXIpO1xyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ1NTIGN1YmljLWJlemllciB0aW1pbmcgZnVuY3Rpb25zLiBUaW1pbmcgZnVuY3Rpb25zIGNvdXJ0ZXN5IG9mIGpxdWVyeS5lYXNpZSAoZ2l0aHViLmNvbS9qYXVraWEvZWFzaWUpXHJcbi8vL1xyXG4vLy8gVGltaW5nIGZ1bmN0aW9ucyBhcmUgdGhlIHNhbWUgYXMgZGVtb2VkIGhlcmU6IGh0dHA6Ly9qcXVlcnl1aS5jb20vcmVzb3VyY2VzL2RlbW9zL2VmZmVjdC9lYXNpbmcuaHRtbFxyXG4vLy9cclxuLy8vIEB0eXBlIGN1YmljLWJlemllclxyXG5cclxuJGVhc2UtaW4tcXVhZDogICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA4NSwgMC42ODAsIDAuNTMwKTtcclxuJGVhc2UtaW4tY3ViaWM6ICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuJGVhc2UtaW4tcXVhcnQ6ICAgICBjdWJpYy1iZXppZXIoMC44OTUsICAwLjAzMCwgMC42ODUsIDAuMjIwKTtcclxuJGVhc2UtaW4tcXVpbnQ6ICAgICBjdWJpYy1iZXppZXIoMC43NTUsICAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuJGVhc2UtaW4tc2luZTogICAgICBjdWJpYy1iZXppZXIoMC40NzAsICAwLjAwMCwgMC43NDUsIDAuNzE1KTtcclxuJGVhc2UtaW4tZXhwbzogICAgICBjdWJpYy1iZXppZXIoMC45NTAsICAwLjA1MCwgMC43OTUsIDAuMDM1KTtcclxuJGVhc2UtaW4tY2lyYzogICAgICBjdWJpYy1iZXppZXIoMC42MDAsICAwLjA0MCwgMC45ODAsIDAuMzM1KTtcclxuJGVhc2UtaW4tYmFjazogICAgICBjdWJpYy1iZXppZXIoMC42MDAsIC0wLjI4MCwgMC43MzUsIDAuMDQ1KTtcclxuXHJcbiRlYXNlLW91dC1xdWFkOiAgICAgY3ViaWMtYmV6aWVyKDAuMjUwLCAgMC40NjAsIDAuNDUwLCAwLjk0MCk7XHJcbiRlYXNlLW91dC1jdWJpYzogICAgY3ViaWMtYmV6aWVyKDAuMjE1LCAgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiRlYXNlLW91dC1xdWFydDogICAgY3ViaWMtYmV6aWVyKDAuMTY1LCAgMC44NDAsIDAuNDQwLCAxLjAwMCk7XHJcbiRlYXNlLW91dC1xdWludDogICAgY3ViaWMtYmV6aWVyKDAuMjMwLCAgMS4wMDAsIDAuMzIwLCAxLjAwMCk7XHJcbiRlYXNlLW91dC1zaW5lOiAgICAgY3ViaWMtYmV6aWVyKDAuMzkwLCAgMC41NzUsIDAuNTY1LCAxLjAwMCk7XHJcbiRlYXNlLW91dC1leHBvOiAgICAgY3ViaWMtYmV6aWVyKDAuMTkwLCAgMS4wMDAsIDAuMjIwLCAxLjAwMCk7XHJcbiRlYXNlLW91dC1jaXJjOiAgICAgY3ViaWMtYmV6aWVyKDAuMDc1LCAgMC44MjAsIDAuMTY1LCAxLjAwMCk7XHJcbiRlYXNlLW91dC1iYWNrOiAgICAgY3ViaWMtYmV6aWVyKDAuMTc1LCAgMC44ODUsIDAuMzIwLCAxLjI3NSk7XHJcblxyXG4kZWFzZS1pbi1vdXQtcXVhZDogIGN1YmljLWJlemllcigwLjQ1NSwgIDAuMDMwLCAwLjUxNSwgMC45NTUpO1xyXG4kZWFzZS1pbi1vdXQtY3ViaWM6IGN1YmljLWJlemllcigwLjY0NSwgIDAuMDQ1LCAwLjM1NSwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtcXVhcnQ6IGN1YmljLWJlemllcigwLjc3MCwgIDAuMDAwLCAwLjE3NSwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtcXVpbnQ6IGN1YmljLWJlemllcigwLjg2MCwgIDAuMDAwLCAwLjA3MCwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtc2luZTogIGN1YmljLWJlemllcigwLjQ0NSwgIDAuMDUwLCAwLjU1MCwgMC45NTApO1xyXG4kZWFzZS1pbi1vdXQtZXhwbzogIGN1YmljLWJlemllcigxLjAwMCwgIDAuMDAwLCAwLjAwMCwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtY2lyYzogIGN1YmljLWJlemllcigwLjc4NSwgIDAuMTM1LCAwLjE1MCwgMC44NjApO1xyXG4kZWFzZS1pbi1vdXQtYmFjazogIGN1YmljLWJlemllcigwLjY4MCwgLTAuNTUwLCAwLjI2NSwgMS41NTApO1xyXG4iLCJAbWl4aW4gdHJpYW5nbGUoJHNpemUsICRjb2xvciwgJGRpcmVjdGlvbikge1xyXG4gICR3aWR0aDogbnRoKCRzaXplLCAxKTtcclxuICAkaGVpZ2h0OiBudGgoJHNpemUsIGxlbmd0aCgkc2l6ZSkpO1xyXG4gICRmb3JlZ3JvdW5kLWNvbG9yOiBudGgoJGNvbG9yLCAxKTtcclxuICAkYmFja2dyb3VuZC1jb2xvcjogaWYobGVuZ3RoKCRjb2xvcikgPT0gMiwgbnRoKCRjb2xvciwgMiksIHRyYW5zcGFyZW50KTtcclxuICBoZWlnaHQ6IDA7XHJcbiAgd2lkdGg6IDA7XHJcblxyXG4gIEBpZiAoJGRpcmVjdGlvbiA9PSB1cCkgb3IgKCRkaXJlY3Rpb24gPT0gZG93bikgb3IgKCRkaXJlY3Rpb24gPT0gcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGxlZnQpIHtcclxuICAgICR3aWR0aDogJHdpZHRoIC8gMjtcclxuICAgICRoZWlnaHQ6IGlmKGxlbmd0aCgkc2l6ZSkgPiAxLCAkaGVpZ2h0LCAkaGVpZ2h0LzIpO1xyXG5cclxuICAgIEBpZiAkZGlyZWN0aW9uID09IHVwIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93biB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gdXAtcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IHVwLWxlZnQpIHtcclxuICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblxyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAtcmlnaHQge1xyXG4gICAgICBib3JkZXItbGVmdDogICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cC1sZWZ0IHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBkb3duLXJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PSBkb3duLWxlZnQpIHtcclxuICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblxyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gZG93bi1yaWdodCB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAgJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGRvd24tbGVmdCB7XHJcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtdXApIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcclxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LWRvd24pIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcclxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LXJpZ2h0KSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XHJcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC1sZWZ0KSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XHJcbiAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBjaGFuZ2UgdGhlIGB3b3JkLXdyYXBgIHByb3BlcnR5LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkd3JhcCBbYnJlYWstd29yZF1cclxuLy8vICAgVmFsdWUgZm9yIHRoZSBgd29yZC1icmVha2AgcHJvcGVydHkuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC53cmFwcGVyIHtcclxuLy8vICAgICBAaW5jbHVkZSB3b3JkLXdyYXAoYnJlYWstd29yZCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC53cmFwcGVyIHtcclxuLy8vICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4vLy8gICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuLy8vICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiB3b3JkLXdyYXAoJHdyYXA6IGJyZWFrLXdvcmQpIHtcclxuICBvdmVyZmxvdy13cmFwOiAkd3JhcDtcclxuICB3b3JkLXdyYXA6ICR3cmFwO1xyXG5cclxuICBAaWYgJHdyYXAgPT0gYnJlYWstd29yZCB7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICB3b3JkLWJyZWFrOiAkd3JhcDtcclxuICB9XHJcbn1cclxuIiwiLy8gVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IE1BSk9SIHZlcnNpb24gcmVsZWFzZVxyXG5cclxuQG1peGluIGlubGluZS1ibG9jayB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICBAd2FybiBcIlRoZSBpbmxpbmUtYmxvY2sgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uICgkc3R5bGU6IHNpbXBsZSwgJGJhc2UtY29sb3I6ICM0Mjk0ZjAsICR0ZXh0LXNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xyXG5cclxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IHN0cmluZyBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gY29sb3Ige1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBzdHJpbmcgYW5kIHR5cGUtb2YoJGJhc2UtY29sb3IpID09IG51bWJlciB7XHJcbiAgICAkcGFkZGluZzogJHRleHQtc2l6ZTtcclxuICAgICR0ZXh0LXNpemU6ICRiYXNlLWNvbG9yO1xyXG4gICAgJGJhc2UtY29sb3I6ICM0Mjk0ZjA7XHJcblxyXG4gICAgQGlmICRwYWRkaW5nID09IGluaGVyaXQge1xyXG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBjb2xvciBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gY29sb3Ige1xyXG4gICAgJGJhc2UtY29sb3I6ICRzdHlsZTtcclxuICAgICRzdHlsZTogc2ltcGxlO1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBjb2xvciBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gbnVtYmVyIHtcclxuICAgICRwYWRkaW5nOiAkdGV4dC1zaXplO1xyXG4gICAgJHRleHQtc2l6ZTogJGJhc2UtY29sb3I7XHJcbiAgICAkYmFzZS1jb2xvcjogJHN0eWxlO1xyXG4gICAgJHN0eWxlOiBzaW1wbGU7XHJcblxyXG4gICAgQGlmICRwYWRkaW5nID09IGluaGVyaXQge1xyXG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBudW1iZXIge1xyXG4gICAgJHBhZGRpbmc6ICRiYXNlLWNvbG9yO1xyXG4gICAgJHRleHQtc2l6ZTogJHN0eWxlO1xyXG4gICAgJGJhc2UtY29sb3I6ICM0Mjk0ZjA7XHJcbiAgICAkc3R5bGU6IHNpbXBsZTtcclxuXHJcbiAgICBAaWYgJHBhZGRpbmcgPT0gIzQyOTRmMCB7XHJcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XHJcbiAgfVxyXG5cclxuICAmOmRpc2FibGVkIHtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbiAgfVxyXG5cclxuICBAd2FybiBcIlRoZSBidXR0b24gbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG4vLyBTZWxlY3RvciBTdHlsZSBCdXR0b25cclxuQG1peGluIGJ1dHRvbnN0eWxlKCR0eXBlLCAkYi1jb2xvciwgJHQtc2l6ZSwgJHBhZCkge1xyXG4gIC8vIEdyYXlzY2FsZSBidXR0b25cclxuICBAaWYgJHR5cGUgPT0gc2ltcGxlIGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcclxuICAgIEBpbmNsdWRlIHNpbXBsZSgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG5cclxuICBAaWYgJHR5cGUgPT0gc2hpbnkgYW5kICRiLWNvbG9yID09IGdyYXlzY2FsZSgkYi1jb2xvcikge1xyXG4gICAgQGluY2x1ZGUgc2hpbnkoJGItY29sb3IsIHRydWUsICR0LXNpemUsICRwYWQpO1xyXG4gIH1cclxuXHJcbiAgQGlmICR0eXBlID09IHBpbGwgYW5kICRiLWNvbG9yID09IGdyYXlzY2FsZSgkYi1jb2xvcikge1xyXG4gICAgQGluY2x1ZGUgcGlsbCgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG5cclxuICBAaWYgJHR5cGUgPT0gZmxhdCBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBmbGF0KCRiLWNvbG9yLCB0cnVlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIC8vIENvbG9yZWQgYnV0dG9uXHJcbiAgQGlmICR0eXBlID09IHNpbXBsZSB7XHJcbiAgICBAaW5jbHVkZSBzaW1wbGUoJGItY29sb3IsIGZhbHNlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICR0eXBlID09IHNoaW55IHtcclxuICAgIEBpbmNsdWRlIHNoaW55KCRiLWNvbG9yLCBmYWxzZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkdHlwZSA9PSBwaWxsIHtcclxuICAgIEBpbmNsdWRlIHBpbGwoJGItY29sb3IsIGZhbHNlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICR0eXBlID09IGZsYXQge1xyXG4gICAgQGluY2x1ZGUgZmxhdCgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gU2ltcGxlIEJ1dHRvblxyXG5AbWl4aW4gc2ltcGxlKCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcclxuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xyXG4gICRib3JkZXI6ICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAgOSUsICAkbGlnaHRuZXNzOiAtMTQlKTtcclxuICAkaW5zZXQtc2hhZG93OiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogLTglLCAgJGxpZ2h0bmVzczogIDE1JSk7XHJcbiAgJHN0b3AtZ3JhZGllbnQ6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA5JSwgICRsaWdodG5lc3M6IC0xMSUpO1xyXG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAgMTUlLCAkbGlnaHRuZXNzOiAtMTglKTtcclxuXHJcbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XHJcbiAgICAkY29sb3I6ICAgICAgIGhzbCgwLCAwLCAyMCUpO1xyXG4gICAgJHRleHQtc2hhZG93OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAxMCUsICRsaWdodG5lc3M6IDQlKTtcclxuICB9XHJcblxyXG4gIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xyXG4gICAgJGJvcmRlcjogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyKTtcclxuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XHJcbiAgICAkc3RvcC1ncmFkaWVudDogZ3JheXNjYWxlKCRzdG9wLWdyYWRpZW50KTtcclxuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcclxuICB9XHJcblxyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93O1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogJHRleHRzaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3IsICRzdG9wLWdyYWRpZW50KTtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgJHRleHQtc2hhZG93O1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcblxyXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC00JSwgJGxpZ2h0bmVzczogLTUlKTtcclxuICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtNyUsICRsaWdodG5lc3M6ICA1JSk7XHJcbiAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDglLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XHJcbiAgICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQtaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcclxuXHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdy1ob3ZlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxyXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgJGJvcmRlci1hY3RpdmU6ICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDklLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiA3JSwgJGxpZ2h0bmVzczogLTE3JSk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1hY3RpdmUpO1xyXG4gICAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWFjdGl2ZTtcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA4cHggNHB4ICRpbnNldC1zaGFkb3ctYWN0aXZlLCBpbnNldCAwIDAgOHB4IDRweCAkaW5zZXQtc2hhZG93LWFjdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFNoaW55IEJ1dHRvblxyXG5AbWl4aW4gc2hpbnkoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xyXG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XHJcbiAgJGJvcmRlcjogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTExNywgJGdyZWVuOiAtMTExLCAkYmx1ZTogLTgxKTtcclxuICAkYm9yZGVyLWJvdHRvbTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTI2LCAkZ3JlZW46IC0xMjcsICRibHVlOiAtMTIyKTtcclxuICAkZm91cnRoLXN0b3A6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtNzksICAkZ3JlZW46IC03MCwgICRibHVlOiAtNDYpO1xyXG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6ICAzNywgICRncmVlbjogIDI5LCAgJGJsdWU6ICAxMik7XHJcbiAgJHNlY29uZC1zdG9wOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTU2LCAgJGdyZWVuOiAtNTAsICAkYmx1ZTogLTMzKTtcclxuICAkdGV4dC1zaGFkb3c6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTQwLCAkZ3JlZW46IC0xNDEsICRibHVlOiAtMTE0KTtcclxuICAkdGhpcmQtc3RvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtODYsICAkZ3JlZW46IC03NSwgICRibHVlOiAtNDgpO1xyXG5cclxuICBAaWYgaXMtbGlnaHQoJGJhc2UtY29sb3IpIHtcclxuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XHJcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xyXG4gIH1cclxuXHJcbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAkYm9yZGVyOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXIpO1xyXG4gICAgJGJvcmRlci1ib3R0b206IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XHJcbiAgICAkZm91cnRoLXN0b3A6ICAgZ3JheXNjYWxlKCRmb3VydGgtc3RvcCk7XHJcbiAgICAkaW5zZXQtc2hhZG93OiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3cpO1xyXG4gICAgJHNlY29uZC1zdG9wOiAgIGdyYXlzY2FsZSgkc2Vjb25kLXN0b3ApO1xyXG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xyXG4gICAgJHRoaXJkLXN0b3A6ICAgIGdyYXlzY2FsZSgkdGhpcmQtc3RvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQodG9wLCAkYmFzZS1jb2xvciAwJSwgJHNlY29uZC1zdG9wIDUwJSwgJHRoaXJkLXN0b3AgNTAlLCAkZm91cnRoLXN0b3AgMTAwJSk7XHJcblxyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYm90dG9tO1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdztcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LXNpemU6ICR0ZXh0c2l6ZTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcclxuXHJcbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkZmlyc3Qtc3RvcC1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTEzLCAkZ3JlZW46IC0xNSwgJGJsdWU6IC0xOCk7XHJcbiAgICAkc2Vjb25kLXN0b3AtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTY2LCAkZ3JlZW46IC02MiwgJGJsdWU6IC01MSk7XHJcbiAgICAkdGhpcmQtc3RvcC1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTkzLCAkZ3JlZW46IC04NSwgJGJsdWU6IC02Nik7XHJcbiAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTg2LCAkZ3JlZW46IC04MCwgJGJsdWU6IC02Myk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRmaXJzdC1zdG9wLWhvdmVyOiAgZ3JheXNjYWxlKCRmaXJzdC1zdG9wLWhvdmVyKTtcclxuICAgICAgJHNlY29uZC1zdG9wLWhvdmVyOiBncmF5c2NhbGUoJHNlY29uZC1zdG9wLWhvdmVyKTtcclxuICAgICAgJHRoaXJkLXN0b3AtaG92ZXI6ICBncmF5c2NhbGUoJHRoaXJkLXN0b3AtaG92ZXIpO1xyXG4gICAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGdyYXlzY2FsZSgkZm91cnRoLXN0b3AtaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRmaXJzdC1zdG9wLWhvdmVyICAwJSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzZWNvbmQtc3RvcC1ob3ZlciA1MCUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcmQtc3RvcC1ob3ZlciAgNTAlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvdXJ0aC1zdG9wLWhvdmVyIDEwMCUpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXHJcbiAgJjpmb2N1czpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTExLCAkZ3JlZW46IC0xMTYsICRibHVlOiAtMTIyKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDIwcHggMCAkaW5zZXQtc2hhZG93LWFjdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFBpbGwgQnV0dG9uXHJcbkBtaXhpbiBwaWxsKCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcclxuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xyXG4gICRib3JkZXItYm90dG9tOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogLTExJSwgJGxpZ2h0bmVzczogLTI2JSk7XHJcbiAgJGJvcmRlci1zaWRlczogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDQsICRzYXR1cmF0aW9uOiAtMjElLCAkbGlnaHRuZXNzOiAtMjElKTtcclxuICAkYm9yZGVyLXRvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0zMCUsICRsaWdodG5lc3M6IC0xNSUpO1xyXG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IC0xLCAkc2F0dXJhdGlvbjogLTElLCAgJGxpZ2h0bmVzczogIDclKTtcclxuICAkc3RvcC1ncmFkaWVudDogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246ICAxNCUsICRsaWdodG5lc3M6IC0xMCUpO1xyXG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTE5JSwgJGxpZ2h0bmVzczogLTE1JSk7XHJcblxyXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xyXG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcclxuICAgICR0ZXh0LXNoYWRvdzogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogMTAlLCAkbGlnaHRuZXNzOiA0JSk7XHJcbiAgfVxyXG5cclxuICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICRib3JkZXItYm90dG9tOiBncmF5c2NhbGUoJGJvcmRlci1ib3R0b20pO1xyXG4gICAgJGJvcmRlci1zaWRlczogIGdyYXlzY2FsZSgkYm9yZGVyLXNpZGVzKTtcclxuICAgICRib3JkZXItdG9wOiAgICBncmF5c2NhbGUoJGJvcmRlci10b3ApO1xyXG4gICAgJGluc2V0LXNoYWRvdzogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93KTtcclxuICAgICRzdG9wLWdyYWRpZW50OiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQpO1xyXG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xyXG4gIH1cclxuXHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci10b3A7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLXRvcCAkYm9yZGVyLXNpZGVzICRib3JkZXItYm90dG9tO1xyXG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLCAkc3RvcC1ncmFkaWVudCk7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3c7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuXHJcbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpZ2h0bmVzczogLTQuNSUpO1xyXG4gICAgJGJvcmRlci1ib3R0b206ICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDgsICRzYXR1cmF0aW9uOiAgMTMuNSUsICRsaWdodG5lc3M6IC0zMiUpO1xyXG4gICAgJGJvcmRlci1zaWRlczogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDQsICRzYXR1cmF0aW9uOiAtMiUsICAgICRsaWdodG5lc3M6IC0yNyUpO1xyXG4gICAgJGJvcmRlci10b3A6ICAgICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMTclLCAgICRsaWdodG5lc3M6IC0yMSUpO1xyXG4gICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgICAgICAgICAgICRzYXR1cmF0aW9uOiAtMSUsICAgICRsaWdodG5lc3M6ICAzJSk7XHJcbiAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246IC00JSwgICAgJGxpZ2h0bmVzczogLTE1LjUlKTtcclxuICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTUlLCAgICAkbGlnaHRuZXNzOiAtMjIlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XHJcbiAgICAgICRib3JkZXItYm90dG9tOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1ib3R0b20pO1xyXG4gICAgICAkYm9yZGVyLXNpZGVzOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItc2lkZXMpO1xyXG4gICAgICAkYm9yZGVyLXRvcDogICAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItdG9wKTtcclxuICAgICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWhvdmVyKTtcclxuICAgICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudC1ob3Zlcik7XHJcbiAgICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWhvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLWhvdmVyLCAkc3RvcC1ncmFkaWVudC1ob3Zlcik7XHJcblxyXG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItdG9wO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLXRvcCAkYm9yZGVyLXNpZGVzICRib3JkZXItYm90dG9tO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3ctaG92ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3ctaG92ZXI7XHJcbiAgfVxyXG5cclxuICAmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSxcclxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICRhY3RpdmUtY29sb3I6ICAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA0LCAgJHNhdHVyYXRpb246IC0xMiUsICAkbGlnaHRuZXNzOiAtMTAlKTtcclxuICAgICRib3JkZXItYWN0aXZlOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA2LCAgJHNhdHVyYXRpb246IC0yLjUlLCAkbGlnaHRuZXNzOiAtMzAlKTtcclxuICAgICRib3JkZXItYm90dG9tLWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAxMSwgJHNhdHVyYXRpb246ICA2JSwgICAkbGlnaHRuZXNzOiAtMzElKTtcclxuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA5LCAgJHNhdHVyYXRpb246ICAyJSwgICAkbGlnaHRuZXNzOiAtMjEuNSUpO1xyXG4gICAgJHRleHQtc2hhZG93LWFjdGl2ZTogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDUsICAkc2F0dXJhdGlvbjogLTEyJSwgICRsaWdodG5lc3M6IC0yMS41JSk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRhY3RpdmUtY29sb3I6ICAgICAgICAgZ3JheXNjYWxlKCRhY3RpdmUtY29sb3IpO1xyXG4gICAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyLWFjdGl2ZSk7XHJcbiAgICAgICRib3JkZXItYm90dG9tLWFjdGl2ZTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tLWFjdGl2ZSk7XHJcbiAgICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcclxuICAgICAgJHRleHQtc2hhZG93LWFjdGl2ZTogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWFjdGl2ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZDogJGFjdGl2ZS1jb2xvcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItYWN0aXZlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYm90dG9tLWFjdGl2ZTtcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggM3B4ICRpbnNldC1zaGFkb3ctYWN0aXZlO1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93LWFjdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZsYXQgQnV0dG9uXHJcbkBtaXhpbiBmbGF0KCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcclxuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xyXG5cclxuICBAaWYgaXMtbGlnaHQoJGJhc2UtY29sb3IpIHtcclxuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XHJcbiAgfVxyXG5cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogJHRleHRzaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG5cclxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe1xyXG4gICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDQlLCAkbGlnaHRuZXNzOiA1JSk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRiYXNlLWNvbG9yLWhvdmVyOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yLWhvdmVyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXHJcbiAgJjpmb2N1czpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkYmFzZS1jb2xvci1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC00JSwgJGxpZ2h0bmVzczogLTUlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJhc2UtY29sb3ItYWN0aXZlOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItYWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvci1hY3RpdmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGbGV4aWJsZSBncmlkXHJcbkBmdW5jdGlvbiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zKSB7XHJcbiAgJHdpZHRoOiAkY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XHJcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XHJcbiAgQHJldHVybiBwZXJjZW50YWdlKCR3aWR0aCAvICRjb250YWluZXItd2lkdGgpO1xyXG5cclxuICBAd2FybiBcIlRoZSBmbGV4LWdyaWQgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG4vLyBGbGV4aWJsZSBndXR0ZXJcclxuQGZ1bmN0aW9uIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zLCAkZ3V0dGVyOiAkZmctZ3V0dGVyKSB7XHJcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XHJcbiAgQHJldHVybiBwZXJjZW50YWdlKCRndXR0ZXIgLyAkY29udGFpbmVyLXdpZHRoKTtcclxuXHJcbiAgQHdhcm4gXCJUaGUgZmxleC1ndXR0ZXIgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gZ3JpZC13aWR0aCgkbikge1xyXG4gIEByZXR1cm4gJG4gKiAkZ3ctY29sdW1uICsgKCRuIC0gMSkgKiAkZ3ctZ3V0dGVyO1xyXG5cclxuICBAd2FybiBcIlRoZSBncmlkLXdpZHRoIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2VcIjtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdvbGRlbi1yYXRpbygkdmFsdWUsICRpbmNyZW1lbnQpIHtcclxuICBAcmV0dXJuIG1vZHVsYXItc2NhbGUoJGluY3JlbWVudCwgJHZhbHVlLCAkcmF0aW86ICRnb2xkZW4pO1xyXG5cclxuICBAd2FybiBcIlRoZSBnb2xkZW4tcmF0aW8gZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZS4gUGxlYXNlIHVzZSB0aGUgbW9kdWxhci1zY2FsZSBmdW5jdGlvbiwgaW5zdGVhZC5cIjtcclxufVxyXG5cclxuQG1peGluIGJveC1zaXppbmcoJGJveCkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1zaXppbmcsICRib3gsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIEB3YXJuIFwiVGhlIGJveC1zaXppbmcgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZS4gVGhpcyBwcm9wZXJ0eSBjYW4gbm93IGJlIHVzZWQgdW4tcHJlZml4ZWQuXCI7XHJcbn1cclxuIl0sIm1hcHBpbmdzIjoiQUFBQTs7OztnR0FJZ0c7QUNKaEc7Ozs7Z0dBSWdHO0FBRWhHLDZDQUE2QztBQTBFN0M7Z0dBQ2dHO0FEMUVoRyxBQUFBLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQ1osU0FBUyxFQUFFLElBQUs7RUFDaEIsV0FBVyxFQUFFLGtCQUFtQjtFQUNoQyxRQUFRLEVBQUUsUUFBUztFQUNuQixVQUFVLEVBQUUsTUFBTztFQUNuQixnQkFBZ0IsRUFBQyxJQUFLO0VBQ3RCLHdCQUF3QixFQUFDLElBQUs7Q0FDakM7O0FBQ0QsQUFBSSxJQUFBLEFBQUEsS0FBSyxDQUFDO0VBQUMsVUFBVSxFQUFFLE1BQU87Q0FBRzs7QUFDakMsQUFBQSxNQUFNLENBQUE7RUFDRixNQUFNLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxDQUFFO0NBRTFCOztBQUhELEFBRUksTUFGRSxDQUVGLEdBQUcsQ0FBQTtFQUFDLGNBQWMsRUFBRSxNQUFPO0NBQUc7O0FBRWxDLEFBQUEsR0FBRyxDQUFBO0VBQUUsTUFBTSxFQUFDLENBQUU7RUFBRSxTQUFTLEVBQUMsSUFBSztFQUFFLE1BQU0sRUFBQyxJQUFLO0NBQUk7O0FBQ2pELEFBQUEsQ0FBQyxDQUFDO0VBQ0UsTUFBTSxFQUFFLFVBQVc7RUFDbkIsV0FBVyxFQUFFLElBQUs7Q0FDckI7O0FBQ0QsQUFBQSxLQUFLLEVBQUUsQUFBQSxRQUFRLEVBQUUsQUFBQSxNQUFNLENBQUM7RUFDcEIsU0FBUyxFQUFFLElBQUs7RUFDaEIsTUFBTSxFQUFFLElBQUs7RUFDYixNQUFNLEVBQUUsaUJBQWtCO0VBQzFCLE9BQU8sRUFBRSxJQUFLO0VBQ2QsTUFBTSxFQUFFLENBQUU7RUFDVixLQUFLLEVBQUUsSUFBSztFQUNaLFVBQVUsRUFBRSxJQUFLO0VBQ2pCLGtCQUFrQixFQUFFLElBQUs7RUFDekIsZUFBZSxFQUFFLElBQUs7RUFDdEIsV0FBVyxFQUFFLE1BQU87Q0FDdkI7O0FBQ0QsQUFBbUIsS0FBZCxDQUFBLEFBQUEsSUFBQyxDQUFELFFBQUMsQUFBQSxHQUFnQixBQUFnQixLQUFYLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLEVBQVk7RUFDcEMsZ0JBQWdCLEVBQUUsSUFBSztFQUN2QixrQkFBa0IsRUFBRSxJQUFLO0VBQ3pCLG1CQUFtQixFQUFFLElBQUs7RUFDMUIsaUJBQWlCLEVBQUUsSUFBSztDQUMzQjs7QUFDRCxBQUFvQixLQUFmLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBQWMsMkJBQTJCO0FBQy9DLEFBQW9CLEtBQWYsQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYywyQkFBMkIsQ0FBRTtFQUM3QyxVQUFVLEVBQUUsSUFBSztFQUNqQixrQkFBa0IsRUFBRSxJQUFLO0VBQ3pCLGVBQWUsRUFBRSxJQUFLO0VBQ3RCLE9BQU8sRUFBRSxDQUFFO0NBQ2Q7O0FBQ0QsQUFBa0IsS0FBYixDQUFBLEFBQUEsSUFBQyxDQUFELE1BQUMsQUFBQSxDQUFZLDJCQUEyQjtBQUM3QyxBQUFrQixLQUFiLENBQUEsQUFBQSxJQUFDLENBQUQsTUFBQyxBQUFBLENBQVksMkJBQTJCLENBQUM7RUFDMUMsa0JBQWtCLEVBQUUsSUFBSztFQUN6QixNQUFNLEVBQUUsQ0FBRTtDQUNiOztBQUNELEFBQUEsRUFBRSxDQUFDO0VBQUUsU0FBUyxFQUFFLElBQUs7Q0FBSTs7QUFDekIsQUFBQSxFQUFFLENBQUM7RUFBRSxTQUFTLEVBQUUsSUFBSztDQUFJOztBQUN6QixBQUFBLEVBQUUsQ0FBQztFQUFFLFNBQVMsRUFBRSxJQUFLO0NBQUk7O0FBQ3pCLEFBQUEsRUFBRSxDQUFDO0VBQUUsU0FBUyxFQUFFLElBQUs7Q0FBSTs7QUFDekIsQUFBQSxFQUFFLENBQUM7RUFBRSxTQUFTLEVBQUUsSUFBSztDQUFJOztBQUN6QixBQUFBLEVBQUUsQ0FBQztFQUFFLFNBQVMsRUFBRSxJQUFLO0NBQUk7O0FBRXpCLEFBQUEsV0FBVyxDQUFDO0VBQ1IsU0FBUyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDN0UsY0FBYyxFQUFFLE1BQU87RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBVWpFOztBQVpELEFBR0ksV0FITyxDQUdQLEtBQUssQ0FBQztFQUNGLE9BQU8sRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFDckMsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FDNUU7O0FBUEwsQUFBQSxXQUFXLEFBUU4sS0FBSyxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFSM0IsQUFBQSxXQUFXLEFBU04sT0FBTyxDQUFDO0VBQUMsVUFBVSxFQUFFLE1BQU87Q0FBRzs7QUFUcEMsQUFBQSxXQUFXLEFBVU4sTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFWNUIsQUFBQSxXQUFXLEFBV04sVUFBVSxDQUFDO0VBQUMsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUFFeEMsQUFBQSxXQUFXLENBQUM7RUFDUixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2hHLGNBQWMsRUFBRSxNQUFPO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFBRSxhQUFhLEVBQUUsSUFBSztDQWlCakU7O0FBbkJELEFBQUEsV0FBVyxBQUdOLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBSDVCLEFBQUEsV0FBVyxBQUlOLE9BQU8sQ0FBQztFQUFDLFVBQVUsRUFBRSxNQUFPO0NBQUc7O0FBSnBDLEFBQUEsV0FBVyxBQUtOLE9BQU8sQ0FBQztFQUFDLGFBQWEsRUFBRSxLQUFNO0NBQUc7O0FBTHRDLEFBQUEsV0FBVyxBQU1OLFVBQVUsQ0FBQztFQUFDLGFBQWEsRUFBRSxJQUFLO0NBQUc7O0FBTnhDLEFBT0ksV0FQTyxDQU9QLGVBQWUsQ0FBQztFQUNaLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDaEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxHQUFHLEVBQUUsR0FBSTtFQUM1RixLQUFLLEVBQUUsQ0FBRTtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBUWxDOztBQWxCTCxBQU9JLFdBUE8sQ0FPUCxlQUFlLEFBSVYsTUFBTSxDQUFDO0VBQ0osUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxDQUFFO0VBQ2pGLFVBQVUsRUFBRSw0Q0FBRyxDQUEwQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDekU7O0FBZFQsQUFPSSxXQVBPLENBT1AsZUFBZSxBQVFWLE1BQU0sQ0FBQztFQUNKLE9BQU8sRUFBRSxHQUFJO0NBQ2hCOztBQUdULEFBQUEsV0FBVyxDQUFDO0VBQ1IsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNoRyxjQUFjLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FJakU7O0FBTkQsQUFBQSxXQUFXLEFBR04sT0FBTyxDQUFDO0VBQUMsVUFBVSxFQUFFLE1BQU87Q0FBRzs7QUFIcEMsQUFBQSxXQUFXLEFBSU4sTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFKNUIsQUFBQSxXQUFXLEFBS04sVUFBVSxDQUFDO0VBQUMsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUFFeEMsQUFBQSxZQUFZLENBQUM7RUFDVCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2hHLGNBQWMsRUFBRSxNQUFPO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztDQU05RDs7QUFSRCxBQUFBLFlBQVksQUFHUCxHQUFHLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxHQUFJO0NBQUc7O0FBSGxELEFBQUEsWUFBWSxBQUlQLE9BQU8sQ0FBQztFQUFDLFVBQVUsRUFBRSxNQUFPO0NBQUc7O0FBSnBDLEFBQUEsWUFBWSxBQUtQLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBTDVCLEFBQUEsWUFBWSxBQU1QLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxPQUFRO0NBQUc7O0FBTi9CLEFBQUEsWUFBWSxBQU9QLFVBQVUsQ0FBQztFQUFDLGFBQWEsRUFBRSxJQUFLO0NBQUc7O0FBRXhDLEFBQUEsYUFBYSxDQUFDO0VBQ1YsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNoRyxjQUFjLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FFOUQ7O0FBSkQsQUFBQSxhQUFhLEFBR1IsT0FBTyxDQUFDO0VBQUMsVUFBVSxFQUFFLE1BQU87Q0FBRzs7QUFHcEMsQUFBQSxDQUFDLENBQUM7RUM1R0UsVUFBVSxFRDRHUyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUMzR3ZDLGtCQUFrQixFRDJHQyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUMxR3ZDLGVBQWUsRUQwR0ksR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDekd2QyxjQUFjLEVEeUdLLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3hHdkMsYUFBYSxFRHdHTSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7Q0FBSTs7QUFFL0MsQUFBQSxZQUFZLEVBb1BaLEFBcFBBLE1Bb1BNLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQUFFQyxNQUFNLEVBeEx2QixBQXBQQSxNQW9QTSxDQW9IRixJQUFJLENBR0EsUUFBUSxDQStESixJQUFJLENBR0EsSUFBSSxBQUdDLFFBQVEsQ0FFTCxDQUFDLEFBQW9CLE1BQU0sRUE4SW5ELEFBaGtCQSxXQWdrQlcsQ0FHUCxVQUFVLENBR04sS0FBSyxBQUVBLE1BQU0sRUFSbkIsQUFoa0JBLFdBZ2tCVyxDQUdQLFVBQVUsQ0FnQ04sY0FBYyxBQUVULE1BQU0sRUF3Tm5CLEFBN3pCQSxhQTZ6QmEsQ0FFVCxJQUFJLEFBRUMsTUFBTSxFQWdDZixBQWoyQkEsZ0JBaTJCZ0IsQ0FHWixFQUFFLEFBRUcsS0FBSyxBQUVELE1BQU0sRUFvQ25CLEFBNTRCQSxhQTQ0QmEsQ0FDVCxJQUFJLEFBQ0MsTUFBTSxFQXFIZixBQW5nQ0EsY0FtZ0NjLENBZVYsSUFBSSxBQUVDLE1BQU0sRUFvRWYsQUF4bENBLFlBd2xDWSxBQUVQLE1BQU0sRUFnTlgsQUExeUNBLE1BMHlDTSxDQXFCRixlQUFlLEFBc0RWLFNBQVMsQ0FFTixNQUFNLEFBRUQsTUFBTSxFQTZHdkIsQUF0K0NBLFlBcytDWSxDQUVSLFdBQVcsQUFFTixNQUFNLEVBSmYsQUF0K0NBLFlBcytDWSxDQWVSLGNBQWMsQUFDVCxNQUFNLEVBZ0RmLEFBdGlEQSxZQXNpRFksQ0FDUixJQUFJLEFBRUMsTUFBTSxFQWtEZixBQTNsREEsWUEybERZLENBR1IsSUFBSSxBQUVDLE1BQU0sRUE0QmYsQUE1bkRBLGNBNG5EYyxDQUVWLElBQUksQUFDQyxNQUFNLEVBNEhmLEFBM3ZEQSxTQTJ2RFMsQUFDSixNQUFNLEVBZ0JYLEFBNXdEQSxlQTR3RGUsQUFFVixNQUFNLEVBYVgsQUEzeERBLE9BMnhETyxBQUNGLE1BQU0sRUFrRlgsQUE5MkRBLGVBODJEZSxBQUVWLE1BQU0sRUFGWCxBQTkyREEsZUE4MkRlLENBb0NYLGFBQWEsQ0FHVCxRQUFRLEFBRUgsTUFBTSxFQStFbkIsQUF0K0RBLGdCQXMrRGdCLEFBRVgsTUFBTSxFQWlEWCxBQXpoRUEsWUF5aEVZLEFBd0NQLE1BQU0sRUFFWCxBQW5rRUEsYUFta0VhLENBRVQsS0FBSyxDQUVELFlBQVksQ0FNUixTQUFTLEFBQ0osTUFBTSxFQThCdkIsQUE1bUVBLFFBNG1FUSxBQUNILE1BQU0sRUE2SFgsQUExdUVBLGFBMHVFYSxBQUNSLE1BQU0sRUFEWCxBQTF1RUEsYUEwdUVhLEFBdUVSLFFBQVEsQ0FDTCxLQUFLLENBR0QsS0FBSyxBQUVBLE1BQU0sRUFvQ3ZCLEFBMzFFQSxTQTIxRVMsQ0FRTCxXQUFXLEFBRU4sTUFBTSxFQVZmLEFBMzFFQSxTQTIxRVMsQ0FpQkwsV0FBVyxBQUdOLE1BQU0sRUFwQmYsQUEzMUVBLFNBMjFFUyxDQTBFTCxTQUFTLEFBQ0osTUFBTSxFQTNFZixBQTMxRUEsU0EyMUVTLENBb0ZMLE9BQU8sQUFDRixNQUFNLEVBckZmLEFBMzFFQSxTQTIxRVMsQ0E2RkwsUUFBUSxBQUNILE1BQU0sRUE5RmYsQUEzMUVBLFNBMjFFUyxDQXFHTCxTQUFTLEFBQ0osTUFBTSxFQXRHZixBQTMxRUEsU0EyMUVTLENBbUlMLFVBQVUsQUFFTCxNQUFNLEVBK0dmLEFBL2tGQSxTQStrRlMsQ0FDTCxJQUFJLEFBQ0MsTUFBTSxFQXdDZixBQXpuRkEsY0F5bkZjLEFBb0xULG1CQUFtQixDQUVoQixLQUFLLENBd0JELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVNHLFVBQVUsQ0FFUCxXQUFXLEVBeUN2QyxBQTczRkEsWUE2M0ZZLEFBU1AsTUFBTSxFQVRYLEFBNzNGQSxZQTYzRlksQ0FZUixJQUFJLENBYUEsVUFBVSxBQUdMLE1BQU0sRUE0Rm5CLEFBci9GQSxlQXEvRmUsQUFDVixNQUFNLEVBRFgsQUFyL0ZBLGVBcS9GZSxDQVlYLGFBQWEsQ0F5QlQsU0FBUyxBQUVKLE1BQU0sRUF2Q25CLEFBci9GQSxlQXEvRmUsQ0EyTVgsZ0JBQWdCLENBQ1osY0FBYyxBQUVULE1BQU0sRUE5TW5CLEFBci9GQSxlQXEvRmUsQ0E2WlgsMEJBQTBCLENBQ3RCLFFBQVEsRUE5WmhCLEFBci9GQSxlQXEvRmUsQ0E2WlgsMEJBQTBCLENBa0N0QixXQUFXLEVBOENuQixBQWwrR0EsaUJBaytHaUIsQ0FpQmIsSUFBSSxBQUVDLE1BQU0sRUFVZixBQS8vR0EscUJBKy9HcUIsQ0FFakIsV0FBVyxBQUNOLE1BQU0sRUFpRWYsQUFua0hBLGdCQW1rSGdCLENBQ1osSUFBSSxBQUtDLE1BQU0sRUE2S2YsQUF0dkhBLGNBc3ZIYyxDQUVWLElBQUksQUFJQyxNQUFNLEVBaUlmLEFBNzNIQSxhQTYzSGEsQ0FHVCxTQUFTLEFBRUosTUFBTSxFQTBCZixBQTU1SEEsZ0JBNDVIZ0IsQ0FHWixJQUFJLEFBQ0MsTUFBTSxFQTZDZixBQTc4SEEsWUE2OEhZLENBQ1IsSUFBSSxBQUNDLE1BQU0sRUFzRWYsQUFyaElBLGdCQXFoSWdCLEFBSVgsTUFBTSxFQW9DWCxBQTdqSUEsV0E2aklXLENBRVAsZUFBZSxBQUdWLE1BQU0sRUFMZixBQTdqSUEsV0E2aklXLENBT1AsYUFBYSxBQUdSLE1BQU0sRUEyRGYsQUFsb0lBLFNBa29JUyxBQUVKLE1BQU0sRUFhWCxBQWpwSUEsU0FpcElTLEFBR0osTUFBTSxFQUhYLEFBanBJQSxTQWlwSVMsQ0E4QkwsSUFBSSxBQUdDLE1BQU0sRUFlZixBQWpzSUEsV0Fpc0lXLEFBQ04sTUFBTSxFQTRGWCxBQTl4SUEsTUE4eElNLENBRUYsU0FBUyxDQUlMLElBQUksQUFDQyxNQUFNLEVBUG5CLEFBOXhJQSxNQTh4SU0sQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQTJCSCxnQkFBZ0IsQUFFWCxNQUFNLEVBc0MvQixBQS8zSUEsYUErM0lhLENBQ1QsV0FBVyxBQUlOLE1BQU0sRUErQ2YsQUFuN0lBLFlBbTdJWSxDQUVSLEtBQUssQUFHQSxNQUFNLEVBcUlmLEFBN2pKQSxXQTZqSlcsQ0FjUCxRQUFRLEVBTVosQUFqbEpBLGdCQWlsSmdCLEFBRVgsTUFBTSxFQStCWCxBQWxuSkEsdUJBa25KdUIsQUFFbEIsTUFBTSxDQXBuSkM7RUFBQyxPQUFPLEVBQUMsRUFBRztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUMsT0FBTyxFQUFFLEtBQU07Q0FBRzs7QUFDeEQsQUFBWSxZQUFBLEFBQUEsTUFBTSxFQW1QbEIsQUFuUEEsTUFtUE0sQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQ0ErREosSUFBSSxBQXphSixNQUFNLEVBbVBsQixBQW5QQSxNQW1QTSxDQW9IRixJQUFJLENBR0EsUUFBUSxDQStESixJQUFJLENBR0EsSUFBSSxBQUdDLFFBQVEsQ0FFTCxDQUFDLEFBamJiLE1BQU0sRUErakJsQixBQS9qQkEsV0ErakJXLENBR1AsVUFBVSxDQUdOLEtBQUssQUFya0JELE1BQU0sRUErakJsQixBQS9qQkEsV0ErakJXLENBR1AsVUFBVSxDQWdDTixjQUFjLEFBbG1CVixNQUFNLEVBNHpCbEIsQUE1ekJBLGFBNHpCYSxDQUVULElBQUksQUE5ekJJLE1BQU0sRUFnMkJsQixBQWgyQkEsZ0JBZzJCZ0IsQ0FHWixFQUFFLEFBRUcsS0FBSyxBQXIyQkYsTUFBTSxFQTI0QmxCLEFBMzRCQSxhQTI0QmEsQ0FDVCxJQUFJLEFBNTRCSSxNQUFNLEVBa2dDbEIsQUFsZ0NBLGNBa2dDYyxDQWVWLElBQUksQUFqaENJLE1BQU0sRUF1bENsQixBQXZsQ0EsWUF1bENZLEFBdmxDQSxNQUFNLEVBeXlDbEIsQUF6eUNBLE1BeXlDTSxDQXFCRixlQUFlLEFBc0RWLFNBQVMsQ0FFTixNQUFNLEFBdDNDTixNQUFNLEVBcStDbEIsQUFyK0NBLFlBcStDWSxDQUVSLFdBQVcsQUF2K0NILE1BQU0sRUFxK0NsQixBQXIrQ0EsWUFxK0NZLENBZVIsY0FBYyxBQXAvQ04sTUFBTSxFQXFpRGxCLEFBcmlEQSxZQXFpRFksQ0FDUixJQUFJLEFBdGlESSxNQUFNLEVBMGxEbEIsQUExbERBLFlBMGxEWSxDQUdSLElBQUksQUE3bERJLE1BQU0sRUEybkRsQixBQTNuREEsY0EybkRjLENBRVYsSUFBSSxBQTduREksTUFBTSxFQTB2RGxCLEFBMXZEQSxTQTB2RFMsQUExdkRHLE1BQU0sRUEyd0RsQixBQTN3REEsZUEyd0RlLEFBM3dESCxNQUFNLEVBMHhEbEIsQUExeERBLE9BMHhETyxBQTF4REssTUFBTSxFQTYyRGxCLEFBNzJEQSxlQTYyRGUsQUE3MkRILE1BQU0sRUE2MkRsQixBQTcyREEsZUE2MkRlLENBb0NYLGFBQWEsQ0FHVCxRQUFRLEFBcDVESixNQUFNLEVBcStEbEIsQUFyK0RBLGdCQXErRGdCLEFBcitESixNQUFNLEVBd2hFbEIsQUF4aEVBLFlBd2hFWSxBQXhoRUEsTUFBTSxFQWtrRWxCLEFBbGtFQSxhQWtrRWEsQ0FFVCxLQUFLLENBRUQsWUFBWSxDQU1SLFNBQVMsQUE1a0VULE1BQU0sRUEybUVsQixBQTNtRUEsUUEybUVRLEFBM21FSSxNQUFNLEVBeXVFbEIsQUF6dUVBLGFBeXVFYSxBQXp1RUQsTUFBTSxFQXl1RWxCLEFBenVFQSxhQXl1RWEsQUF1RVIsUUFBUSxDQUNMLEtBQUssQ0FHRCxLQUFLLEFBcHpFTCxNQUFNLEVBMDFFbEIsQUExMUVBLFNBMDFFUyxDQVFMLFdBQVcsQUFsMkVILE1BQU0sRUEwMUVsQixBQTExRUEsU0EwMUVTLENBaUJMLFdBQVcsQUEzMkVILE1BQU0sRUEwMUVsQixBQTExRUEsU0EwMUVTLENBMEVMLFNBQVMsQUFwNkVELE1BQU0sRUEwMUVsQixBQTExRUEsU0EwMUVTLENBb0ZMLE9BQU8sQUE5NkVDLE1BQU0sRUEwMUVsQixBQTExRUEsU0EwMUVTLENBNkZMLFFBQVEsQUF2N0VBLE1BQU0sRUEwMUVsQixBQTExRUEsU0EwMUVTLENBcUdMLFNBQVMsQUEvN0VELE1BQU0sRUEwMUVsQixBQTExRUEsU0EwMUVTLENBbUlMLFVBQVUsQUE3OUVGLE1BQU0sRUE4a0ZsQixBQTlrRkEsU0E4a0ZTLENBQ0wsSUFBSSxBQS9rRkksTUFBTSxFQXduRmxCLEFBeG5GQSxjQXduRmMsQUFvTFQsbUJBQW1CLENBRWhCLEtBQUssQ0F3QkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBU0csVUFBVSxDQUVQLFdBQVcsQUFuMUYzQixNQUFNLEVBNDNGbEIsQUE1M0ZBLFlBNDNGWSxBQTUzRkEsTUFBTSxFQTQzRmxCLEFBNTNGQSxZQTQzRlksQ0FZUixJQUFJLENBYUEsVUFBVSxBQXI1Rk4sTUFBTSxFQW8vRmxCLEFBcC9GQSxlQW8vRmUsQUFwL0ZILE1BQU0sRUFvL0ZsQixBQXAvRkEsZUFvL0ZlLENBWVgsYUFBYSxDQXlCVCxTQUFTLEFBemhHTCxNQUFNLEVBby9GbEIsQUFwL0ZBLGVBby9GZSxDQTJNWCxnQkFBZ0IsQ0FDWixjQUFjLEFBaHNHVixNQUFNLEVBby9GbEIsQUFwL0ZBLGVBby9GZSxDQTZaWCwwQkFBMEIsQ0FDdEIsUUFBUSxBQWw1R0osTUFBTSxFQW8vRmxCLEFBcC9GQSxlQW8vRmUsQ0E2WlgsMEJBQTBCLENBa0N0QixXQUFXLEFBbjdHUCxNQUFNLEVBaStHbEIsQUFqK0dBLGlCQWkrR2lCLENBaUJiLElBQUksQUFsL0dJLE1BQU0sRUE4L0dsQixBQTkvR0EscUJBOC9HcUIsQ0FFakIsV0FBVyxBQWhnSEgsTUFBTSxFQWtrSGxCLEFBbGtIQSxnQkFra0hnQixDQUNaLElBQUksQUFua0hJLE1BQU0sRUFxdkhsQixBQXJ2SEEsY0FxdkhjLENBRVYsSUFBSSxBQXZ2SEksTUFBTSxFQTQzSGxCLEFBNTNIQSxhQTQzSGEsQ0FHVCxTQUFTLEFBLzNIRCxNQUFNLEVBMjVIbEIsQUEzNUhBLGdCQTI1SGdCLENBR1osSUFBSSxBQTk1SEksTUFBTSxFQTQ4SGxCLEFBNThIQSxZQTQ4SFksQ0FDUixJQUFJLEFBNzhISSxNQUFNLEVBb2hJbEIsQUFwaElBLGdCQW9oSWdCLEFBcGhJSixNQUFNLEVBNGpJbEIsQUE1aklBLFdBNGpJVyxDQUVQLGVBQWUsQUE5aklQLE1BQU0sRUE0aklsQixBQTVqSUEsV0E0aklXLENBT1AsYUFBYSxBQW5rSUwsTUFBTSxFQWlvSWxCLEFBam9JQSxTQWlvSVMsQUFqb0lHLE1BQU0sRUFncElsQixBQWhwSUEsU0FncElTLEFBaHBJRyxNQUFNLEVBZ3BJbEIsQUFocElBLFNBZ3BJUyxDQThCTCxJQUFJLEFBOXFJSSxNQUFNLEVBZ3NJbEIsQUFoc0lBLFdBZ3NJVyxBQWhzSUMsTUFBTSxFQTZ4SWxCLEFBN3hJQSxNQTZ4SU0sQ0FFRixTQUFTLENBSUwsSUFBSSxBQW55SUEsTUFBTSxFQTZ4SWxCLEFBN3hJQSxNQTZ4SU0sQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQTJCSCxnQkFBZ0IsQUF0MUl4QixNQUFNLEVBODNJbEIsQUE5M0lBLGFBODNJYSxDQUNULFdBQVcsQUEvM0lILE1BQU0sRUFrN0lsQixBQWw3SUEsWUFrN0lZLENBRVIsS0FBSyxBQXA3SUcsTUFBTSxFQTRqSmxCLEFBNWpKQSxXQTRqSlcsQ0FjUCxRQUFRLEFBMWtKQSxNQUFNLEVBZ2xKbEIsQUFobEpBLGdCQWdsSmdCLEFBaGxKSixNQUFNLEVBaW5KbEIsQUFqbkpBLHVCQWluSnVCLEFBam5KWCxNQUFNLEVBQUMsQUFBUSxRQUFBLEFBQUEsTUFBTSxFQUFDLEFBQU8sT0FBQSxBQUFBLE1BQU0sQ0FBQTtFQUFDLEtBQUssRUFBQyxJQUFLO0VBQUMsT0FBTyxFQUFFLEtBQU07RUFBQyxPQUFPLEVBQUMsR0FBSTtDQUFFOztBQUMxRixBQUFBLFVBQVUsQ0FBQztFQUFDLE9BQU8sRUFBQyxXQUFZO0VBQUMsT0FBTyxFQUFDLFFBQVM7RUFBQyxPQUFPLEVBQUMsV0FBWTtFQUFDLE9BQU8sRUFBQyxZQUFhO0VBQUMsT0FBTyxFQUFDLElBQUs7RUFBQyxpQkFBaUIsRUFBQyxRQUFTO0NBQUc7O0FBRzFJLEFBQ0ksU0FESyxDQUNMLE9BQU8sQ0FBQztFQUFDLFdBQVcsRUFBRSxDQUFFO0NBQUc7O0FBRy9CLEFBQ0ksSUFEQSxBQUFBLElBQUksQ0FDSixFQUFFLENBQUM7RUFDQyxTQUFTLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUM3RSxjQUFjLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FDakU7O0FBSkwsQUFLSSxJQUxBLEFBQUEsSUFBSSxDQUtKLEVBQUUsQ0FBQztFQUNDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDaEcsY0FBYyxFQUFFLE1BQU87RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBQ2pFOztBQUtMO2dHQUNnRztBQUNoRyxBQUFBLE9BQU8sQ0FBQztFQUFFLFFBQVEsRUFBRSxRQUFTO0NBQUk7O0FBQ2pDLEFBQUEsUUFBUSxDQUFDO0VBQ0wsS0FBSyxFQUFFLE1BQU87RUFBQyxNQUFNLEVBQUUsTUFBTztFQUFFLFFBQVEsRUFBRSxRQUFTO0VDL0ZuRCxrQkFBa0IsRURnR0MsVUFBVTtFQy9GN0IsZUFBZSxFRCtGSSxVQUFVO0VDOUY3QixVQUFVLEVEOEZTLFVBQVU7Q0FHaEM7O0FBTEQsQUFBQSxRQUFRLEFBR0gsTUFBTSxDQUFDO0VBQUMsT0FBTyxFQUFFLE9BQVE7Q0FBRzs7QUFIakMsQUFBQSxRQUFRLEFBSUgsUUFBUSxDQUFDO0VBQUMsT0FBTyxFQUFFLGFBQWM7Q0FBRzs7QUFHekMsQUFBQSxJQUFJLENBQUM7RUFDRCxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFBRSxPQUFPLEVBQUUsTUFBTztFQUFFLE9BQU8sRUFBRSxZQUFhO0VBQ2hHLEtBQUssRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFDbkYsVUFBVSxFQUFFLE9BQVE7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQ2pKdEMsVUFBVSxFRHNKVSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNySnhDLGtCQUFrQixFRHFKRSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNwSnhDLGVBQWUsRURvSkssR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbkp4QyxjQUFjLEVEbUpNLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2xKeEMsYUFBYSxFRGtKTyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUM3R3hDLGtCQUFrQixFRDhHQyxVQUFVO0VDN0c3QixlQUFlLEVENkdJLFVBQVU7RUM1RzdCLFVBQVUsRUQ0R1MsVUFBVTtFQ3pJN0IsYUFBYSxFRDBJUyxHQUFHO0VDekl6QixxQkFBcUIsRUR5SUMsR0FBRztFQ3hJekIsa0JBQWtCLEVEd0lJLEdBQUc7RUN2SXpCLGlCQUFpQixFRHVJSyxHQUFHO0VDdEl6QixnQkFBZ0IsRURzSU0sR0FBRztDQWdINUI7O0FBMUhELEFBSUksSUFKQSxDQUlBLElBQUksQ0FBQztFQUNELFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLENBQUU7Q0FFbkM7O0FBUEwsQUFJSSxJQUpBLENBSUEsSUFBSSxBQUVDLGFBQWEsQ0FBQTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBeUMsd0NBQUMsQ0FBQyxTQUFTO0VBQUUsSUFBSSxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsSUFBSztDQUFJOztBQU5ySyxBQUFBLElBQUksQUFXQyxNQUFNLENBQUM7RUFDSixVQUFVLEVBQUMsT0FBUTtFQUNuQixLQUFLLEVBQUUsSUFBSztDQUNmOztBQWRMLEFBQUEsSUFBSSxBQWVDLFNBQVMsQ0FBQztFQUNQLE1BQU0sRUFBQyxjQUFlO0VBQUUsY0FBYyxFQUFFLFNBQVU7RUFDbEQsV0FBVyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQ2pKekMsYUFBYSxFRGtKYSxHQUFHO0VDako3QixxQkFBcUIsRURpSkssR0FBRztFQ2hKN0Isa0JBQWtCLEVEZ0pRLEdBQUc7RUMvSTdCLGlCQUFpQixFRCtJUyxHQUFHO0VDOUk3QixnQkFBZ0IsRUQ4SVUsR0FBRztDQWM1Qjs7QUFoQ0wsQUFBQSxJQUFJLEFBZUMsU0FBUyxBQUlMLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUNoRixVQUFVLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLENBQUU7RUM1Sm5ELFNBQVMsRUQ2SmtCLGlCQUFLO0VDNUpoQyxpQkFBaUIsRUQ0SlUsaUJBQUs7RUMzSmhDLGNBQWMsRUQySmEsaUJBQUs7RUMxSmhDLGFBQWEsRUQwSmMsaUJBQUs7RUN6SmhDLFlBQVksRUR5SmUsaUJBQUs7RUNwS2hDLFVBQVUsRURxS2tCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ3BLL0Msa0JBQWtCLEVEb0tVLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ25LL0MsZUFBZSxFRG1LYSxHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUNsSy9DLGNBQWMsRURrS2MsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDaksvQyxhQUFhLEVEaUtlLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztDQUMxQzs7QUF4QlQsQUFBQSxJQUFJLEFBZUMsU0FBUyxBQVVMLE1BQU0sQ0FBQztFQUNKLEtBQUssRUFBRSxPQUFRO0NBS2xCOztBQS9CVCxBQUFBLElBQUksQUFlQyxTQUFTLEFBVUwsTUFBTSxBQUVGLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxDQUFFO0VDbkt2QixTQUFTLEVEb0tzQixXQUFLO0VDbktwQyxpQkFBaUIsRURtS2MsV0FBSztFQ2xLcEMsY0FBYyxFRGtLaUIsV0FBSztFQ2pLcEMsYUFBYSxFRGlLa0IsV0FBSztFQ2hLcEMsWUFBWSxFRGdLbUIsV0FBSztDQUMzQjs7QUE5QmIsQUFBQSxJQUFJLEFBaUNDLFdBQVcsQ0FBQztFQUNULE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxjQUFjLEVBQUUsU0FBVTtFQUFFLEtBQUssRUFBRSxPQUFRO0VBQ3RFLFdBQVcsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLElBQUs7RUNuS3pDLGFBQWEsRURvS2EsR0FBRztFQ25LN0IscUJBQXFCLEVEbUtLLEdBQUc7RUNsSzdCLGtCQUFrQixFRGtLUSxHQUFHO0VDaks3QixpQkFBaUIsRURpS1MsR0FBRztFQ2hLN0IsZ0JBQWdCLEVEZ0tVLEdBQUc7Q0FJNUI7O0FBeENMLEFBQUEsSUFBSSxBQWlDQyxXQUFXLEFBSVAsTUFBTSxDQUFDO0VBQ0osVUFBVSxFQUFDLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUNwQzs7QUF2Q1QsQUFBQSxJQUFJLEFBeUNDLGdCQUFnQixDQUFDO0VBQ2QsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLGNBQWMsRUFBRSxTQUFVO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFDdEUsV0FBVyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQzNLekMsYUFBYSxFRDRLYSxHQUFHO0VDM0s3QixxQkFBcUIsRUQyS0ssR0FBRztFQzFLN0Isa0JBQWtCLEVEMEtRLEdBQUc7RUN6SzdCLGlCQUFpQixFRHlLUyxHQUFHO0VDeEs3QixnQkFBZ0IsRUR3S1UsR0FBRztDQUk1Qjs7QUFoREwsQUFBQSxJQUFJLEFBeUNDLGdCQUFnQixBQUlaLE1BQU0sQ0FBQztFQUNKLFVBQVUsRUFBQyxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FDcEM7O0FBL0NULEFBQUEsSUFBSSxBQWlEQyxVQUFVLENBQUM7RUFDUixVQUFVLEVBQUUsT0FBUTtDQUl2Qjs7QUF0REwsQUFBQSxJQUFJLEFBaURDLFVBQVUsQUFFTixNQUFNLENBQUM7RUFDSixVQUFVLEVBQUMsT0FBUTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBQ3BDOztBQXJEVCxBQUFBLElBQUksQUF1REMsZUFBZSxDQUFDO0VBQ2IsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLGNBQWMsRUFBRSxTQUFVO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFDdEUsV0FBVyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQ3pMekMsYUFBYSxFRDBMYSxHQUFHO0VDekw3QixxQkFBcUIsRUR5TEssR0FBRztFQ3hMN0Isa0JBQWtCLEVEd0xRLEdBQUc7RUN2TDdCLGlCQUFpQixFRHVMUyxHQUFHO0VDdEw3QixnQkFBZ0IsRURzTFUsR0FBRztDQUk1Qjs7QUE5REwsQUFBQSxJQUFJLEFBdURDLGVBQWUsQUFJWCxNQUFNLENBQUM7RUFDSixVQUFVLEVBQUMsT0FBUTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBQ3BDOztBQTdEVCxBQUFBLElBQUksQUErREMsV0FBVyxDQUFDO0VBQ1QsVUFBVSxFQUFFLE9BQVE7Q0FJdkI7O0FBcEVMLEFBQUEsSUFBSSxBQStEQyxXQUFXLEFBRVAsTUFBTSxDQUFDO0VBQ0osVUFBVSxFQUFDLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUNwQzs7QUFuRVQsQUFBQSxJQUFJLEFBcUVDLFVBQVUsQ0FBQztFQUNSLFVBQVUsRUFBRSxPQUFRO0VBQUUsT0FBTyxFQUFFLE1BQU87Q0FJekM7O0FBMUVMLEFBQUEsSUFBSSxBQXFFQyxVQUFVLEFBRU4sTUFBTSxDQUFDO0VBQ0osVUFBVSxFQUFDLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUNwQzs7QUF6RVQsQUFBQSxJQUFJLEFBMkVDLFNBQVMsQ0FBQztFQUNQLFVBQVUsRUFBQyxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FJakM7O0FBaEZMLEFBQUEsSUFBSSxBQTJFQyxTQUFTLEFBRUwsTUFBTSxDQUFDO0VBQ0osVUFBVSxFQUFDLE9BQVE7Q0FDdEI7O0FBL0VULEFBQUEsSUFBSSxBQWlGQyxjQUFjLENBQUM7RUFDWixNQUFNLEVBQUMsY0FBZTtFQUFFLGNBQWMsRUFBRSxTQUFVO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFDbkUsV0FBVyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQ25OekMsYUFBYSxFRG9OYSxHQUFHO0VDbk43QixxQkFBcUIsRURtTkssR0FBRztFQ2xON0Isa0JBQWtCLEVEa05RLEdBQUc7RUNqTjdCLGlCQUFpQixFRGlOUyxHQUFHO0VDaE43QixnQkFBZ0IsRURnTlUsR0FBRztDQUk1Qjs7QUF4RkwsQUFBQSxJQUFJLEFBaUZDLGNBQWMsQUFJVixNQUFNLENBQUM7RUFDSixVQUFVLEVBQUMsSUFBSztFQUFFLEtBQUssRUFBRSxPQUFRO0NBQ3BDOztBQXZGVCxBQUFBLElBQUksQUF5RkMsVUFBVSxDQUFDO0VBQUMsT0FBTyxFQUFFLE1BQU87Q0FBRzs7QUF6RnBDLEFBQUEsSUFBSSxBQTBGQyxVQUFVLENBQUM7RUFBQyxPQUFPLEVBQUUsTUFBTztDQUFHOztBQTFGcEMsQUFBQSxJQUFJLEFBMkZDLFFBQVEsQ0FBQztFQUFDLE9BQU8sRUFBRSxNQUFPO0NBQUc7O0FBM0ZsQyxBQUFBLElBQUksQUE0RkMsV0FBVyxDQUFDO0VDck5iLFVBQVUsRURzTmEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0VDck52QyxrQkFBa0IsRURxTkssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0VDcE52QyxlQUFlLEVEb05RLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBSTtFQ25OdkMsY0FBYyxFRG1OUyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7RUNsTnZDLGFBQWEsRURrTlUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0NBQ3RDOztBQTlGTCxBQUFBLElBQUksQUErRkMsSUFBSSxDQUFDO0VBQ0YsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsQ0FBRTtDQUVuQzs7QUFsR0wsQUFBQSxJQUFJLEFBK0ZDLElBQUksQUFFQSxVQUFVLENBQUM7RUFBQyxLQUFLLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxHQUFJO0VDeE9yQyxTQUFTLEVEd09pRCxrQkFBUztFQ3ZPbkUsaUJBQWlCLEVEdU95QyxrQkFBUztFQ3RPbkUsY0FBYyxFRHNPNEMsa0JBQVM7RUNyT25FLGFBQWEsRURxTzZDLGtCQUFTO0VDcE9uRSxZQUFZLEVEb084QyxrQkFBUztDQUFXOztBQWpHbEYsQUFBQSxJQUFJLEFBbUdDLFVBQVUsQ0FBQztFQ25PWixhQUFhLEVEbU9zQixDQUFDO0VDbE9wQyxxQkFBcUIsRURrT2MsQ0FBQztFQ2pPcEMsa0JBQWtCLEVEaU9pQixDQUFDO0VDaE9wQyxpQkFBaUIsRURnT2tCLENBQUM7RUMvTnBDLGdCQUFnQixFRCtObUIsQ0FBQztDQUFJOztBQW5HNUMsQUFBQSxJQUFJLEFBb0dDLFVBQVUsQ0FBQztFQ3BPWixhQUFhLEVEb09zQixHQUFHO0VDbk90QyxxQkFBcUIsRURtT2MsR0FBRztFQ2xPdEMsa0JBQWtCLEVEa09pQixHQUFHO0VDak90QyxpQkFBaUIsRURpT2tCLEdBQUc7RUNoT3RDLGdCQUFnQixFRGdPbUIsR0FBRztDQUFJOztBQXBHOUMsQUFBQSxJQUFJLEFBcUdDLE9BQU8sQ0FBQztFQUFDLE9BQU8sRUFBRSxNQUFPO0NBQUc7O0FBckdqQyxBQUFBLElBQUksQUFzR0MsT0FBTyxDQUFDO0VBQ0wsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLE1BQU87RUN2T3pFLGFBQWEsRUR3T2EsR0FBRztFQ3ZPN0IscUJBQXFCLEVEdU9LLEdBQUc7RUN0TzdCLGtCQUFrQixFRHNPUSxHQUFHO0VDck83QixpQkFBaUIsRURxT1MsR0FBRztFQ3BPN0IsZ0JBQWdCLEVEb09VLEdBQUc7Q0FDNUI7O0FBekdMLEFBQUEsSUFBSSxBQTBHQyxPQUFPLENBQUM7RUFDTCxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsTUFBTztFQzNPekUsYUFBYSxFRDRPYSxHQUFHO0VDM083QixxQkFBcUIsRUQyT0ssR0FBRztFQzFPN0Isa0JBQWtCLEVEME9RLEdBQUc7RUN6TzdCLGlCQUFpQixFRHlPUyxHQUFHO0VDeE83QixnQkFBZ0IsRUR3T1UsR0FBRztDQUM1Qjs7QUE3R0wsQUFBQSxJQUFJLEFBOEdDLFFBQVEsQ0FBQztFQUNOLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxNQUFPO0VDL096RSxhQUFhLEVEZ1BhLEdBQUc7RUMvTzdCLHFCQUFxQixFRCtPSyxHQUFHO0VDOU83QixrQkFBa0IsRUQ4T1EsR0FBRztFQzdPN0IsaUJBQWlCLEVENk9TLEdBQUc7RUM1TzdCLGdCQUFnQixFRDRPVSxHQUFHO0NBQzVCOztBQWpITCxBQUFBLElBQUksQUFrSEMsUUFBUSxDQUFDO0VBQUMsU0FBUyxFQUFFLElBQUs7Q0FBRzs7QUFsSGxDLEFBQUEsSUFBSSxBQW1IQyxRQUFRLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztDQUFHOztBQW5IbEMsQUFBQSxJQUFJLEFBb0hDLFNBQVMsQ0FBQztFQUNQLE9BQU8sRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQ2hFLFdBQVcsRUFBRSxDQUFFO0VBQUUsY0FBYyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUMsQ0FBRTtFQ3RQbEQsYUFBYSxFRHVQYSxHQUFHO0VDdFA3QixxQkFBcUIsRURzUEssR0FBRztFQ3JQN0Isa0JBQWtCLEVEcVBRLEdBQUc7RUNwUDdCLGlCQUFpQixFRG9QUyxHQUFHO0VDblA3QixnQkFBZ0IsRURtUFUsR0FBRztDQUM1Qjs7QUF4SEwsQUFBQSxJQUFJLEFBeUhDLFFBQVEsQ0FBQTtFQUFFLFlBQVksRUFBRSxJQUFLO0NBQUk7O0FBRXRDLEFBQUEsU0FBUyxDQUFDO0VBQ04sT0FBTyxFQUFFLFlBQWE7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0F5Qm5GOztBQTFCRCxBQUFBLFNBQVMsQUFFSixNQUFNLENBQUM7RUFDSixLQUFLLEVBQUMsT0FBUTtDQUNqQjs7QUFKTCxBQUFBLFNBQVMsQUFLSixLQUFLLENBQUM7RUFDSCxXQUFXLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQUUsWUFBWSxFQUFFLElBQUs7Q0FLaEU7O0FBWEwsQUFBQSxTQUFTLEFBS0osS0FBSyxBQUVELE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUNoRixVQUFVLEVBQUUsc0NBQUcsQ0FBb0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQ25FOztBQVZULEFBQUEsU0FBUyxBQVlKLE1BQU0sQ0FBQztFQUNKLFdBQVcsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFVBQVc7Q0FLM0M7O0FBbEJMLEFBQUEsU0FBUyxBQVlKLE1BQU0sQUFFRixPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDaEYsVUFBVSxFQUFFLHFDQUFHLENBQW1DLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUNsRTs7QUFqQlQsQUFBQSxTQUFTLEFBbUJKLFFBQVEsQ0FBQztFQUNOLFdBQVcsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsT0FBUTtDQUs1RDs7QUF6QkwsQUFBQSxTQUFTLEFBbUJKLFFBQVEsQUFFSixPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFDbEYsVUFBVSxFQUFFLHVDQUFHLENBQXFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUM5RTs7QUFHVCxBQUFBLFNBQVMsQ0FBQztFQUNOLE9BQU8sRUFBRSxZQUFhO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsVUFBVztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQ2xGLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztDQVVqRTs7QUFiRCxBQUFBLFNBQVMsQUFJSixPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFDbEYsVUFBVSxFQUFFLG1EQUFHLENBQWlELFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUN2RixlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUFSTCxBQUFBLFNBQVMsQUFTSixhQUFhLENBQUM7RUFBQyxhQUFhLEVBQUUsSUFBSztDQUFHOztBQVQzQyxBQUFBLFNBQVMsQUFVSixNQUFNLENBQUM7RUFDSixPQUFPLEVBQUUsR0FBSTtFQUFFLEtBQUssRUFBRSxPQUFRO0NBQ2pDOztBQUdMLEFBQUEsUUFBUSxDQUFDO0VBQ0wsVUFBVSxFQUFFLElBQUs7Q0FHcEI7O0FBSkQsQUFBQSxRQUFRLEFBRUgsT0FBTyxDQUFDO0VBQUMsVUFBVSxFQUFFLE1BQU87Q0FBRzs7QUFGcEMsQUFHSSxRQUhJLENBR0osSUFBSSxDQUFDO0VBQUMsU0FBUyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUc7O0FBRWpFLEFBQUEsWUFBWSxDQUFDO0VBQ1QsVUFBVSxFQUFFLEtBQU07RUFBRSxRQUFRLEVBQUUsSUFBSztDQUN0Qzs7QUFFRCxBQUFBLFVBQVUsQ0FBQztFQUNQLE9BQU8sRUFBRSxZQUFhO0VBQUUsU0FBUyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDakcsTUFBTSxFQUFDLGNBQWU7RUN6U3RCLFVBQVUsRUQwU1MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUN6U3JDLGtCQUFrQixFRHlTQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztFQ3hTckMsZUFBZSxFRHdTSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztFQ3ZTckMsY0FBYyxFRHVTSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztFQ3RTckMsYUFBYSxFRHNTTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztFQ2pUckMsYUFBYSxFRGtUUyxHQUFHO0VDalR6QixxQkFBcUIsRURpVEMsR0FBRztFQ2hUekIsa0JBQWtCLEVEZ1RJLEdBQUc7RUMvU3pCLGlCQUFpQixFRCtTSyxHQUFHO0VDOVN6QixnQkFBZ0IsRUQ4U00sR0FBRztFQ3ZSekIsa0JBQWtCLEVEd1JDLFVBQVU7RUN2UjdCLGVBQWUsRUR1UkksVUFBVTtFQ3RSN0IsVUFBVSxFRHNSUyxVQUFVO0NBNEJoQzs7QUFqQ0QsQUFBQSxVQUFVLEFBTUwsTUFBTSxDQUFDO0VBQ0osUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLEdBQUcsRUFBRSxHQUFJO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFDbEcsVUFBVSxFQUFFLHlDQUFHLENBQXVDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUM3RSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQzlUbkYsU0FBUyxFRCtUYyxrQkFBUztFQzlUaEMsaUJBQWlCLEVEOFRNLGtCQUFTO0VDN1RoQyxjQUFjLEVENlRTLGtCQUFTO0VDNVRoQyxhQUFhLEVENFRVLGtCQUFTO0VDM1RoQyxZQUFZLEVEMlRXLGtCQUFTO0NBQy9COztBQVhMLEFBWUksVUFaTSxDQVlOLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxZQUFhO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUN6RyxVQUFVLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQUUsTUFBTSxFQUFFLENBQUU7RUNqU25ELGtCQUFrQixFRGtTSyxVQUFVO0VDalNqQyxlQUFlLEVEaVNRLFVBQVU7RUNoU2pDLFVBQVUsRURnU2EsVUFBVTtFQzNVakMsVUFBVSxFRDRVYyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUMzVTVDLGtCQUFrQixFRDJVTSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUMxVTVDLGVBQWUsRUQwVVMsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDelU1QyxjQUFjLEVEeVVVLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3hVNUMsYUFBYSxFRHdVVyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7Q0FJM0M7O0FBcEJMLEFBWUksVUFaTSxDQVlOLE1BQU0sQUFLRCxNQUFNLENBQUM7RUN4VFosVUFBVSxFRHlUaUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHNCQUFJO0VDeFQvQyxrQkFBa0IsRUR3VFMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHNCQUFJO0VDdlQvQyxlQUFlLEVEdVRZLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQ3RUL0MsY0FBYyxFRHNUYSxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUNyVC9DLGFBQWEsRURxVGMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHNCQUFJO0NBQzFDOztBQW5CVCxBQUFBLFVBQVUsQUFxQkwsR0FBRyxDQUFDO0VBQ0QsU0FBUyxFQUFFLEtBQU07Q0FJcEI7O0FBMUJMLEFBdUJRLFVBdkJFLEFBcUJMLEdBQUcsQ0FFQSxNQUFNLENBQUM7RUFDSCxTQUFTLEVBQUUsSUFBSztDQUNuQjs7QUF6QlQsQUFBQSxVQUFVLEFBMkJMLEdBQUcsQ0FBQztFQUNELE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztDQUl0RDs7QUFoQ0wsQUE2QlEsVUE3QkUsQUEyQkwsR0FBRyxDQUVBLE1BQU0sQ0FBQztFQUNILFlBQVksRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUN0RDs7QUFLVDtnR0FDZ0c7QUFDaEcsQUFBQSxNQUFNLENBQUM7RUFDSCxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLEtBQU07RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsSUFBSztFQUNuRyxhQUFhLEVBQUUsaUJBQWtCO0NBNlNwQzs7QUEvU0QsQUFHSSxNQUhFLENBR0YsUUFBUSxDQUFDO0VBQUMsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUFIOUIsQUFJSSxNQUpFLENBSUYsWUFBWSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE9BQVE7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBRSxVQUFXO0VBQ3RHLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLElBQUs7Q0FRdEM7O0FBZEwsQUFPUSxNQVBGLENBSUYsWUFBWSxDQUdSLElBQUksQ0FBQztFQUNELFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsSUFBSSxFQUFFLElBQUs7RUM1VnZGLGFBQWEsRUQ2VmlCLEdBQUc7RUM1VmpDLHFCQUFxQixFRDRWUyxHQUFHO0VDM1ZqQyxrQkFBa0IsRUQyVlksR0FBRztFQzFWakMsaUJBQWlCLEVEMFZhLEdBQUc7RUN6VmpDLGdCQUFnQixFRHlWYyxHQUFHO0NBSTVCOztBQWJULEFBT1EsTUFQRixDQUlGLFlBQVksQ0FHUixJQUFJLEFBR0MsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFDO0VBQUMsR0FBRyxFQUFFLElBQUs7Q0FBRzs7QUFWeEMsQUFPUSxNQVBGLENBSUYsWUFBWSxDQUdSLElBQUksQUFJQyxVQUFXLENBQUEsQUFBQSxDQUFDLEVBQUM7RUFBQyxHQUFHLEVBQUUsSUFBSztDQUFHOztBQVh4QyxBQU9RLE1BUEYsQ0FJRixZQUFZLENBR1IsSUFBSSxBQUtDLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBQztFQUFDLEdBQUcsRUFBRSxJQUFLO0NBQUc7O0FBWnhDLEFBZUksTUFmRSxDQWVGLEtBQUssQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFFLE1BQU0sRUFBRSxJQUFLO0NBQUc7O0FBZjdFLEFBZ0JJLE1BaEJFLENBZ0JGLFdBQVcsQ0FBQTtFQUNQLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsVUFBVztFQUFFLEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FvQnZGOztBQXJDTCxBQWtCUSxNQWxCRixDQWdCRixXQUFXLENBRVAsS0FBSyxDQUFBO0VBQ0QsUUFBUSxFQUFFLFFBQVM7RUFBQyxNQUFNLEVBQUUsSUFBSztFQUFHLEtBQUssRUFBRSxJQUFLO0NBV25EOztBQTlCVCxBQW9CWSxNQXBCTixDQWdCRixXQUFXLENBRVAsS0FBSyxDQUVELElBQUksQUFDQyxZQUFZLENBQUE7RUFDVCxNQUFNLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFxQyxvQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxHQUFHLEVBQUUsS0FBTTtFQUFFLElBQUksRUFBRSxDQUFFO0NBRTdJOztBQXhCakIsQUFvQlksTUFwQk4sQ0FnQkYsV0FBVyxDQUVQLEtBQUssQ0FFRCxJQUFJLEFBQ0MsWUFBWSxBQUVSLE9BQU8sQ0FBQTtFQUFFLE9BQU8sRUFBQyxFQUFHO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyx5QkFBSTtFQUF3QixVQUFVLEVBQUUsQ0FBRTtFQUFFLGFBQWEsRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxJQUFLO0NBQUk7O0FBdkJoTSxBQW9CWSxNQXBCTixDQWdCRixXQUFXLENBRVAsS0FBSyxDQUVELElBQUksQUFLQyxXQUFXLENBQUE7RUFDUixRQUFRLEVBQUMsUUFBUztFQUFFLEdBQUcsRUFBRSxLQUFNO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsU0FBVTtFQUFFLFVBQVUsRUFBRSxVQUFXO0VBQUUsY0FBYyxFQUFFLENBQUU7Q0FFL007O0FBNUJqQixBQStCUSxNQS9CRixDQWdCRixXQUFXLENBZVAsVUFBVSxDQUFBO0VBQ04sUUFBUSxFQUFFLFFBQVM7RUFBRSxJQUFJLEVBQUUsS0FBTTtFQUFFLFdBQVcsRUFBRSxHQUFJO0VBQUUsVUFBVSxFQUFFLFVBQVc7Q0FJaEY7O0FBcENULEFBaUNZLE1BakNOLENBZ0JGLFdBQVcsQ0FlUCxVQUFVLENBRU4sRUFBRSxDQUFBO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxJQUFLO0NBQUk7O0FBakN4RSxBQWtDWSxNQWxDTixDQWdCRixXQUFXLENBZVAsVUFBVSxDQUdOLEVBQUUsQ0FBQTtFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FBSzs7QUFsQ3pELEFBbUNZLE1BbkNOLENBZ0JGLFdBQVcsQ0FlUCxVQUFVLENBSU4sRUFBRSxDQUFBO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUs7O0FBbkM3RSxBQXNDSSxNQXRDRSxDQXNDRixNQUFNLENBQUM7RUFDSCxLQUFLLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQUUsTUFBTSxFQUFFLElBQUs7RUNoV3RELGtCQUFrQixFRGlXSyxVQUFVO0VDaFdqQyxlQUFlLEVEZ1dRLFVBQVU7RUMvVmpDLFVBQVUsRUQrVmEsVUFBVTtDQThDaEM7O0FBdEZMLEFBeUNRLE1BekNGLENBc0NGLE1BQU0sQ0FHRixVQUFVLEVBekNsQixBQXlDbUIsTUF6Q2IsQ0FzQ0YsTUFBTSxDQUdTLFdBQVcsQ0FBQztFQUNuQixLQUFLLEVBQUUsSUFBSztDQTJDZjs7QUFyRlQsQUEyQ1ksTUEzQ04sQ0FzQ0YsTUFBTSxDQUdGLFVBQVUsQ0FFTixFQUFFLEVBM0NkLEFBMkNZLE1BM0NOLENBc0NGLE1BQU0sQ0FHUyxXQUFXLENBRWxCLEVBQUUsQ0FBQztFQUNDLFFBQVEsRUFBRSxRQUFTO0NBRXRCOztBQTlDYixBQTZDZ0IsTUE3Q1YsQ0FzQ0YsTUFBTSxDQUdGLFVBQVUsQ0FFTixFQUFFLENBRUUsQ0FBQyxFQTdDakIsQUE2Q2dCLE1BN0NWLENBc0NGLE1BQU0sQ0FHUyxXQUFXLENBRWxCLEVBQUUsQ0FFRSxDQUFDLENBQUM7RUFBRSxPQUFPLEVBQUUsTUFBTztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxlQUFlLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLFVBQVc7Q0FBSTs7QUE3Q3hNLEFBZ0RnQixNQWhEVixDQXNDRixNQUFNLENBR0YsVUFBVSxDQU1OLEVBQUUsQ0FDRSxFQUFFLEVBaERsQixBQWdEZ0IsTUFoRFYsQ0FzQ0YsTUFBTSxDQUdTLFdBQVcsQ0FNbEIsRUFBRSxDQUNFLEVBQUUsQ0FBQTtFQUNFLGVBQWUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUNuRDs7QUFsRGpCLEFBb0RZLE1BcEROLENBc0NGLE1BQU0sQ0FHRixVQUFVLENBV04sRUFBRSxFQXBEZCxBQW9EWSxNQXBETixDQXNDRixNQUFNLENBR1MsV0FBVyxDQVdsQixFQUFFLENBQUM7RUFBRSxlQUFlLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0NBQUk7O0FBcER2RCxBQXVEdUIsTUF2RGpCLENBc0NGLE1BQU0sQ0FHRixVQUFVLENBWU4sV0FBVyxBQUNOLE9BQU8sQ0FDSixFQUFFLENBQUMsQ0FBQyxBQUNDLE1BQU0sRUF4RC9CLEFBdUR1QixNQXZEakIsQ0FzQ0YsTUFBTSxDQUdTLFdBQVcsQ0FZbEIsV0FBVyxBQUNOLE9BQU8sQ0FDSixFQUFFLENBQUMsQ0FBQyxBQUNDLE1BQU0sQ0FBQTtFQ25aM0IsU0FBUyxFRG1adUMsZUFBTTtFQ2xadEQsaUJBQWlCLEVEa1orQixlQUFNO0VDalp0RCxjQUFjLEVEaVprQyxlQUFNO0VDaFp0RCxhQUFhLEVEZ1ptQyxlQUFNO0VDL1l0RCxZQUFZLEVEK1lvQyxlQUFNO0VDMVp0RCxVQUFVLEVEMFo0RSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN6WjFHLGtCQUFrQixFRHlab0UsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDeFoxRyxlQUFlLEVEd1p1RSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN2WjFHLGNBQWMsRUR1WndFLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3RaMUcsYUFBYSxFRHNaeUUsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBQUs7O0FBeERuSCxBQTJEbUIsTUEzRGIsQ0FzQ0YsTUFBTSxDQUdGLFVBQVUsQ0FZTixXQUFXLENBTVAsRUFBRSxDQUFDLENBQUMsQUFDQyxNQUFNLEVBNUQzQixBQTJEbUIsTUEzRGIsQ0FzQ0YsTUFBTSxDQUdTLFdBQVcsQ0FZbEIsV0FBVyxDQU1QLEVBQUUsQ0FBQyxDQUFDLEFBQ0MsTUFBTSxDQUFBO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQXlDLHdDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBRSxHQUFHLEVBQUUsSUFBSztFQ3ZackssU0FBUyxFRHdaOEIsWUFBTTtFQ3ZaN0MsaUJBQWlCLEVEdVpzQixZQUFNO0VDdFo3QyxjQUFjLEVEc1p5QixZQUFNO0VDclo3QyxhQUFhLEVEcVowQixZQUFNO0VDcFo3QyxZQUFZLEVEb1oyQixZQUFNO0VDL1o3QyxVQUFVLEVEZ2E4QixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUMvWjVELGtCQUFrQixFRCtac0IsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDOVo1RCxlQUFlLEVEOFp5QixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUM3WjVELGNBQWMsRUQ2WjBCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQzVaNUQsYUFBYSxFRDRaMkIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBQzNDOztBQS9EckIsQUFpRWtCLE1BakVaLENBc0NGLE1BQU0sQ0FHRixVQUFVLENBWU4sV0FBVyxHQVlMLEVBQUUsRUFqRXBCLEFBaUVrQixNQWpFWixDQXNDRixNQUFNLENBR1MsV0FBVyxDQVlsQixXQUFXLEdBWUwsRUFBRSxDQUFDO0VBQUUsT0FBTyxFQUFFLElBQUs7Q0FBSTs7QUFqRXpDLEFBbUVZLE1BbkVOLENBc0NGLE1BQU0sQ0FHRixVQUFVLENBMEJOLGNBQWMsRUFuRTFCLEFBbUVZLE1BbkVOLENBc0NGLE1BQU0sQ0FHUyxXQUFXLENBMEJsQixjQUFjLENBQUE7RUFDVixVQUFVLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsR0FBRyxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBZ0I3RTs7QUFwRmIsQUFxRWdCLE1BckVWLENBc0NGLE1BQU0sQ0FHRixVQUFVLENBMEJOLGNBQWMsQ0FFVixXQUFXLEVBckUzQixBQXFFZ0IsTUFyRVYsQ0FzQ0YsTUFBTSxDQUdTLFdBQVcsQ0EwQmxCLGNBQWMsQ0FFVixXQUFXLENBQUE7RUFDUCxVQUFVLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxLQUFNO0VDMVpyRCxhQUFhLEVEMlp5QixDQUFDO0VDMVp2QyxxQkFBcUIsRUQwWmlCLENBQUM7RUN6WnZDLGtCQUFrQixFRHlab0IsQ0FBQztFQ3hadkMsaUJBQWlCLEVEd1pxQixDQUFDO0VDdlp2QyxnQkFBZ0IsRUR1WnNCLENBQUM7Q0FJMUI7O0FBM0VqQixBQXlFd0IsTUF6RWxCLENBc0NGLE1BQU0sQ0FHRixVQUFVLENBMEJOLGNBQWMsQ0FFVixXQUFXLENBR1AsS0FBSyxDQUNELEtBQUssRUF6RTdCLEFBeUV3QixNQXpFbEIsQ0FzQ0YsTUFBTSxDQUdTLFdBQVcsQ0EwQmxCLGNBQWMsQ0FFVixXQUFXLENBR1AsS0FBSyxDQUNELEtBQUssQ0FBQTtFQUFFLFVBQVUsRUFBRSxJQUFLO0NBQUk7O0FBekVwRCxBQThFd0IsTUE5RWxCLENBc0NGLE1BQU0sQ0FHRixVQUFVLENBMEJOLGNBQWMsQUFTVCxPQUFPLENBQ0osYUFBYSxDQUNULFdBQVcsRUE5RW5DLEFBOEV3QixNQTlFbEIsQ0FzQ0YsTUFBTSxDQUdTLFdBQVcsQ0EwQmxCLGNBQWMsQUFTVCxPQUFPLENBQ0osYUFBYSxDQUNULFdBQVcsQ0FBQTtFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FBSTs7QUE5RW5FLEFBaUZ3QixNQWpGbEIsQ0FzQ0YsTUFBTSxDQUdGLFVBQVUsQ0EwQk4sY0FBYyxBQVNULE9BQU8sQ0FJSixXQUFXLENBQ1AsTUFBTSxFQWpGOUIsQUFpRndCLE1BakZsQixDQXNDRixNQUFNLENBR1MsV0FBVyxDQTBCbEIsY0FBYyxBQVNULE9BQU8sQ0FJSixXQUFXLENBQ1AsTUFBTSxDQUFBO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQXdDLHVDQUFDLENBQUEsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNO0NBQUk7O0FBakZqSSxBQXVGSSxNQXZGRSxDQXVGRixVQUFVLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxhQUFjO0VBQUUsTUFBTSxFQUFFLElBQUs7RUNqWnhELGtCQUFrQixFRGtaSyxVQUFVO0VDalpqQyxlQUFlLEVEaVpRLFVBQVU7RUNoWmpDLFVBQVUsRURnWmEsVUFBVTtDQUNoQzs7QUExRkwsQUEyRkksTUEzRkUsQ0EyRkYsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsVUFBVztDQXVCcEM7O0FBbkhMLEFBOEZZLE1BOUZOLENBMkZGLElBQUksQ0FFQSxFQUFFLENBQ0UsRUFBRSxDQUFDO0VBQ0MsT0FBTyxFQUFFLFlBQWE7RUFBRSxNQUFNLEVBQUUsYUFBYztDQWtCakQ7O0FBakhiLEFBZ0dnQixNQWhHVixDQTJGRixJQUFJLENBRUEsRUFBRSxDQUNFLEVBQUUsQ0FFRSxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxhQUFjO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUM5RSxLQUFLLEVBQUUsSUFBSztFQUFFLGNBQWMsRUFBRSxTQUFVO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztDQWNwRjs7QUFoSGpCLEFBZ0dnQixNQWhHVixDQTJGRixJQUFJLENBRUEsRUFBRSxDQUNFLEVBQUUsQ0FFRSxDQUFDLEFBR0ksTUFBTSxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUMsR0FBSTtFQUFFLEtBQUssRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFDNUYsVUFBVSxFQUFFLE9BQVE7RUNoY3hDLFNBQVMsRURpYzhCLGtCQUFTO0VDaGNoRCxpQkFBaUIsRURnY3NCLGtCQUFTO0VDL2JoRCxjQUFjLEVEK2J5QixrQkFBUztFQzliaEQsYUFBYSxFRDhiMEIsa0JBQVM7RUM3YmhELFlBQVksRUQ2YjJCLGtCQUFTO0VDeGNoRCxVQUFVLEVEeWM4QixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN4YzVELGtCQUFrQixFRHdjc0IsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDdmM1RCxlQUFlLEVEdWN5QixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN0YzVELGNBQWMsRURzYzBCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3JjNUQsYUFBYSxFRHFjMkIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBQzNDOztBQXhHckIsQUFnR2dCLE1BaEdWLENBMkZGLElBQUksQ0FFQSxFQUFFLENBQ0UsRUFBRSxDQUVFLENBQUMsQUFTSSxNQUFNLEVBekczQixBQWdHZ0IsTUFoR1YsQ0EyRkYsSUFBSSxDQUVBLEVBQUUsQ0FDRSxFQUFFLENBRUUsQ0FBQyxBQVVJLE9BQU8sQ0FBQztFQUNMLEtBQUssRUFBQyxPQUFRO0NBSWpCOztBQS9HckIsQUFnR2dCLE1BaEdWLENBMkZGLElBQUksQ0FFQSxFQUFFLENBQ0UsRUFBRSxDQUVFLENBQUMsQUFTSSxNQUFNLEFBR0YsTUFBTSxFQTVHL0IsQUFnR2dCLE1BaEdWLENBMkZGLElBQUksQ0FFQSxFQUFFLENBQ0UsRUFBRSxDQUVFLENBQUMsQUFVSSxPQUFPLEFBRUgsTUFBTSxDQUFDO0VBQ0osS0FBSyxFQUFDLElBQUs7Q0FDZDs7QUE5R3pCLEFBb0hJLE1BcEhFLENBb0hGLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FrSXBDOztBQXZQTCxBQXNIUSxNQXRIRixDQW9IRixJQUFJLENBRUEsT0FBTyxDQUFDO0VBQUMsTUFBTSxFQUFFLE9BQVE7RUN4ZDdCLFVBQVUsRUR3ZHlDLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ3ZkdEUsa0JBQWtCLEVEdWRpQyxHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUN0ZHRFLGVBQWUsRURzZG9DLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ3JkdEUsY0FBYyxFRHFkcUMsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDcGR0RSxhQUFhLEVEb2RzQyxHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7Q0FBSTs7QUF0SDlFLEFBdUhRLE1BdkhGLENBb0hGLElBQUksQ0FHQSxRQUFRLENBQUM7RUFDTCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxLQUFNO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFDNUYsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLE9BQU8sRUFBRSxNQUFPO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsS0FBTTtFQUNsRixPQUFPLEVBQUUsSUFBSztFQUNkLE9BQU8sRUFBRSxDQUFFO0VDcGJuQixrQkFBa0IsRURxYlMsVUFBVTtFQ3BickMsZUFBZSxFRG9iWSxVQUFVO0VDbmJyQyxVQUFVLEVEbWJpQixVQUFVO0VDaGRyQyxhQUFhLEVEaWRpQixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHO0VDaGR6QyxxQkFBcUIsRURnZFMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRztFQy9jekMsa0JBQWtCLEVEK2NZLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUc7RUM5Y3pDLGlCQUFpQixFRDhjYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHO0VDN2N6QyxnQkFBZ0IsRUQ2Y2MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRztDQXlIcEM7O0FBdFBULEFBdUhRLE1BdkhGLENBb0hGLElBQUksQ0FHQSxRQUFRLEFBT0gsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUMsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLEdBQUcsRUFBRSxJQUFLO0VBQ3JGLFVBQVUsRUFBRSx5Q0FBRyxDQUF1QyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDdEU7O0FBakliLEFBbUlnQixNQW5JVixDQW9IRixJQUFJLENBR0EsUUFBUSxDQVdKLEVBQUUsQ0FDRSxFQUFFLENBQUM7RUFDQyxhQUFhLEVBQUUsaUJBQWtCO0NBZ0RwQzs7QUFwTGpCLEFBcUlvQixNQXJJZCxDQW9IRixJQUFJLENBR0EsUUFBUSxDQVdKLEVBQUUsQ0FDRSxFQUFFLENBRUUsQ0FBQyxDQUFDO0VBQ0UsT0FBTyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsZ0JBQWlCO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDaEUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0NBSzFEOztBQTdJckIsQUF5SXdCLE1BeklsQixDQW9IRixJQUFJLENBR0EsUUFBUSxDQVdKLEVBQUUsQ0FDRSxFQUFFLENBRUUsQ0FBQyxDQUlHLEtBQUssQ0FBQztFQUNGLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQ3JlM0csU0FBUyxFRHNla0Msa0JBQVM7RUNyZXBELGlCQUFpQixFRHFlMEIsa0JBQVM7RUNwZXBELGNBQWMsRURvZTZCLGtCQUFTO0VDbmVwRCxhQUFhLEVEbWU4QixrQkFBUztFQ2xlcEQsWUFBWSxFRGtlK0Isa0JBQVM7Q0FDL0I7O0FBNUl6QixBQStJd0IsTUEvSWxCLENBb0hGLElBQUksQ0FHQSxRQUFRLENBV0osRUFBRSxDQUNFLEVBQUUsQUFXRyxXQUFXLENBQ1IsS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLGdEQUFHLENBQThDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUNwRixlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUFsSnpCLEFBcUp3QixNQXJKbEIsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQ0FXSixFQUFFLENBQ0UsRUFBRSxBQWlCRyxTQUFTLENBQ04sS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLDhDQUFHLENBQTRDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUNsRixlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUF4SnpCLEFBMkp3QixNQTNKbEIsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQ0FXSixFQUFFLENBQ0UsRUFBRSxBQXVCRyxXQUFXLENBQ1IsS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLGdEQUFHLENBQThDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUNwRixlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUE5SnpCLEFBaUt3QixNQWpLbEIsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQ0FXSixFQUFFLENBQ0UsRUFBRSxBQTZCRyxRQUFRLENBQ0wsS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLDZDQUFHLENBQTJDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUNqRixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUM3RSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsT0FBUTtFQUM5RSxlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUF0S3pCLEFBeUt3QixNQXpLbEIsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQ0FXSixFQUFFLENBQ0UsRUFBRSxBQXFDRyxTQUFTLENBQ04sS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLDhDQUFHLENBQTRDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUNsRixlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUE1S3pCLEFBK0t3QixNQS9LbEIsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQ0FXSixFQUFFLENBQ0UsRUFBRSxBQTJDRyxPQUFPLENBQ0osS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLG9DQUFHLENBQWtDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUN4RSxlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUFsTHpCLEFBc0xZLE1BdExOLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FBQztFQUNELE9BQU8sRUFBRSxVQUFXO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFBRSxhQUFhLEVBQUUsaUJBQWtCO0NBc0MvRTs7QUE3TmIsQUF5TGdCLE1BekxWLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsSUFBSztFQ25mNUIsa0JBQWtCLEVEb2ZpQixVQUFVO0VDbmY3QyxlQUFlLEVEbWZvQixVQUFVO0VDbGY3QyxVQUFVLEVEa2Z5QixVQUFVO0NBNkJoQzs7QUF4TmpCLEFBeUxnQixNQXpMVixDQW9IRixJQUFJLENBR0EsUUFBUSxDQStESixJQUFJLENBR0EsSUFBSSxBQUdDLFFBQVEsQ0FBQztFQUNOLEtBQUssRUFBRSxHQUFJO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FFcEM7O0FBL0xyQixBQThMd0IsTUE5TGxCLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLEFBR0MsUUFBUSxDQUVMLENBQUMsQ0FBQztFQUFDLE9BQU8sRUFBRSxLQUFNO0NBQW1DOztBQTlMN0UsQUF5TGdCLE1BekxWLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLEFBT0MsU0FBUyxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBRSxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQWhNbEUsQUFpTW9CLE1Bak1kLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLENBUUEsU0FBUyxDQUFDO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtDQUFHOztBQWpNaEUsQUFrTW9CLE1BbE1kLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLENBU0EsY0FBYyxDQUFDO0VBQ1gsS0FBSyxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtFQzVmdkYsa0JBQWtCLEVENmZxQixVQUFVO0VDNWZqRCxlQUFlLEVENGZ3QixVQUFVO0VDM2ZqRCxVQUFVLEVEMmY2QixVQUFVO0NBTWhDOztBQTFNckIsQUFxTXdCLE1Bck1sQixDQW9IRixJQUFJLENBR0EsUUFBUSxDQStESixJQUFJLENBR0EsSUFBSSxDQVNBLGNBQWMsQ0FHVixNQUFNLENBQUM7RUFDSCxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQUUsT0FBTyxFQUFFLEdBQUk7RUMvZnpFLGtCQUFrQixFRGdnQnlCLFVBQVU7RUMvZnJELGVBQWUsRUQrZjRCLFVBQVU7RUM5ZnJELFVBQVUsRUQ4ZmlDLFVBQVU7Q0FFaEM7O0FBek16QixBQXdNNEIsTUF4TXRCLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLENBU0EsY0FBYyxDQUdWLE1BQU0sQ0FHRixHQUFHLENBQUM7RUFBQyxNQUFNLEVBQUUsSUFBSztDQUFHOztBQXhNakQsQUEyTW9CLE1BM01kLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLENBa0JBLGNBQWMsQ0FBQztFQUNYLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxPQUFRO0NBQy9FOztBQS9NckIsQUFnTm9CLE1BaE5kLENBb0hGLElBQUksQ0FHQSxRQUFRLENBK0RKLElBQUksQ0FHQSxJQUFJLENBdUJBLE1BQU0sQ0FBQztFQUNILFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsT0FBUTtDQUM3RDs7QUFuTnJCLEFBb05vQixNQXBOZCxDQW9IRixJQUFJLENBR0EsUUFBUSxDQStESixJQUFJLENBR0EsSUFBSSxDQTJCQSxJQUFJLENBQUM7RUFDRCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsR0FBSTtFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FDekQ7O0FBdk5yQixBQTBOb0IsTUExTmQsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQ0ErREosSUFBSSxBQW1DQyxNQUFNLENBQ0gsUUFBUSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUExTjVDLEFBMk5vQixNQTNOZCxDQW9IRixJQUFJLENBR0EsUUFBUSxDQStESixJQUFJLEFBbUNDLE1BQU0sQ0FFSCxTQUFTLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtDQUFHOztBQTNON0MsQUF1SFEsTUF2SEYsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQUF1R0gsY0FBYyxDQUFDO0VBQ1osS0FBSyxFQUFFLEtBQU07RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxJQUFLO0NBQzlDOztBQWhPYixBQXVIUSxNQXZIRixDQW9IRixJQUFJLENBR0EsUUFBUSxBQTBHSCxnQkFBZ0IsQ0FBQztFQUNkLEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLENBQUU7RUMzaEJuRixrQkFBa0IsRUQ0aEJhLFVBQVU7RUMzaEJ6QyxlQUFlLEVEMmhCZ0IsVUFBVTtFQzFoQnpDLFVBQVUsRUQwaEJxQixVQUFVO0NBa0JoQzs7QUFyUGIsQUFvT2dCLE1BcE9WLENBb0hGLElBQUksQ0FHQSxRQUFRLEFBMEdILGdCQUFnQixDQUdiLElBQUksQ0FBQztFQUNELE1BQU0sRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FlckM7O0FBcFBqQixBQy9USSxNRCtURSxDQW9IRixJQUFJLENBR0EsUUFBUSxBQTBHSCxnQkFBZ0IsQ0FHYixJQUFJLENDbmlCaEIsMkJBQTJCLENBQUM7RURxaUJTLEtBQUssRUFBRSxJQUFLO0NDcmlCVjs7QUQrVDNDLEFDOVRJLE1EOFRFLENBb0hGLElBQUksQ0FHQSxRQUFRLEFBMEdILGdCQUFnQixDQUdiLElBQUksQ0NsaUJoQixpQkFBaUIsQ0FBVztFRG9pQlMsS0FBSyxFQUFFLElBQUs7Q0NwaUJWOztBRDhUM0MsQUM3VEksTUQ2VEUsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQUEwR0gsZ0JBQWdCLENBR2IsSUFBSSxDQ2ppQmhCLGtCQUFrQixDQUFVO0VEbWlCUyxLQUFLLEVBQUUsSUFBSztDQ25pQlY7O0FENlQzQyxBQzVUSSxNRDRURSxDQW9IRixJQUFJLENBR0EsUUFBUSxBQTBHSCxnQkFBZ0IsQ0FHYixJQUFJLENDaGlCaEIsc0JBQXNCLENBQU07RURraUJTLEtBQUssRUFBRSxJQUFLO0NDbGlCVjs7QUQ0VDNDLEFBdU9xQyxNQXZPL0IsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQUEwR0gsZ0JBQWdCLENBR2IsSUFBSSxDQUdBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVgsRUFBYTtFQUNmLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFDaEYsT0FBTyxFQUFFLGFBQWM7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VDbGlCM0Usa0JBQWtCLEVEbWlCcUIsVUFBVTtFQ2xpQmpELGVBQWUsRURraUJ3QixVQUFVO0VDamlCakQsVUFBVSxFRGlpQjZCLFVBQVU7Q0FDaEM7O0FBM09yQixBQTRPdUMsTUE1T2pDLENBb0hGLElBQUksQ0FHQSxRQUFRLEFBMEdILGdCQUFnQixDQUdiLElBQUksQ0FRQSxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVBQWU7RUFDakIsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQ3ZGLE1BQU0sRUFBRSxDQUFFO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VDaGxCbkYsVUFBVSxFRGlsQjhCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2hsQjVELGtCQUFrQixFRGdsQnNCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQy9rQjVELGVBQWUsRUQra0J5QixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUM5a0I1RCxjQUFjLEVEOGtCMEIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDN2tCNUQsYUFBYSxFRDZrQjJCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztDQUkzQzs7QUFuUHJCLEFBNE91QyxNQTVPakMsQ0FvSEYsSUFBSSxDQUdBLFFBQVEsQUEwR0gsZ0JBQWdCLENBR2IsSUFBSSxDQVFBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FJRCxNQUFNLENBQUM7RUFDSixXQUFXLEVBQUMsR0FBSTtDQUNuQjs7QUFsUHpCLEFBd1BJLE1BeFBFLENBd1BGLFNBQVMsQ0FBQztFQUNOLE1BQU0sRUFBRSxVQUFXO0VBQUUsT0FBTyxFQUFFLFVBQVc7Q0FXNUM7O0FBcFFMLEFBMFBRLE1BMVBGLENBd1BGLFNBQVMsQ0FFTCxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsWUFBYTtFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQzlGLFlBQVksRUFBRSxnQkFBaUI7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFDbEcsT0FBTyxFQUFFLFdBQVk7Q0FNeEI7O0FBblFULEFBMFBRLE1BMVBGLENBd1BGLFNBQVMsQ0FFTCxDQUFDLEFBSUksV0FBVyxDQUFDO0VBQUMsWUFBWSxFQUFDLENBQUU7Q0FBRzs7QUE5UDVDLEFBMFBRLE1BMVBGLENBd1BGLFNBQVMsQ0FFTCxDQUFDLEFBS0ksTUFBTSxFQS9QbkIsQUEwUFEsTUExUEYsQ0F3UEYsU0FBUyxDQUVMLENBQUMsQUFNSSxPQUFPLENBQUM7RUFDTCxLQUFLLEVBQUMsT0FBUTtDQUNqQjs7QUFsUWIsQUFxUUksTUFyUUUsQ0FxUUYsV0FBVyxDQUFDO0VBQ1IsTUFBTSxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxhQUFjO0NBUzdEOztBQS9RTCxBQXVRUSxNQXZRRixDQXFRRixXQUFXLENBRVAsT0FBTyxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSx3Q0FBRyxDQUFzQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDbEc7O0FBelFULEFBMlFZLE1BM1FOLENBcVFGLFdBQVcsQUFLTixJQUFJLENBQ0QsT0FBTyxDQUFDO0VBQ0osVUFBVSxFQUFFLDRDQUFHLENBQTBDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUN6RTs7QUE3UWIsQUFnUkksTUFoUkUsQ0FnUkYsWUFBWSxDQUFDO0VBQ1QsTUFBTSxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxhQUFjO0NBVTdEOztBQTNSTCxBQWtSUSxNQWxSRixDQWdSRixZQUFZLENBRVIsT0FBTyxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSx5Q0FBRyxDQUF1QyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7RUFDaEcsT0FBTyxFQUFFLEtBQU07Q0FDbEI7O0FBclJULEFBdVJZLE1BdlJOLENBZ1JGLFlBQVksQUFNUCxJQUFJLENBQ0QsT0FBTyxDQUFDO0VBQ0osVUFBVSxFQUFFLDZDQUFHLENBQTJDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUMxRTs7QUF6UmIsQUE0UkksTUE1UkUsQ0E0UkYsU0FBUyxDQUFDO0VBQ04sTUFBTSxFQUFFLFVBQVc7RUFBRSxPQUFPLEVBQUUsVUFBVztDQWlCNUM7O0FBOVNMLEFBOFJRLE1BOVJGLENBNFJGLFNBQVMsQ0FFTCxPQUFPLENBQUM7RUFDSixLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLHNDQUFHLENBQW9DLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztFQUNsRyxRQUFRLEVBQUUsUUFBUztFQUNuQixPQUFPLEVBQUUsS0FBTTtDQU9sQjs7QUF4U1QsQUFrU1ksTUFsU04sQ0E0UkYsU0FBUyxDQUVMLE9BQU8sQ0FJSCxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsT0FBUTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQ3BGLFNBQVMsRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFBRSxXQUFXLEVBQUUsSUFBSztFQUN2RyxXQUFXLEVBQUUsR0FBSTtFQ3puQjdCLGFBQWEsRUQwbkJxQixHQUFHO0VDem5CckMscUJBQXFCLEVEeW5CYSxHQUFHO0VDeG5CckMsa0JBQWtCLEVEd25CZ0IsR0FBRztFQ3ZuQnJDLGlCQUFpQixFRHVuQmlCLEdBQUc7RUN0bkJyQyxnQkFBZ0IsRURzbkJrQixHQUFHO0NBQzVCOztBQXZTYixBQTBTWSxNQTFTTixDQTRSRixTQUFTLEFBYUosSUFBSSxDQUNELE9BQU8sQ0FBQztFQUNKLFVBQVUsRUFBRSwwQ0FBRyxDQUF3QyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDdkU7O0FBSWIsQUFDSSxhQURTLENBQ1QsTUFBTSxDQUFDO0VBQ0gsVUFBVSxFQUFFLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztDQVVyQzs7QUFaTCxBQUdRLGFBSEssQ0FDVCxNQUFNLENBRUYsZUFBZSxDQUFDO0VBQ1osU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDN0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDakYsT0FBTyxFQUFFLGNBQWU7Q0FLM0I7O0FBWFQsQUFHUSxhQUhLLENBQ1QsTUFBTSxDQUVGLGVBQWUsQUFJVixPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQy9FLE9BQU8sRUFBRSxHQUFJO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtDQUNuQzs7QUFLYixBQUFBLFdBQVcsQ0FBQztFQUNSLFFBQVEsRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUM5RSxVQUFVLEVBQUUsa0JBQUk7RUFBYyxPQUFPLEVBQUUsSUFBSztDQUMvQzs7QUFDRCxBQUFBLGFBQWEsQ0FBQztFQUNWLFFBQVEsRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsSUFBSztFQUNoRixVQUFVLEVBQUUsa0JBQUk7RUFBYyxPQUFPLEVBQUUsSUFBSztDQUMvQzs7QUFDRCxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLFFBQVEsRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUM5RSxVQUFVLEVBQUUsV0FBSTtDQUNuQjs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNSLFFBQVEsRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsSUFBSztFQUNoRixPQUFPLEVBQUUsSUFBSztDQTZFakI7O0FBL0VELEFBR0ksV0FITyxDQUdQLFVBQVUsQ0FBQztFQUNQLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsTUFBTztFQUM1RixPQUFPLEVBQUUsRUFBRztFQUFFLE9BQU8sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLENBQUU7Q0FxRTVDOztBQTFFTCxBQU1RLFdBTkcsQ0FHUCxVQUFVLENBR04sS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLE9BQVE7RUFBRSxNQUFNLEVBQUUsSUFBSztDQTJCdEM7O0FBbENULEFBU1ksV0FURCxDQUdQLFVBQVUsQ0FHTixLQUFLLENBR0QsS0FBSyxDQUFDO0VBQ0YsS0FBSyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxhQUFjO0VBQ3BELEtBQUssRUFBRSxJQUFLO0NBSWY7O0FBZmIsQUFZZ0IsV0FaTCxDQUdQLFVBQVUsQ0FHTixLQUFLLENBR0QsS0FBSyxDQUdELEdBQUcsQ0FBQztFQUNBLEtBQUssRUFBRSxJQUFLO0NBQ2Y7O0FBZGpCLEFBZ0JZLFdBaEJELENBR1AsVUFBVSxDQUdOLEtBQUssQ0FVRCxVQUFVLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxHQUFHLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQzFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLEtBQU07Q0FlbEM7O0FBakNiLEFBbUJnQixXQW5CTCxDQUdQLFVBQVUsQ0FHTixLQUFLLENBVUQsVUFBVSxDQUdOLElBQUksQ0FBQztFQUNELFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsSUFBSSxFQUFFLENBQUU7RUNwckI1RixhQUFhLEVEcXJCeUIsR0FBRztFQ3ByQnpDLHFCQUFxQixFRG9yQmlCLEdBQUc7RUNuckJ6QyxrQkFBa0IsRURtckJvQixHQUFHO0VDbHJCekMsaUJBQWlCLEVEa3JCcUIsR0FBRztFQ2pyQnpDLGdCQUFnQixFRGlyQnNCLEdBQUc7Q0FXNUI7O0FBaENqQixBQW1CZ0IsV0FuQkwsQ0FHUCxVQUFVLENBR04sS0FBSyxDQVVELFVBQVUsQ0FHTixJQUFJLEFBR0MsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFDO0VBQ1YsR0FBRyxFQUFDLENBQUU7RUN0b0IxQix3QkFBd0IsRUR1b0JxQixJQUFJLENBQUMsTUFBTTtFQ3RvQnhELHFCQUFxQixFRHNvQndCLElBQUksQ0FBQyxNQUFNO0VDcm9CeEQsbUJBQW1CLEVEcW9CMEIsSUFBSSxDQUFDLE1BQU07RUNwb0J4RCxnQkFBZ0IsRURvb0I2QixJQUFJLENBQUMsTUFBTTtFQy9yQnhELFNBQVMsRURnc0I4QixhQUFNO0VDL3JCN0MsaUJBQWlCLEVEK3JCc0IsYUFBTTtFQzlyQjdDLGNBQWMsRUQ4ckJ5QixhQUFNO0VDN3JCN0MsYUFBYSxFRDZyQjBCLGFBQU07RUM1ckI3QyxZQUFZLEVENHJCMkIsYUFBTTtDQUM1Qjs7QUExQnJCLEFBbUJnQixXQW5CTCxDQUdQLFVBQVUsQ0FHTixLQUFLLENBVUQsVUFBVSxDQUdOLElBQUksQUFRQyxVQUFXLENBQUEsQUFBQSxDQUFDLEVBQUM7RUFDVixHQUFHLEVBQUMsSUFBSztFQzNvQjdCLHdCQUF3QixFRDRvQnFCLElBQUksQ0FBQyxNQUFNO0VDM29CeEQscUJBQXFCLEVEMm9Cd0IsSUFBSSxDQUFDLE1BQU07RUMxb0J4RCxtQkFBbUIsRUQwb0IwQixJQUFJLENBQUMsTUFBTTtFQ3pvQnhELGdCQUFnQixFRHlvQjZCLElBQUksQ0FBQyxNQUFNO0VDcHNCeEQsU0FBUyxFRHFzQjhCLGNBQU07RUNwc0I3QyxpQkFBaUIsRURvc0JzQixjQUFNO0VDbnNCN0MsY0FBYyxFRG1zQnlCLGNBQU07RUNsc0I3QyxhQUFhLEVEa3NCMEIsY0FBTTtFQ2pzQjdDLFlBQVksRURpc0IyQixjQUFNO0NBQzVCOztBQS9CckIsQUFtQ1EsV0FuQ0csQ0FHUCxVQUFVLENBZ0NOLGNBQWMsQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFTO0VBQUUsYUFBYSxFQUFFLGlCQUFrQjtFQUFFLE9BQU8sRUFBRSxJQUFLO0NBY3pFOztBQWxEVCxBQzNvQkksV0Qyb0JPLENBR1AsVUFBVSxDQWdDTixjQUFjLENDOXFCbEIsMkJBQTJCLENBQUM7RURpckJDLEtBQUssRUFBRSxJQUFLO0NDanJCRjs7QUQyb0IzQyxBQzFvQkksV0Qwb0JPLENBR1AsVUFBVSxDQWdDTixjQUFjLENDN3FCbEIsaUJBQWlCLENBQVc7RURnckJDLEtBQUssRUFBRSxJQUFLO0NDaHJCRjs7QUQwb0IzQyxBQ3pvQkksV0R5b0JPLENBR1AsVUFBVSxDQWdDTixjQUFjLENDNXFCbEIsa0JBQWtCLENBQVU7RUQrcUJDLEtBQUssRUFBRSxJQUFLO0NDL3FCRjs7QUR5b0IzQyxBQ3hvQkksV0R3b0JPLENBR1AsVUFBVSxDQWdDTixjQUFjLENDM3FCbEIsc0JBQXNCLENBQU07RUQ4cUJDLEtBQUssRUFBRSxJQUFLO0NDOXFCRjs7QUR3b0IzQyxBQXVDNkIsV0F2Q2xCLENBR1AsVUFBVSxDQWdDTixjQUFjLENBSVYsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxFQUFhO0VBQ2YsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxtQkFBb0I7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUN4RSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQzlxQjVFLGtCQUFrQixFRCtxQmEsVUFBVTtFQzlxQnpDLGVBQWUsRUQ4cUJnQixVQUFVO0VDN3FCekMsVUFBVSxFRDZxQnFCLFVBQVU7Q0FDaEM7O0FBM0NiLEFBNEMrQixXQTVDcEIsQ0FHUCxVQUFVLENBZ0NOLGNBQWMsQ0FTVixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVBQWU7RUFDakIsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFDdEcsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUN0RixVQUFVLEVBQUUsSUFBSztFQ3ByQjdCLGtCQUFrQixFRHFyQmEsVUFBVTtFQ3ByQnpDLGVBQWUsRURvckJnQixVQUFVO0VDbnJCekMsVUFBVSxFRG1yQnFCLFVBQVU7Q0FDaEM7O0FBakRiLEFBcURnQixXQXJETCxDQUdQLFVBQVUsQ0FnRE4sS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLENBQUM7RUFDQyxhQUFhLEVBQUUsaUJBQWtCO0NBSXBDOztBQTFEakIsQUF1RG9CLFdBdkRULENBR1AsVUFBVSxDQWdETixLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQ0FFRSxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxTQUFVO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUN2RTs7QUF6RHJCLEFBNkRRLFdBN0RHLENBR1AsVUFBVSxDQTBETixTQUFTLENBQUM7RUFDTixNQUFNLEVBQUUsYUFBYztFQUFFLE9BQU8sRUFBRSxDQUFFO0NBV3RDOztBQXpFVCxBQStEWSxXQS9ERCxDQUdQLFVBQVUsQ0EwRE4sU0FBUyxDQUVMLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxZQUFhO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFDOUYsWUFBWSxFQUFFLGNBQWU7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFDaEcsT0FBTyxFQUFFLFdBQVk7Q0FNeEI7O0FBeEViLEFBK0RZLFdBL0RELENBR1AsVUFBVSxDQTBETixTQUFTLENBRUwsQ0FBQyxBQUlJLFdBQVcsQ0FBQztFQUFDLFlBQVksRUFBQyxDQUFFO0NBQUc7O0FBbkVoRCxBQStEWSxXQS9ERCxDQUdQLFVBQVUsQ0EwRE4sU0FBUyxDQUVMLENBQUMsQUFLSSxNQUFNLEVBcEV2QixBQStEWSxXQS9ERCxDQUdQLFVBQVUsQ0EwRE4sU0FBUyxDQUVMLENBQUMsQUFNSSxPQUFPLENBQUM7RUFDTCxLQUFLLEVBQUMsT0FBUTtDQUNqQjs7QUF2RWpCLEFBMkVJLFdBM0VPLENBMkVQLFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUNqRixVQUFVLEVBQUUsa0JBQUk7RUFBYyxPQUFPLEVBQUUsSUFBSztDQUMvQzs7QUFLTDtnR0FDZ0c7QUFDaEcsQUFBQSxPQUFPLENBQUM7RUFBQyxVQUFVLEVBQUUsS0FBTTtFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUc7O0FBRWxELEFBQUEsV0FBVyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLGNBQWU7RUFBRSxJQUFJLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQ3BHLE9BQU8sRUFBRSxFQUFHO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUN6dkI5QixhQUFhLEVEMHZCUyxJQUFJO0VDenZCMUIscUJBQXFCLEVEeXZCQyxJQUFJO0VDeHZCMUIsa0JBQWtCLEVEd3ZCSSxJQUFJO0VDdnZCMUIsaUJBQWlCLEVEdXZCSyxJQUFJO0VDdHZCMUIsZ0JBQWdCLEVEc3ZCTSxJQUFJO0VDandCMUIsU0FBUyxFRGt3QlUsa0JBQVM7RUNqd0I1QixpQkFBaUIsRURpd0JFLGtCQUFTO0VDaHdCNUIsY0FBYyxFRGd3Qkssa0JBQVM7RUMvdkI1QixhQUFhLEVEK3ZCTSxrQkFBUztFQzl2QjVCLFlBQVksRUQ4dkJPLGtCQUFTO0VDaHVCNUIsa0JBQWtCLEVEaXVCQyxVQUFVO0VDaHVCN0IsZUFBZSxFRGd1QkksVUFBVTtFQy90QjdCLFVBQVUsRUQrdEJTLFVBQVU7Q0FLaEM7O0FBVkQsQUFBQSxXQUFXLEFBTU4sT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsR0FBSTtFQUFFLEdBQUcsRUFBRSxHQUFJO0VBQUUsVUFBVSxFQUFFLElBQUs7RUNyd0J6RyxTQUFTLEVEc3dCYyxrQkFBUztFQ3J3QmhDLGlCQUFpQixFRHF3Qk0sa0JBQVM7RUNwd0JoQyxjQUFjLEVEb3dCUyxrQkFBUztFQ253QmhDLGFBQWEsRURtd0JVLGtCQUFTO0VDbHdCaEMsWUFBWSxFRGt3Qlcsa0JBQVM7Q0FDL0I7O0FBRUwsQUFBQSxhQUFhLENBQUM7RUFDVixRQUFRLEVBQUUsS0FBTTtFQUNoQixHQUFHLEVBQUUsQ0FBRTtFQUNQLElBQUksRUFBRSxDQUFFO0VBQ1IsT0FBTyxFQUFFLE9BQVE7RUFDakIsS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVBQUUsSUFBSztDQUNoQjs7QUFDRCxBQUFBLFdBQVcsQ0FBQztFQUNSLFFBQVEsRUFBRSxRQUFTO0VBQUUsTUFBTSxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsQ0FBRTtDQWtHbkQ7O0FBbkdELEFBRUksV0FGTyxDQUVQLE1BQU0sQ0FBQztFQUFDLFFBQVEsRUFBRSxRQUFTO0NBQUc7O0FBRmxDLEFBR0ksV0FITyxDQUdQLE1BQU0sQ0FBQztFQUNILFdBQVcsRUFBRSxDQUFFO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLFdBQVcsRUFBRSxJQUFLO0VDbnZCNUUsa0JBQWtCLEVEb3ZCSyxVQUFVO0VDbnZCakMsZUFBZSxFRG12QlEsVUFBVTtFQ2x2QmpDLFVBQVUsRURrdkJhLFVBQVU7Q0FhaEM7O0FBbEJMLEFBR0ksV0FITyxDQUdQLE1BQU0sQUFHRCxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDaEYsVUFBVSxFQUFFLGtCQUFJO0VBQWMsT0FBTyxFQUFFLENBQUU7Q0FDNUM7O0FBVFQsQUFHSSxXQUhPLENBR1AsTUFBTSxBQU9ELE1BQU0sQ0FBQztFQUNKLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQzlGLFVBQVUsRUFBRSx1Q0FBRyxDQUFxQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU07Q0FDM0U7O0FBYlQsQUFjUSxXQWRHLENBR1AsTUFBTSxDQVdGLEdBQUcsQ0FBQztFQUNBLEtBQUssRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQzdELFVBQVUsRUFBRSxLQUFNO0VBQUUsZUFBZSxFQUFFLGFBQWM7Q0FDdEQ7O0FBakJULEFBbUJJLFdBbkJPLENBbUJQLFFBQVEsQ0FBQztFQUNMLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFDeEcsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxJQUFLO0NBaUNuRDs7QUF0REwsQUFzQlEsV0F0QkcsQ0FtQlAsUUFBUSxDQUdKLFFBQVEsQ0FBQztFQUNMLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEtBQU07RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxNQUFPO0VDdHdCdkUsa0JBQWtCLEVEdXdCUyxVQUFVO0VDdHdCckMsZUFBZSxFRHN3QlksVUFBVTtFQ3J3QnJDLFVBQVUsRURxd0JpQixVQUFVO0NBQ2hDOztBQXpCVCxBQTBCUSxXQTFCRyxDQW1CUCxRQUFRLENBT0osUUFBUSxDQUFDO0VBQ0wsT0FBTyxFQUFFLFVBQVc7RUFBRSxjQUFjLEVBQUUsTUFBTztDQUNoRDs7QUE1QlQsQUE2QlEsV0E3QkcsQ0FtQlAsUUFBUSxDQVVKLFVBQVUsQ0FBQztFQUNQLFVBQVUsRUFBRSxNQUFPO0VBQUUsY0FBYyxFQUFFLElBQUs7Q0FJN0M7O0FBbENULEFBK0JZLFdBL0JELENBbUJQLFFBQVEsQ0FVSixVQUFVLENBRU4sR0FBRyxDQUFDO0VBQ0EsT0FBTyxFQUFFLFlBQWE7Q0FDekI7O0FBakNiLEFBbUNRLFdBbkNHLENBbUJQLFFBQVEsQ0FnQkosWUFBWSxDQUFDO0VBQ1QsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsY0FBYyxFQUFFLFNBQVU7RUFDcEYsYUFBYSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFdBQVcsRUFBRSxDQUFFO0VBQUUsY0FBYyxFQUFFLEtBQU07RUFDbEY7Ozs7ZUFJRztDQUNOOztBQTNDVCxBQTRDUSxXQTVDRyxDQW1CUCxRQUFRLENBeUJKLFlBQVksQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLEdBQUk7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLGNBQWMsRUFBRSxTQUFVO0VBQ25GLGFBQWEsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FDNUM7O0FBL0NULEFBZ0RRLFdBaERHLENBbUJQLFFBQVEsQ0E2QkosUUFBUSxDQUFDO0VBQ0wsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FDbEY7O0FBbERULEFBbURRLFdBbkRHLENBbUJQLFFBQVEsQ0FnQ0osSUFBSSxDQUFDO0VBQ0QsUUFBUSxFQUFFLFFBQVM7Q0FDdEI7O0FBckRULEFBdURJLFdBdkRPLENBdURQLGFBQWEsQ0FBQztFQUNWLE1BQU0sRUFBRSxJQUFLO0NBQ2hCOztBQXpETCxBQTBESSxXQTFETyxDQTBEUCxXQUFXLENBQUM7RUFBQyxXQUFXLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxJQUFLO0NBQUc7O0FBMURsRCxBQTJEa0IsV0EzRFAsQ0EyRFAsYUFBYSxDQUFDLFlBQVksRUEzRDlCLEFBMkQ4QyxXQTNEbkMsQ0EyRHFCLGFBQWEsQ0FBQyxXQUFXLENBQUM7RUFDbEQsTUFBTSxFQUFFLElBQUs7Q0FTaEI7O0FBckVMLEFBNkRRLFdBN0RHLENBMkRQLGFBQWEsQ0FBQyxZQUFZLENBRXRCLEdBQUcsRUE3RFgsQUE2RFEsV0E3REcsQ0EyRHFCLGFBQWEsQ0FBQyxXQUFXLENBRWpELEdBQUcsQ0FBQztFQUNBLE1BQU0sRUFBRSxLQUFNO0NBTWpCOztBQXBFVCxBQStEWSxXQS9ERCxDQTJEUCxhQUFhLENBQUMsWUFBWSxDQUV0QixHQUFHLENBRUMsR0FBRyxFQS9EZixBQStEWSxXQS9ERCxDQTJEcUIsYUFBYSxDQUFDLFdBQVcsQ0FFakQsR0FBRyxDQUVDLEdBQUcsQ0FBQztFQUNBLE1BQU0sRUFBRSxJQUFLO0NBR2hCOztBQW5FYixBQWlFZ0IsV0FqRUwsQ0EyRFAsYUFBYSxDQUFDLFlBQVksQ0FFdEIsR0FBRyxDQUVDLEdBQUcsQ0FFQyxRQUFRLEVBakV4QixBQWlFZ0IsV0FqRUwsQ0EyRHFCLGFBQWEsQ0FBQyxXQUFXLENBRWpELEdBQUcsQ0FFQyxHQUFHLENBRUMsUUFBUSxDQUFDO0VBQUMsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUFqRTFDLEFBa0VnQixXQWxFTCxDQTJEUCxhQUFhLENBQUMsWUFBWSxDQUV0QixHQUFHLENBRUMsR0FBRyxDQUdDLFFBQVEsRUFsRXhCLEFBa0VnQixXQWxFTCxDQTJEcUIsYUFBYSxDQUFDLFdBQVcsQ0FFakQsR0FBRyxDQUVDLEdBQUcsQ0FHQyxRQUFRLENBQUM7RUFBQyxNQUFNLEVBQUUsSUFBSztDQUFHOztBQWxFMUMsQUFzRUksV0F0RU8sQ0FzRVAsWUFBWSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLGNBQWU7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUN2RixHQUFHLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUFBRSxXQUFXLEVBQUUsU0FBVTtFQ2wxQjNFLGFBQWEsRURtMUJhLEdBQUc7RUNsMUI3QixxQkFBcUIsRURrMUJLLEdBQUc7RUNqMUI3QixrQkFBa0IsRURpMUJRLEdBQUc7RUNoMUI3QixpQkFBaUIsRURnMUJTLEdBQUc7RUMvMEI3QixnQkFBZ0IsRUQrMEJVLEdBQUc7RUN4ekI3QixrQkFBa0IsRUR5ekJLLFVBQVU7RUN4ekJqQyxlQUFlLEVEd3pCUSxVQUFVO0VDdnpCakMsVUFBVSxFRHV6QmEsVUFBVTtFQzMxQmpDLFNBQVMsRUQ0MUJjLGtCQUFTO0VDMzFCaEMsaUJBQWlCLEVEMjFCTSxrQkFBUztFQzExQmhDLGNBQWMsRUQwMUJTLGtCQUFTO0VDejFCaEMsYUFBYSxFRHkxQlUsa0JBQVM7RUN4MUJoQyxZQUFZLEVEdzFCVyxrQkFBUztDQXVCL0I7O0FBbEdMLEFBc0VJLFdBdEVPLENBc0VQLFlBQVksQUFNUCxXQUFXLENBQUM7RUFDVCxJQUFJLEVBQUUsSUFBSztDQVNkOztBQXRGVCxBQXNFSSxXQXRFTyxDQXNFUCxZQUFZLEFBTVAsV0FBVyxBQUVQLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUNoRixVQUFVLEVBQUUsOENBQUcsQ0FBNEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VDeDJCOUYsVUFBVSxFRHkyQnNCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3gyQnBELGtCQUFrQixFRHcyQmMsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDdjJCcEQsZUFBZSxFRHUyQmlCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3QyQnBELGNBQWMsRURzMkJrQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNyMkJwRCxhQUFhLEVEcTJCbUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBQzNDOztBQWxGYixBQXNFSSxXQXRFTyxDQXNFUCxZQUFZLEFBTVAsV0FBVyxBQU9QLE1BQU0sQUFDRixPQUFPLENBQUM7RUFBQyxtQkFBbUIsRUFBQyxVQUFXO0NBQUc7O0FBcEY1RCxBQXNFSSxXQXRFTyxDQXNFUCxZQUFZLEFBaUJQLFdBQVcsQ0FBQztFQUNULEtBQUssRUFBRSxJQUFLO0NBU2Y7O0FBakdULEFBc0VJLFdBdEVPLENBc0VQLFlBQVksQUFpQlAsV0FBVyxBQUVQLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUNoRixVQUFVLEVBQUUsOENBQUcsQ0FBNEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VDbjNCOUYsVUFBVSxFRG8zQnNCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ24zQnBELGtCQUFrQixFRG0zQmMsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbDNCcEQsZUFBZSxFRGszQmlCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2ozQnBELGNBQWMsRURpM0JrQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNoM0JwRCxhQUFhLEVEZzNCbUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBQzNDOztBQTdGYixBQXNFSSxXQXRFTyxDQXNFUCxZQUFZLEFBaUJQLFdBQVcsQUFPUCxNQUFNLEFBQ0YsT0FBTyxDQUFDO0VBQUMsbUJBQW1CLEVBQUMsVUFBVztDQUFHOztBQUs1RCxBQUFBLGVBQWUsQ0FBQztFQUFDLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztDQUFHOztBQUNwRSxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsRUFBRztDQVdwQzs7QUFaRCxBQUVJLGtCQUZjLENBRWQsUUFBUSxDQUFDO0VBQ0wsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUMsQ0FBRTtFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQy9FLFNBQVMsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLE9BQVE7Q0FHcEM7O0FBUEwsQUFLUSxrQkFMVSxDQUVkLFFBQVEsQ0FHSixRQUFRLENBQUM7RUFBQyxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0NBQUc7O0FBTG5ELEFBTVEsa0JBTlUsQ0FFZCxRQUFRLENBSUosUUFBUSxDQUFDO0VBQUMsT0FBTyxFQUFFLFVBQVc7RUFBRSxjQUFjLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxLQUFNO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FBRzs7QUFOckcsQUFRSSxrQkFSYyxDQVFkLE1BQU0sQ0FBQztFQUNILFdBQVcsRUFBRSxDQUFFO0NBRWxCOztBQVhMLEFBVVEsa0JBVlUsQ0FRZCxNQUFNLENBRUYsR0FBRyxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFHNUIsQUFBQSxZQUFZLENBQUM7RUFDVCxRQUFRLEVBQUUsUUFBUztDQStCdEI7O0FBaENELEFBRUksWUFGUSxDQUVSLE1BQU0sQ0FBQztFQUNILFdBQVcsRUFBRSxDQUFFO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FZdkM7O0FBZkwsQUFFSSxZQUZRLENBRVIsTUFBTSxBQUVELE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUNoRixVQUFVLEVBQUUsa0JBQUk7RUFBYyxPQUFPLEVBQUUsQ0FBRTtDQUM1Qzs7QUFQVCxBQUVJLFlBRlEsQ0FFUixNQUFNLEFBTUQsTUFBTSxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFDOUYsVUFBVSxFQUFFLHVDQUFHLENBQXFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUMzRTs7QUFYVCxBQVlRLFlBWkksQ0FFUixNQUFNLENBVUYsR0FBRyxDQUFDO0VBQ0EsS0FBSyxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxDQUFFO0NBQ2pEOztBQWRULEFBZ0JJLFlBaEJRLENBZ0JSLFFBQVEsQ0FBQztFQUNMLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFDeEcsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxJQUFLO0NBYW5EOztBQS9CTCxBQW1CUSxZQW5CSSxDQWdCUixRQUFRLENBR0osUUFBUSxDQUFDO0VBQUMsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxLQUFNO0NBQUc7O0FBbkJsRSxBQW9CUSxZQXBCSSxDQWdCUixRQUFRLENBSUosUUFBUSxDQUFDO0VBQ0wsT0FBTyxFQUFFLFVBQVc7RUFBRSxjQUFjLEVBQUUsTUFBTztDQUNoRDs7QUF0QlQsQUF1QlEsWUF2QkksQ0FnQlIsUUFBUSxDQU9KLFlBQVksQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLE1BQU87RUFBRSxXQUFXLEVBQUUsR0FBSTtFQUFFLGNBQWMsRUFBRSxTQUFVO0VBQ3JGLGFBQWEsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxjQUFjLEVBQUUsS0FBTTtDQUNwRTs7QUExQlQsQUEyQlEsWUEzQkksQ0FnQlIsUUFBUSxDQVdKLFlBQVksQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsR0FBSTtFQUFFLGNBQWMsRUFBRSxTQUFVO0VBQ25GLGFBQWEsRUFBRSxJQUFLO0NBQ3ZCOztBQUdULEFBQUEsYUFBYSxDQUFDO0VBQ1YsT0FBTyxFQUFFLE1BQU87RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLElBQUs7Q0FrQ3hFOztBQW5DRCxBQUVJLGFBRlMsQ0FFVCxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztDQStCdEI7O0FBbENMLEFBS1EsYUFMSyxDQUVULElBQUksQ0FHQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUN4NEJsRCxrQkFBa0IsRUR5NEJTLFVBQVU7RUN4NEJyQyxlQUFlLEVEdzRCWSxVQUFVO0VDdjRCckMsVUFBVSxFRHU0QmlCLFVBQVU7Q0EwQmhDOztBQWpDVCxBQVFZLGFBUkMsQ0FFVCxJQUFJLENBR0EsSUFBSSxDQUdBLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxLQUFNO0VBQUUsV0FBVyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxNQUFPO0VDdDZCOUUsYUFBYSxFRHU2QnFCLElBQUk7RUN0NkJ0QyxxQkFBcUIsRURzNkJhLElBQUk7RUNyNkJ0QyxrQkFBa0IsRURxNkJnQixJQUFJO0VDcDZCdEMsaUJBQWlCLEVEbzZCaUIsSUFBSTtFQ242QnRDLGdCQUFnQixFRG02QmtCLElBQUk7Q0FNN0I7O0FBaEJiLEFBV2dCLGFBWEgsQ0FFVCxJQUFJLENBR0EsSUFBSSxDQUdBLENBQUMsQ0FHRyxHQUFHLENBQUM7RUFDQSxLQUFLLEVBQUUsSUFBSztFQ3o2QjVCLGFBQWEsRUQwNkJ5QixJQUFJO0VDejZCMUMscUJBQXFCLEVEeTZCaUIsSUFBSTtFQ3g2QjFDLGtCQUFrQixFRHc2Qm9CLElBQUk7RUN2NkIxQyxpQkFBaUIsRUR1NkJxQixJQUFJO0VDdDZCMUMsZ0JBQWdCLEVEczZCc0IsSUFBSTtFQ3g3QjFDLFVBQVUsRUR5N0IwQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN4N0J4RCxrQkFBa0IsRUR3N0JrQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN2N0J4RCxlQUFlLEVEdTdCcUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDdDdCeEQsY0FBYyxFRHM3QnNCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3I3QnhELGFBQWEsRURxN0J1QixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7Q0FDM0M7O0FBZmpCLEFBS1EsYUFMSyxDQUVULElBQUksQ0FHQSxJQUFJLEFBWUMsWUFBWSxDQUFDO0VBQ1YsS0FBSyxFQUFFLEdBQUk7Q0FDZDs7QUFuQmIsQUFLUSxhQUxLLENBRVQsSUFBSSxDQUdBLElBQUksQUFlQyxNQUFNLENBQUM7RUFDSixZQUFZLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsQ0FBRTtDQUdwRTs7QUF4QmIsQUFLUSxhQUxLLENBRVQsSUFBSSxDQUdBLElBQUksQUFlQyxNQUFNLEFBRUYsSUFBSSxDQUFDO0VBQUMsR0FBRyxFQUFFLENBQUU7RUFBRSxjQUFjLEVBQUUsSUFBSztDQUFHOztBQXRCeEQsQUFLUSxhQUxLLENBRVQsSUFBSSxDQUdBLElBQUksQUFlQyxNQUFNLEFBR0YsT0FBTyxDQUFDO0VBQUMsTUFBTSxFQUFFLENBQUU7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFHOztBQXZCM0QsQUEwQmdCLGFBMUJILENBRVQsSUFBSSxDQUdBLElBQUksQUFvQkMsTUFBTSxDQUNILENBQUMsQ0FBQztFQ2g3QmQsVUFBVSxFRGk3QnlCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPO0VDaDdCM0Qsa0JBQWtCLEVEZzdCaUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU87RUMvNkIzRCxlQUFlLEVEKzZCb0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU87RUM5NkIzRCxjQUFjLEVEODZCcUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU87RUM3NkIzRCxhQUFhLEVENjZCc0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU87Q0FJOUM7O0FBL0JqQixBQTRCb0IsYUE1QlAsQ0FFVCxJQUFJLENBR0EsSUFBSSxBQW9CQyxNQUFNLENBQ0gsQ0FBQyxDQUVHLEdBQUcsQ0FBQztFQ2g4QnBCLFNBQVMsRURpOEI4QixXQUFLO0VDaDhCNUMsaUJBQWlCLEVEZzhCc0IsV0FBSztFQy83QjVDLGNBQWMsRUQrN0J5QixXQUFLO0VDOTdCNUMsYUFBYSxFRDg3QjBCLFdBQUs7RUM3N0I1QyxZQUFZLEVENjdCMkIsV0FBSztDQUMzQjs7QUFNckIsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLE9BQU8sRUFBRSxNQUFPO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUNsRCxVQUFVLEVBQUMsSUFBSSxDQUFDLDZDQUFHLENBQTJDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQXVDbEY7O0FBekNELEFBR0ksZ0JBSFksQ0FHWixFQUFFLENBQUM7RUFDQyxhQUFhLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLE9BQVE7Q0FVNUQ7O0FBZEwsQUFHSSxnQkFIWSxDQUdaLEVBQUUsQUFFRyxLQUFLLENBQUM7RUFDSCxRQUFRLEVBQUUsUUFBUztDQU90Qjs7QUFiVCxBQVVZLGdCQVZJLENBR1osRUFBRSxBQUVHLEtBQUssQ0FLRixDQUFDLENBQUM7RUFDRSxLQUFLLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0NBQzFGOztBQVpiLEFBZUksZ0JBZlksQ0FlWixJQUFJLENBQUM7RUFBQyxRQUFRLEVBQUUsUUFBUztDQUFHOztBQWZoQyxBQWdCSSxnQkFoQlksQ0FnQlosWUFBWSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVM7RUFBRSxHQUFHLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQy9GLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxXQUFXLEVBQUUsU0FBVTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VDMTlCdEUsU0FBUyxFRDI5QmMsa0JBQVM7RUMxOUJoQyxpQkFBaUIsRUQwOUJNLGtCQUFTO0VDejlCaEMsY0FBYyxFRHk5QlMsa0JBQVM7RUN4OUJoQyxhQUFhLEVEdzlCVSxrQkFBUztFQ3Y5QmhDLFlBQVksRUR1OUJXLGtCQUFTO0NBcUIvQjs7QUF4Q0wsQUFnQkksZ0JBaEJZLENBZ0JaLFlBQVksQUFJUCxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLEVBQUc7Q0FDbkY7O0FBdEJULEFBZ0JJLGdCQWhCWSxDQWdCWixZQUFZLEFBT1AsV0FBVyxDQUFDO0VBQ1QsSUFBSSxFQUFFLEtBQU07RUN6OUJwQixhQUFhLEVEMDlCaUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRztFQ3o5QnpDLHFCQUFxQixFRHk5QlMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRztFQ3g5QnpDLGtCQUFrQixFRHc5QlksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRztFQ3Y5QnpDLGlCQUFpQixFRHU5QmEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRztFQ3Q5QnpDLGdCQUFnQixFRHM5QmMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRztDQUlwQzs7QUE3QlQsQUFnQkksZ0JBaEJZLENBZ0JaLFlBQVksQUFPUCxXQUFXLEFBR1AsT0FBTyxDQUFDO0VBQ0wsVUFBVSxFQUFFLDJDQUFHLENBQXlDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUNsRjs7QUE1QmIsQUFnQkksZ0JBaEJZLENBZ0JaLFlBQVksQUFjUCxXQUFXLENBQUM7RUFDVCxLQUFLLEVBQUUsS0FBTTtFQ2grQnJCLGFBQWEsRURpK0JpQixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDaCtCekMscUJBQXFCLEVEZytCUyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDLzlCekMsa0JBQWtCLEVEKzlCWSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDOTlCekMsaUJBQWlCLEVEODlCYSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDNzlCekMsZ0JBQWdCLEVENjlCYyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0NBSXBDOztBQXBDVCxBQWdCSSxnQkFoQlksQ0FnQlosWUFBWSxBQWNQLFdBQVcsQUFHUCxPQUFPLENBQUM7RUFDTCxVQUFVLEVBQUUsMkNBQUcsQ0FBeUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0NBQ2xGOztBQW5DYixBQWdCSSxnQkFoQlksQ0FnQlosWUFBWSxBQXFCUCxNQUFNLENBQUM7RUFDSixVQUFVLEVBQUUsT0FBUTtDQUN2Qjs7QUFHVCxBQUFBLFFBQVEsQ0FBQztFQUFDLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsQ0FBRTtDQUFHOztBQUM3RixBQUtRLGFBTEssQ0FDVCxJQUFJLENBSUEsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQ3BELEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLGFBQWM7RUFBRSxPQUFPLEVBQUUsSUFBSztFQ3g5QjdELGtCQUFrQixFRHk5QlMsVUFBVTtFQ3g5QnJDLGVBQWUsRUR3OUJZLFVBQVU7RUN2OUJyQyxVQUFVLEVEdTlCaUIsVUFBVTtFQ2xnQ3JDLFVBQVUsRURtZ0NrQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNsZ0NoRCxrQkFBa0IsRURrZ0NVLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2pnQ2hELGVBQWUsRURpZ0NhLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2hnQ2hELGNBQWMsRURnZ0NjLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQy8vQmhELGFBQWEsRUQrL0JlLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztDQTZDM0M7O0FBdERULEFBVVksYUFWQyxDQUNULElBQUksQ0FJQSxJQUFJLENBS0EsT0FBTyxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQ3RGLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFVBQVUsRUFBRSxNQUFPO0VDeC9CbEYsYUFBYSxFRHkvQnFCLEdBQUc7RUN4L0JyQyxxQkFBcUIsRUR3L0JhLEdBQUc7RUN2L0JyQyxrQkFBa0IsRUR1L0JnQixHQUFHO0VDdC9CckMsaUJBQWlCLEVEcy9CaUIsR0FBRztFQ3IvQnJDLGdCQUFnQixFRHEvQmtCLEdBQUc7Q0FPNUI7O0FBcEJiLEFBVVksYUFWQyxDQUNULElBQUksQ0FJQSxJQUFJLENBS0EsT0FBTyxBQUlGLElBQUksQ0FBQztFQUFDLFVBQVUsRUFBRSxPQUFRO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FBRzs7QUFkbEUsQUFVWSxhQVZDLENBQ1QsSUFBSSxDQUlBLElBQUksQ0FLQSxPQUFPLEFBS0YsS0FBSyxDQUFDO0VBQUMsVUFBVSxFQUFFLE9BQVE7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFHOztBQWZuRSxBQVVZLGFBVkMsQ0FDVCxJQUFJLENBSUEsSUFBSSxDQUtBLE9BQU8sQUFNRixLQUFLLENBQUM7RUFDSCxVQUFVLEVBQUUsT0FBUTtFQUFFLFdBQVcsRUFBRSxJQUFLO0NBRTNDOztBQW5CakIsQUFrQm9CLGFBbEJQLENBQ1QsSUFBSSxDQUlBLElBQUksQ0FLQSxPQUFPLEFBTUYsS0FBSyxDQUVGLElBQUksQ0FBQztFQUFDLE9BQU8sRUFBRSxVQUFXO0VBQUUsT0FBTyxFQUFFLEtBQU07Q0FBRzs7QUFsQmxFLEFBcUJZLGFBckJDLENBQ1QsSUFBSSxDQUlBLElBQUksQ0FnQkEsTUFBTSxDQUFDO0VBQ0gsTUFBTSxFQUFFLEtBQU07RUFBRSxXQUFXLEVBQUUsQ0FBRTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFDMUUsUUFBUSxFQUFFLE1BQU87Q0FLcEI7O0FBNUJiLEFBd0JnQixhQXhCSCxDQUNULElBQUksQ0FJQSxJQUFJLENBZ0JBLE1BQU0sQ0FHRixHQUFHLENBQUM7RUFDQSxRQUFRLEVBQUUsUUFBUztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLElBQUs7RUNuaEM1RixVQUFVLEVEb2hDMEIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbmhDeEQsa0JBQWtCLEVEbWhDa0IsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbGhDeEQsZUFBZSxFRGtoQ3FCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2poQ3hELGNBQWMsRURpaENzQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNoaEN4RCxhQUFhLEVEZ2hDdUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBQzNDOztBQTNCakIsQUE2QlksYUE3QkMsQ0FDVCxJQUFJLENBSUEsSUFBSSxDQXdCQSxNQUFNLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUE3QmpGLEFBOEJZLGFBOUJDLENBQ1QsSUFBSSxDQUlBLElBQUksQ0F5QkEsSUFBSSxDQUFDO0VBQ0QsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxPQUFRO0NBQ3hEOztBQWhDYixBQWlDWSxhQWpDQyxDQUNULElBQUksQ0FJQSxJQUFJLENBNEJBLE1BQU0sQ0FBQztFQUNILFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDaEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxPQUFRO0NBQzVEOztBQXBDYixBQXFDWSxhQXJDQyxDQUNULElBQUksQ0FJQSxJQUFJLENBZ0NBLFdBQVcsQ0FBQztFQUNSLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLEdBQUk7RUFDL0YsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBS3pEOztBQTVDYixBQXdDZ0IsYUF4Q0gsQ0FDVCxJQUFJLENBSUEsSUFBSSxDQWdDQSxXQUFXLENBR1AsS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFFLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxZQUFhO0VBQUUsT0FBTyxFQUFFLEtBQU07RUFBRSxXQUFXLEVBQUUsR0FBSTtFQ3JoQzlHLGFBQWEsRURzaEN5QixHQUFHO0VDcmhDekMscUJBQXFCLEVEcWhDaUIsR0FBRztFQ3BoQ3pDLGtCQUFrQixFRG9oQ29CLEdBQUc7RUNuaEN6QyxpQkFBaUIsRURtaENxQixHQUFHO0VDbGhDekMsZ0JBQWdCLEVEa2hDc0IsR0FBRztDQUM1Qjs7QUEzQ2pCLEFBS1EsYUFMSyxDQUNULElBQUksQ0FJQSxJQUFJLEFBd0NDLFVBQVcsQ0FBQSxJQUFJLEVBQUU7RUFBQyxZQUFZLEVBQUUsQ0FBRTtDQUFHOztBQTdDbEQsQUFLUSxhQUxLLENBQ1QsSUFBSSxDQUlBLElBQUksQUF5Q0MsTUFBTSxDQUFDO0VDbmhDaEIsVUFBVSxFRG9oQ3FCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPO0VDbmhDdkQsa0JBQWtCLEVEbWhDYSxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTztFQ2xoQ3ZELGVBQWUsRURraENnQixHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTztFQ2poQ3ZELGNBQWMsRURpaENpQixHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTztFQ2hoQ3ZELGFBQWEsRURnaENrQixHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTztDQU05Qzs7QUFyRGIsQUFpRG9CLGFBakRQLENBQ1QsSUFBSSxDQUlBLElBQUksQUF5Q0MsTUFBTSxDQUVILE1BQU0sQ0FDRixHQUFHLENBQUM7RUNwaUNwQixTQUFTLEVEcWlDOEIsV0FBSztFQ3BpQzVDLGlCQUFpQixFRG9pQ3NCLFdBQUs7RUNuaUM1QyxjQUFjLEVEbWlDeUIsV0FBSztFQ2xpQzVDLGFBQWEsRURraUMwQixXQUFLO0VDamlDNUMsWUFBWSxFRGlpQzJCLFdBQUs7Q0FDM0I7O0FBbkRyQixBQTBEWSxhQTFEQyxBQXdEUixNQUFNLENBQ0gsSUFBSSxDQUNBLElBQUksQ0FBQztFQUNELFVBQVUsRUFBRSxNQUFPO0VBQ25CLEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFDLFVBQVc7RUFBRSxPQUFPLEVBQUUsSUFBSztDQUVwRDs7QUE5RGIsQUE2RGdCLGFBN0RILEFBd0RSLE1BQU0sQ0FDSCxJQUFJLENBQ0EsSUFBSSxDQUdBLElBQUksQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBN0RyQyxBQW1FWSxhQW5FQyxBQWlFUixNQUFNLENBQ0gsSUFBSSxDQUNBLElBQUksQ0FBQztFQUNELGFBQWEsRUFBRSxDQUFFO0NBR3BCOztBQXZFYixBQW1FWSxhQW5FQyxBQWlFUixNQUFNLENBQ0gsSUFBSSxDQUNBLElBQUksQUFFQyxVQUFXLENBQUEsSUFBSSxFQUFFO0VBQUMsWUFBWSxFQUFFLElBQUs7Q0FBRzs7QUFyRXpELEFBbUVZLGFBbkVDLEFBaUVSLE1BQU0sQ0FDSCxJQUFJLENBQ0EsSUFBSSxBQUdDLFdBQVcsQ0FBQztFQUFDLFlBQVksRUFBRSxDQUFFO0NBQUc7O0FBdEVqRCxBQTJFUSxhQTNFSyxDQTBFVCxtQkFBbUIsQ0FDZixZQUFZLENBQUM7RUFDVCxPQUFPLEVBQUUsSUFBSztFQzdoQ3RCLGtCQUFrQixFRDhoQ1MsVUFBVTtFQzdoQ3JDLGVBQWUsRUQ2aENZLFVBQVU7RUM1aENyQyxVQUFVLEVENGhDaUIsVUFBVTtDQUNoQzs7QUE5RVQsQUFrRlksYUFsRkMsQUFnRlIsV0FBVyxDQUNSLElBQUksQ0FDQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsS0FBTTtDQUVoQjs7QUFyRmIsQUFrRlksYUFsRkMsQUFnRlIsV0FBVyxDQUNSLElBQUksQ0FDQSxJQUFJLEFBRUMsVUFBVyxDQUFBLElBQUksRUFBRTtFQUFDLFlBQVksRUFBRSxDQUFFO0NBQUc7O0FBcEZ0RCxBQXdGSSxhQXhGUyxDQXdGVCxTQUFTLENBQUM7RUFDTixRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxZQUFhO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsQ0FBRTtDQXVCMUc7O0FBaEhMLEFBMEZRLGFBMUZLLENBd0ZULFNBQVMsQ0FFTCxLQUFLLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQy9FLE9BQU8sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0NBY3ZEOztBQTFHVCxBQTZGZ0IsYUE3RkgsQ0F3RlQsU0FBUyxDQUVMLEtBQUssR0FHRyxLQUFLLENBQUM7RUFDTixRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0NBQ2hGOztBQS9GYixBQWdHcUIsYUFoR1IsQ0F3RlQsU0FBUyxDQUVMLEtBQUssR0FNRyxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ2IsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxVQUFVLEVBQUUsQ0FBRTtDQUNqRjs7QUFsR2IsQUFtRzhCLGFBbkdqQixDQXdGVCxTQUFTLENBRUwsS0FBSyxBQVNBLFNBQVMsR0FBRyxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ3RCLG1CQUFtQixFQUFFLEdBQUk7Q0FFNUI7O0FBdEdiLEFBdUc2QixhQXZHaEIsQ0F3RlQsU0FBUyxDQUVMLEtBQUssQUFhQSxRQUFRLEdBQUcsS0FBSyxBQUFBLE9BQU8sQ0FBQztFQUNuQixNQUFNLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxpQkFBa0I7RUFBRSxVQUFVLEVBQTZDLDRDQUFDLENBQUMsU0FBUztFQUFFLG1CQUFtQixFQUFFLFlBQWE7Q0FDckw7O0FBekdiLEFBMkdRLGFBM0dLLENBd0ZULFNBQVMsQ0FtQkwsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLEtBQU07RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFDLElBQUs7RUFDOUQsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLE9BQVE7RUFBRSxZQUFZLEVBQUUsSUFBSztDQUNqRjs7QUFHVCxBQUFBLFVBQVUsQ0FBQztFQUNQLFVBQVUsRUFBRSxpQkFBa0I7RUFBRSxPQUFPLEVBQUUsVUFBVztDQUN2RDs7QUFHRCxBQUFBLGNBQWMsQ0FBQztFQUNYLE9BQU8sRUFBRSxNQUFPO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUNsRCxVQUFVLEVBQUMsSUFBSSxDQUFDLHNDQUFHLENBQW9DLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQThEM0U7O0FBaEVELEFBR0ksY0FIVSxDQUdWLEVBQUUsQ0FBQztFQUNDLGFBQWEsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQzlFLGFBQWEsRUFBRSxJQUFLO0NBU3ZCOztBQWRMLEFBTVEsY0FOTSxDQUdWLEVBQUUsQ0FHRSxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQUUsT0FBTyxFQUFFLEtBQU07Q0FNN0Q7O0FBYlQsQUFNUSxjQU5NLENBR1YsRUFBRSxDQUdFLElBQUksQUFFQyxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFDcEYsVUFBVSxFQUFFLE9BQVE7RUNwbkNoQyxTQUFTLEVEcW5Dc0Isa0JBQVM7RUNwbkN4QyxpQkFBaUIsRURvbkNjLGtCQUFTO0VDbm5DeEMsY0FBYyxFRG1uQ2lCLGtCQUFTO0VDbG5DeEMsYUFBYSxFRGtuQ2tCLGtCQUFTO0VDam5DeEMsWUFBWSxFRGluQ21CLGtCQUFTO0NBQy9COztBQVpiLEFBZUksY0FmVSxDQWVWLElBQUksQ0FBQztFQUNELGNBQWMsRUFBRSxJQUFLO0NBOEJ4Qjs7QUE5Q0wsQUFvQlEsY0FwQk0sQ0FlVixJQUFJLENBS0EsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxVQUFXO0VDN2xDeEQsa0JBQWtCLEVEOGxDUyxVQUFVO0VDN2xDckMsZUFBZSxFRDZsQ1ksVUFBVTtFQzVsQ3JDLFVBQVUsRUQ0bENpQixVQUFVO0NBdUJoQzs7QUE3Q1QsQUF1QlksY0F2QkUsQ0FlVixJQUFJLENBS0EsSUFBSSxDQUdBLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VDM25DbEUsYUFBYSxFRDRuQ3FCLEdBQUc7RUMzbkNyQyxxQkFBcUIsRUQybkNhLEdBQUc7RUMxbkNyQyxrQkFBa0IsRUQwbkNnQixHQUFHO0VDem5DckMsaUJBQWlCLEVEeW5DaUIsR0FBRztFQ3huQ3JDLGdCQUFnQixFRHduQ2tCLEdBQUc7Q0FJNUI7O0FBN0JiLEFBMEJnQixjQTFCRixDQWVWLElBQUksQ0FLQSxJQUFJLENBR0EsTUFBTSxDQUdGLEdBQUcsQ0FBQztFQzduQ2hCLGFBQWEsRUQ4bkN5QixHQUFHO0VDN25DekMscUJBQXFCLEVENm5DaUIsR0FBRztFQzVuQ3pDLGtCQUFrQixFRDRuQ29CLEdBQUc7RUMzbkN6QyxpQkFBaUIsRUQybkNxQixHQUFHO0VDMW5DekMsZ0JBQWdCLEVEMG5Dc0IsR0FBRztDQUM1Qjs7QUE1QmpCLEFBOEJZLGNBOUJFLENBZVYsSUFBSSxDQUtBLElBQUksQ0FVQSxJQUFJLENBQUM7RUFDRCxtQkFBbUI7RUFDbkIsT0FBTyxFQUFFLG1CQUFvQjtFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQ2pELEtBQUssRUFBRSxJQUFLO0VDcG9DeEIsYUFBYSxFRHFvQ3FCLEdBQUc7RUNwb0NyQyxxQkFBcUIsRURvb0NhLEdBQUc7RUNub0NyQyxrQkFBa0IsRURtb0NnQixHQUFHO0VDbG9DckMsaUJBQWlCLEVEa29DaUIsR0FBRztFQ2pvQ3JDLGdCQUFnQixFRGlvQ2tCLEdBQUc7RUMxbUNyQyxrQkFBa0IsRUQybUNhLFVBQVU7RUMxbUN6QyxlQUFlLEVEMG1DZ0IsVUFBVTtFQ3ptQ3pDLFVBQVUsRUR5bUNxQixVQUFVO0NBU2hDOztBQTVDYixBQW9DZ0IsY0FwQ0YsQ0FlVixJQUFJLENBS0EsSUFBSSxDQVVBLElBQUksQ0FNQSxPQUFPLENBQUM7RUFDSixhQUFhLEVBQUUsSUFBSztDQUd2Qjs7QUF4Q2pCLEFBc0NvQixjQXRDTixDQWVWLElBQUksQ0FLQSxJQUFJLENBVUEsSUFBSSxDQU1BLE9BQU8sQ0FFSCxLQUFLLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxHQUFJO0NBQUc7O0FBdENuRSxBQXVDb0IsY0F2Q04sQ0FlVixJQUFJLENBS0EsSUFBSSxDQVVBLElBQUksQ0FNQSxPQUFPLENBR0gsU0FBUyxDQUFDO0VBQUMsU0FBUyxFQUFFLElBQUs7Q0FBRzs7QUF2Q2xELEFBeUNnQixjQXpDRixDQWVWLElBQUksQ0FLQSxJQUFJLENBVUEsSUFBSSxDQVdBLElBQUksQ0FBQztFQUNELFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FDdkM7O0FBM0NqQixBQStDSSxjQS9DVSxDQStDVixXQUFXLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsVUFBVSxFQUFFLE1BQU87Q0FlN0Y7O0FBL0RMLEFBaURRLGNBakRNLENBK0NWLFdBQVcsQ0FFUCxFQUFFLENBQUM7RUFDQyxPQUFPLEVBQUUsWUFBYTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQUUsT0FBTyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsS0FBTTtDQVk1RTs7QUE5RFQsQUFtRFksY0FuREUsQ0ErQ1YsV0FBVyxDQUVQLEVBQUUsQ0FFRSxNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEdBQUk7RUFBRSxXQUFXLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLFNBQVU7RUFDdEcsTUFBTSxFQUFFLENBQUU7RUFBQyxNQUFNLEVBQUUsT0FBUTtFQ3hwQ3ZDLGFBQWEsRUR5cENxQixHQUFHO0VDeHBDckMscUJBQXFCLEVEd3BDYSxHQUFHO0VDdnBDckMsa0JBQWtCLEVEdXBDZ0IsR0FBRztFQ3RwQ3JDLGlCQUFpQixFRHNwQ2lCLEdBQUc7RUNycENyQyxnQkFBZ0IsRURxcENrQixHQUFHO0VDdnFDckMsVUFBVSxFRHdxQ3NCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ3ZxQ25ELGtCQUFrQixFRHVxQ2MsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDdHFDbkQsZUFBZSxFRHNxQ2lCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ3JxQ25ELGNBQWMsRURxcUNrQixHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUNwcUNuRCxhQUFhLEVEb3FDbUIsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0NBQzFDOztBQXhEYixBQTBEZ0IsY0ExREYsQ0ErQ1YsV0FBVyxDQUVQLEVBQUUsQUFRRyxhQUFhLENBQ1YsTUFBTSxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsT0FBUTtDQUNyQzs7QUFNakIsQUFBQSxXQUFXLENBQUM7RUFDUixPQUFPLEVBQUUsYUFBYztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsSUFBSztDQWEvRTs7QUFkRCxBQUVJLFdBRk8sQ0FFUCxRQUFRLENBQUM7RUFDTCxVQUFVLEVBQUUsdUNBQUcsQ0FBcUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VBQUUsTUFBTSxFQUFFLEtBQU07Q0FDOUY7O0FBSkwsQUFLSSxXQUxPLENBS1AsTUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFFLE1BQU0sRUFBRSxLQUFNO0VBQUUsR0FBRyxFQUFFLEtBQU07RUFBRSxJQUFJLEVBQUUsS0FBTTtDQUNoRjs7QUFQTCxBQVFJLFdBUk8sQ0FRUCxLQUFLLENBQUM7RUFDRixPQUFPLEVBQUUsZUFBZ0I7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFDaEYsT0FBTyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsSUFBSztDQUVqQzs7QUFaTCxBQVdRLFdBWEcsQ0FRUCxLQUFLLENBR0QsQ0FBQyxDQUFDO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsVUFBVztFQUFFLGNBQWMsRUFBRSxNQUFPO0NBQUc7O0FBWC9FLEFBYVksV0FiRCxDQWFQLElBQUksQUFBQSxJQUFJLEFBQUEsVUFBVSxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFHdkMsQUFDSSxhQURTLENBQ1QsTUFBTSxDQUFDO0VBQUMsYUFBYSxFQUFFLGlCQUFrQjtDQUFHOztBQUVoRCxBQUFBLFlBQVksQ0FBQztFQUNULFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLGFBQWM7Q0FpSi9DOztBQWxKRCxBQUFBLFlBQVksQUFHUCxRQUFRLENBQUM7RUFDTixPQUFPLEVBQUUsYUFBYztDQUsxQjs7QUFUTCxBQUFBLFlBQVksQUFHUCxRQUFRLEFBRUosT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQ25GLFVBQVUsRUFBRSxPQUFRO0NBQ3ZCOztBQVJULEFBQUEsWUFBWSxBQVVQLE1BQU0sQUFDRixPQUFPLENBQUM7RUFBQyxPQUFPLEVBQUMsSUFBSztDQUFHOztBQVhsQyxBQWFJLFlBYlEsQ0FhUixDQUFDLENBQUM7RUFDRSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxHQUFJO0VBQ2pHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxVQUFXO0NBQzlFOztBQWhCTCxBQWlCSSxZQWpCUSxDQWlCUixFQUFFLENBQUM7RUFDQyxNQUFNLEVBQUUsVUFBVztDQU10Qjs7QUF4QkwsQUFtQlEsWUFuQkksQ0FpQlIsRUFBRSxDQUVFLEVBQUUsQ0FBQztFQUNDLFVBQVUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFBRSxPQUFPLEVBQUUsU0FBVTtFQUMzRCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxHQUFJO0VBQ2pHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUN6RDs7QUF2QlQsQUF5QkksWUF6QlEsQ0F5QlIsRUFBRSxDQUFDO0VBQ0MsTUFBTSxFQUFFLFVBQVc7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBTXREOztBQWhDTCxBQTJCUSxZQTNCSSxDQXlCUixFQUFFLENBRUUsRUFBRSxDQUFDO0VBQ0MsVUFBVSxFQUFFLE9BQVE7RUFBRSxNQUFNLEVBQUUsVUFBVztFQUFFLE9BQU8sRUFBRSxTQUFVO0VBQzlELFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLEdBQUk7RUFDakcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQ3pEOztBQS9CVCxBQWlDSSxZQWpDUSxDQWlDUixPQUFPLENBQUM7RUFDSixVQUFVLEVBQUUsS0FBTTtDQXFCckI7O0FBdkRMLEFBb0NZLFlBcENBLENBaUNSLE9BQU8sQ0FFSCxFQUFFLENBQ0UsRUFBRSxDQUFDO0VBQ0MsT0FBTyxFQUFFLFlBQWE7RUFBRSxZQUFZLEVBQUUsR0FBSTtFQUFFLGFBQWEsRUFBRSxHQUFJO0VBQUUsV0FBVyxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsQ0FBRTtDQWFoRzs7QUFsRGIsQUFzQ2dCLFlBdENKLENBaUNSLE9BQU8sQ0FFSCxFQUFFLENBQ0UsRUFBRSxDQUVFLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxLQUFNO0VBQ2YsS0FBSyxFQUFFLElBQUs7RUFBQyxNQUFNLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxPQUFRO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFDbkUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDN0UsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxPQUFRO0VDbHVDM0UsYUFBYSxFRG11Q3lCLEdBQUc7RUNsdUN6QyxxQkFBcUIsRURrdUNpQixHQUFHO0VDanVDekMsa0JBQWtCLEVEaXVDb0IsR0FBRztFQ2h1Q3pDLGlCQUFpQixFRGd1Q3FCLEdBQUc7RUMvdEN6QyxnQkFBZ0IsRUQrdENzQixHQUFHO0NBSzVCOztBQWhEakIsQUFzQ2dCLFlBdENKLENBaUNSLE9BQU8sQ0FFSCxFQUFFLENBQ0UsRUFBRSxDQUVFLENBQUMsQUFNSSxNQUFNLEVBNUMzQixBQXNDZ0IsWUF0Q0osQ0FpQ1IsT0FBTyxDQUVILEVBQUUsQ0FDRSxFQUFFLENBRUUsQ0FBQyxBQU9JLE9BQU8sQ0FBQztFQUNMLFVBQVUsRUFBQyxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FDcEM7O0FBL0NyQixBQW9DWSxZQXBDQSxDQWlDUixPQUFPLENBRUgsRUFBRSxDQUNFLEVBQUUsQUFhRyxXQUFXLENBQUM7RUFBQyxZQUFZLEVBQUUsQ0FBRTtDQUFHOztBQWpEakQsQUFpQ0ksWUFqQ1EsQ0FpQ1IsT0FBTyxBQW1CRixPQUFPLENBQUM7RUFDTCxVQUFVLEVBQUUsTUFBTztDQUN0Qjs7QUF0RFQsQUF3REksWUF4RFEsQ0F3RFIsUUFBUSxDQUFDO0VBQ0wsVUFBVSxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsaUJBQWtCO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0E0QjdFOztBQXJGTCxBQTBEUSxZQTFESSxDQXdEUixRQUFRLENBRUosRUFBRSxDQUFDO0VBQ0MsTUFBTSxFQUFFLENBQUU7Q0F3QmI7O0FBbkZULEFBNERZLFlBNURBLENBd0RSLFFBQVEsQ0FFSixFQUFFLENBRUUsRUFBRSxDQUFDO0VBQ0MsT0FBTyxFQUFFLFlBQWE7RUFBRSxNQUFNLEVBQUUsVUFBVztFQUFFLE9BQU8sRUFBRSxDQUFFO0NBcUIzRDs7QUFsRmIsQUE4RGdCLFlBOURKLENBd0RSLFFBQVEsQ0FFSixFQUFFLENBRUUsRUFBRSxDQUVFLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLFNBQVU7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUN6RCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQU81RTs7QUF4RWpCLEFBOERnQixZQTlESixDQXdEUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQ0FFRSxDQUFDLEFBSUksT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQ3BGLFVBQVUsRUFBRSxPQUFRO0VDbndDeEMsU0FBUyxFRG93QzhCLGtCQUFTO0VDbndDaEQsaUJBQWlCLEVEbXdDc0Isa0JBQVM7RUNsd0NoRCxjQUFjLEVEa3dDeUIsa0JBQVM7RUNqd0NoRCxhQUFhLEVEaXdDMEIsa0JBQVM7RUNod0NoRCxZQUFZLEVEZ3dDMkIsa0JBQVM7RUMzd0NoRCxVQUFVLEVENHdDOEIsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDM3dDM0Qsa0JBQWtCLEVEMndDc0IsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDMXdDM0QsZUFBZSxFRDB3Q3lCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ3p3QzNELGNBQWMsRUR5d0MwQixHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUN4d0MzRCxhQUFhLEVEd3dDMkIsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0NBQzFDOztBQXZFckIsQUEyRW9CLFlBM0VSLENBd0RSLFFBQVEsQ0FFSixFQUFFLENBRUUsRUFBRSxBQWFHLE1BQU0sQ0FFSCxDQUFDLEVBM0VyQixBQTJFb0IsWUEzRVIsQ0F3RFIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLEFBY0csT0FBTyxDQUNKLENBQUMsQ0FBQztFQUNFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLE9BQVE7Q0FJdEM7O0FBaEZyQixBQTJFb0IsWUEzRVIsQ0F3RFIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLEFBYUcsTUFBTSxDQUVILENBQUMsQUFFSSxPQUFPLEVBN0VoQyxBQTJFb0IsWUEzRVIsQ0F3RFIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLEFBY0csT0FBTyxDQUNKLENBQUMsQUFFSSxPQUFPLENBQUM7RUFDTCxLQUFLLEVBQUMsSUFBSztDQUNkOztBQS9FekIsQUFvRlEsWUFwRkksQ0F3RFIsUUFBUSxDQTRCSixhQUFhLENBQUM7RUFBQyxPQUFPLEVBQUUsSUFBSztDQUFHOztBQXBGeEMsQUFzRkksWUF0RlEsQ0FzRlIsZ0JBQWdCLENBQUM7RUFBQyxjQUFjLEVBQUUsSUFBSztDQUFHOztBQXRGOUMsQUF1RkksWUF2RlEsQ0F1RlIsUUFBUSxDQUFDO0VBQ0wsYUFBYSxFQUFFLGlCQUFrQjtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBeUQxRDs7QUFqSkwsQUF5RlEsWUF6RkksQ0F1RlIsUUFBUSxDQUVKLEVBQUUsQ0FBQztFQUNDLE1BQU0sRUFBRSxDQUFFO0NBNENiOztBQXRJVCxBQTJGWSxZQTNGQSxDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQ0FBQztFQUNDLFVBQVUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxZQUFhO0NBeUM5RTs7QUFySWIsQUE2RmdCLFlBN0ZKLENBdUZSLFFBQVEsQ0FFSixFQUFFLENBRUUsRUFBRSxDQUVFLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLGVBQWdCO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDL0QsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNoRyxjQUFjLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0NBc0J2Qzs7QUF0SGpCLEFBaUdvQixZQWpHUixDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQ0FFRSxDQUFDLENBSUcsSUFBSSxDQUFDO0VBQ0QsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsY0FBZTtFQ3h5Q2pFLFVBQVUsRUR5eUM4QixHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUN4eUMzRCxrQkFBa0IsRUR3eUNzQixHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUN2eUMzRCxlQUFlLEVEdXlDeUIsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDdHlDM0QsY0FBYyxFRHN5QzBCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ3J5QzNELGFBQWEsRURxeUMyQixHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7Q0FLMUM7O0FBeEdyQixBQWlHb0IsWUFqR1IsQ0F1RlIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLENBRUUsQ0FBQyxDQUlHLElBQUksQUFHQyxLQUFLLENBQUM7RUFBQyxVQUFVLEVBQUUsb0NBQUcsQ0FBa0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNO0NBQUc7O0FBcEd0RyxBQWlHb0IsWUFqR1IsQ0F1RlIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLENBRUUsQ0FBQyxDQUlHLElBQUksQUFJQyxPQUFPLENBQUM7RUFBQyxVQUFVLEVBQUUsNENBQUcsQ0FBMEMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQUc7O0FBckczRyxBQWlHb0IsWUFqR1IsQ0F1RlIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLENBRUUsQ0FBQyxDQUlHLElBQUksQUFLQyxRQUFRLENBQUM7RUFBQyxVQUFVLEVBQUUscUNBQUcsQ0FBbUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNO0NBQUc7O0FBdEcxRyxBQTZGZ0IsWUE3RkosQ0F1RlIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLENBRUUsQ0FBQyxBQVlJLE1BQU0sQ0FBQztFQUNKLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFDaEYsSUFBSSxFQUFFLEdBQUk7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQzF5QzFDLFNBQVMsRUQyeUM4QixrQkFBUztFQzF5Q2hELGlCQUFpQixFRDB5Q3NCLGtCQUFTO0VDenlDaEQsY0FBYyxFRHl5Q3lCLGtCQUFTO0VDeHlDaEQsYUFBYSxFRHd5QzBCLGtCQUFTO0VDdnlDaEQsWUFBWSxFRHV5QzJCLGtCQUFTO0VDbHpDaEQsVUFBVSxFRG16QzhCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ2x6QzNELGtCQUFrQixFRGt6Q3NCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQ2p6QzNELGVBQWUsRURpekN5QixHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUNoekMzRCxjQUFjLEVEZ3pDMEIsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDL3lDM0QsYUFBYSxFRCt5QzJCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztDQUMxQzs7QUE5R3JCLEFBK0d3QixZQS9HWixDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQ0FFRSxDQUFDLENBa0JHLElBQUksQUFBQSxNQUFNLENBQUM7RUFDUCxPQUFPLEVBQUUsWUFBYTtFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsT0FBUTtFQUM3RSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUM3RSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFDOUQsTUFBTSxFQUFDLFlBQWE7RUFBRSxjQUFjLEVBQUUsR0FBSTtFQzN5QzlELGFBQWEsRUQ0eUM2QixHQUFHO0VDM3lDN0MscUJBQXFCLEVEMnlDcUIsR0FBRztFQzF5QzdDLGtCQUFrQixFRDB5Q3dCLEdBQUc7RUN6eUM3QyxpQkFBaUIsRUR5eUN5QixHQUFHO0VDeHlDN0MsZ0JBQWdCLEVEd3lDMEIsR0FBRztDQUM1Qjs7QUFySHJCLEFBeUhvQixZQXpIUixDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQUE0QkcsTUFBTSxDQUVILENBQUMsRUF6SHJCLEFBeUhvQixZQXpIUixDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQUE2QkcsT0FBTyxDQUNKLENBQUMsQ0FBQztFQUNFLEtBQUssRUFBRSxPQUFRO0NBU2xCOztBQW5JckIsQUEySHdCLFlBM0haLENBdUZSLFFBQVEsQ0FFSixFQUFFLENBRUUsRUFBRSxBQTRCRyxNQUFNLENBRUgsQ0FBQyxDQUVHLElBQUksQUFDQyxLQUFLLEVBNUhsQyxBQTJId0IsWUEzSFosQ0F1RlIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLEFBNkJHLE9BQU8sQ0FDSixDQUFDLENBRUcsSUFBSSxBQUNDLEtBQUssQ0FBQztFQUFDLFVBQVUsRUFBRSx3Q0FBRyxDQUFzQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU07Q0FBRzs7QUE1SDlHLEFBMkh3QixZQTNIWixDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQUE0QkcsTUFBTSxDQUVILENBQUMsQ0FFRyxJQUFJLEFBRUMsT0FBTyxFQTdIcEMsQUEySHdCLFlBM0haLENBdUZSLFFBQVEsQ0FFSixFQUFFLENBRUUsRUFBRSxBQTZCRyxPQUFPLENBQ0osQ0FBQyxDQUVHLElBQUksQUFFQyxPQUFPLENBQUM7RUFBQyxVQUFVLEVBQUUsZ0RBQUcsQ0FBOEMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQUc7O0FBN0huSCxBQTJId0IsWUEzSFosQ0F1RlIsUUFBUSxDQUVKLEVBQUUsQ0FFRSxFQUFFLEFBNEJHLE1BQU0sQ0FFSCxDQUFDLENBRUcsSUFBSSxBQUdDLFFBQVEsRUE5SHJDLEFBMkh3QixZQTNIWixDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQUE2QkcsT0FBTyxDQUNKLENBQUMsQ0FFRyxJQUFJLEFBR0MsUUFBUSxDQUFDO0VBQUMsVUFBVSxFQUFFLHlDQUFHLENBQXVDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTTtDQUFHOztBQTlIbEgsQUF5SG9CLFlBekhSLENBdUZSLFFBQVEsQ0FFSixFQUFFLENBRUUsRUFBRSxBQTRCRyxNQUFNLENBRUgsQ0FBQyxBQU9JLE1BQU0sRUFoSS9CLEFBeUhvQixZQXpIUixDQXVGUixRQUFRLENBRUosRUFBRSxDQUVFLEVBQUUsQUE2QkcsT0FBTyxDQUNKLENBQUMsQUFPSSxNQUFNLENBQUM7RUFDSixLQUFLLEVBQUUsSUFBSztDQUNmOztBQWxJekIsQUEwSW9CLFlBMUlSLENBdUZSLFFBQVEsQUFnREgsR0FBRyxDQUNBLEVBQUUsQ0FDRSxFQUFFLENBQ0UsQ0FBQyxBQUNJLE1BQU0sQ0FBQztFQUFDLE1BQU0sRUFBQyxHQUFJO0NBQUc7O0FBM0kvQyxBQWdKUSxZQWhKSSxDQXVGUixRQUFRLENBeURKLGFBQWEsQ0FBQztFQUFDLE9BQU8sRUFBRSxJQUFLO0NBQUc7O0FBR3hDLEFBQUEsU0FBUyxDQUFDO0VBQ04sUUFBUSxFQUFFLFFBQVM7RUFBRSxNQUFNLEVBQUUsWUFBYTtFQUFFLFVBQVUsRUFBRSxJQUFLO0NBNEJoRTs7QUE3QkQsQUFFSSxTQUZLLENBRUwsS0FBSyxDQUFDO0VBQ0YsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUMvRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFVBQVUsRUFBRSxJQUFLO0NBbUJqQzs7QUF2QkwsQUFLWSxTQUxILENBRUwsS0FBSyxHQUdHLEtBQUssQ0FBQztFQUNOLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE1BQU0sRUFBRSxPQUFRO0VBQ2hCLE9BQU8sRUFBRSxDQUFFO0NBQ2Q7O0FBVFQsQUFVaUIsU0FWUixDQUVMLEtBQUssR0FRRyxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ2IsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxHQUFHLEVBQUUsR0FBSTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQ25GLFVBQVUsRUFBRSw0Q0FBRyxDQUEwQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7RUFDdEUsZUFBZSxFQUFFLFNBQVU7RUN4MUNuQyxhQUFhLEVEeTFDaUIsR0FBRztFQ3gxQ2pDLHFCQUFxQixFRHcxQ1MsR0FBRztFQ3YxQ2pDLGtCQUFrQixFRHUxQ1ksR0FBRztFQ3QxQ2pDLGlCQUFpQixFRHMxQ2EsR0FBRztFQ3IxQ2pDLGdCQUFnQixFRHExQ2MsR0FBRztDQUM1Qjs7QUFmVCxBQWdCMEIsU0FoQmpCLENBRUwsS0FBSyxBQWNBLFNBQVMsR0FBRyxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ3RCLG1CQUFtQixFQUFFLEdBQUk7Q0FFNUI7O0FBbkJULEFBb0J5QixTQXBCaEIsQ0FFTCxLQUFLLEFBa0JBLFFBQVEsR0FBRyxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ3JCLG1CQUFtQixFQUFFLFFBQVM7Q0FDakM7O0FBdEJULEFBd0JJLFNBeEJLLENBd0JMLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxLQUFNO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBQyxJQUFLO0VBQzlELFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxPQUFRO0VBQUUsWUFBWSxFQUFFLElBQUs7Q0FDakY7O0FBRUwsQUFBQSxXQUFXLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUMvRCxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VDMzJDL0MsYUFBYSxFRDQyQ1MsR0FBRztFQzMyQ3pCLHFCQUFxQixFRDIyQ0MsR0FBRztFQzEyQ3pCLGtCQUFrQixFRDAyQ0ksR0FBRztFQ3oyQ3pCLGlCQUFpQixFRHkyQ0ssR0FBRztFQ3gyQ3pCLGdCQUFnQixFRHcyQ00sR0FBRztDQTZCNUI7O0FBaENELEFBSUksV0FKTyxDQUlQLEtBQUssQ0FBQztFQUNGLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUFDL0UsT0FBTyxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFDakQsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQ3IxQzNCLGtCQUFrQixFRHMxQ0ssVUFBVTtFQ3IxQ2pDLGVBQWUsRURxMUNRLFVBQVU7RUNwMUNqQyxVQUFVLEVEbzFDYSxVQUFVO0NBbUJoQzs7QUEzQkwsQUFTWSxXQVRELENBSVAsS0FBSyxHQUtHLEtBQUssQ0FBQztFQUNOLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDbkUsTUFBTSxFQUFFLE9BQVE7RUFDaEIsT0FBTyxFQUFFLENBQUU7Q0FDZDs7QUFiVCxBQWNpQixXQWROLENBSVAsS0FBSyxHQVVHLEtBQUssQUFBQSxPQUFPLENBQUM7RUFDYixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFDakYsVUFBVSxFQUFFLDBDQUFHLENBQXdDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztFQUNwRSxlQUFlLEVBQUUsU0FBVTtFQzEzQ25DLGFBQWEsRUQyM0NpQixHQUFHO0VDMTNDakMscUJBQXFCLEVEMDNDUyxHQUFHO0VDejNDakMsa0JBQWtCLEVEeTNDWSxHQUFHO0VDeDNDakMsaUJBQWlCLEVEdzNDYSxHQUFHO0VDdjNDakMsZ0JBQWdCLEVEdTNDYyxHQUFHO0NBQzVCOztBQW5CVCxBQW9CMEIsV0FwQmYsQ0FJUCxLQUFLLEFBZ0JBLFNBQVMsR0FBRyxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ3RCLG1CQUFtQixFQUFFLEdBQUk7Q0FFNUI7O0FBdkJULEFBd0J5QixXQXhCZCxDQUlQLEtBQUssQUFvQkEsUUFBUSxHQUFHLEtBQUssQUFBQSxPQUFPLENBQUM7RUFDckIsbUJBQW1CLEVBQUUsUUFBUztDQUNqQzs7QUExQlQsQUE0QkksV0E1Qk8sQ0E0QlAsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLEtBQU07RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUMsSUFBSztFQUNwRixXQUFXLEVBQUUsSUFBSztDQUNyQjs7QUFFTCxBQUFBLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsYUFBYztFQ2gzQ3BELGtCQUFrQixFRGkzQ0MsVUFBVTtFQ2gzQzdCLGVBQWUsRURnM0NJLFVBQVU7RUMvMkM3QixVQUFVLEVEKzJDUyxVQUFVO0NBaUtoQzs7QUFuS0QsQUFHSSxNQUhFLENBR0YsYUFBYSxDQUFDO0VBQ1YsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsR0FBRyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUMxRSxPQUFPLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxLQUFNO0NBZXBDOztBQXBCTCxBQU1RLE1BTkYsQ0FHRixhQUFhLENBR1QsSUFBSSxDQUFDO0VBQ0QsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsVUFBVSxFQUFFLE9BQVE7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQ2o1Q3ZGLGFBQWEsRURrNUNpQixHQUFHO0VDajVDakMscUJBQXFCLEVEaTVDUyxHQUFHO0VDaDVDakMsa0JBQWtCLEVEZzVDWSxHQUFHO0VDLzRDakMsaUJBQWlCLEVEKzRDYSxHQUFHO0VDOTRDakMsZ0JBQWdCLEVEODRDYyxHQUFHO0NBVzVCOztBQW5CVCxBQU1RLE1BTkYsQ0FHRixhQUFhLENBR1QsSUFBSSxBQUdDLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBQztFQUNWLEdBQUcsRUFBQyxDQUFFO0VDbjJDbEIsd0JBQXdCLEVEbzJDYSxJQUFJLENBQUMsTUFBTTtFQ24yQ2hELHFCQUFxQixFRG0yQ2dCLElBQUksQ0FBQyxNQUFNO0VDbDJDaEQsbUJBQW1CLEVEazJDa0IsSUFBSSxDQUFDLE1BQU07RUNqMkNoRCxnQkFBZ0IsRURpMkNxQixJQUFJLENBQUMsTUFBTTtFQzU1Q2hELFNBQVMsRUQ2NUNzQixhQUFNO0VDNTVDckMsaUJBQWlCLEVENDVDYyxhQUFNO0VDMzVDckMsY0FBYyxFRDI1Q2lCLGFBQU07RUMxNUNyQyxhQUFhLEVEMDVDa0IsYUFBTTtFQ3o1Q3JDLFlBQVksRUR5NUNtQixhQUFNO0NBQzVCOztBQWJiLEFBTVEsTUFORixDQUdGLGFBQWEsQ0FHVCxJQUFJLEFBUUMsVUFBVyxDQUFBLEFBQUEsQ0FBQyxFQUFDO0VBQ1YsR0FBRyxFQUFDLElBQUs7RUN4MkNyQix3QkFBd0IsRUR5MkNhLElBQUksQ0FBQyxNQUFNO0VDeDJDaEQscUJBQXFCLEVEdzJDZ0IsSUFBSSxDQUFDLE1BQU07RUN2MkNoRCxtQkFBbUIsRUR1MkNrQixJQUFJLENBQUMsTUFBTTtFQ3QyQ2hELGdCQUFnQixFRHMyQ3FCLElBQUksQ0FBQyxNQUFNO0VDajZDaEQsU0FBUyxFRGs2Q3NCLGNBQU07RUNqNkNyQyxpQkFBaUIsRURpNkNjLGNBQU07RUNoNkNyQyxjQUFjLEVEZzZDaUIsY0FBTTtFQy81Q3JDLGFBQWEsRUQrNUNrQixjQUFNO0VDOTVDckMsWUFBWSxFRDg1Q21CLGNBQU07Q0FDNUI7O0FBbEJiLEFBcUJJLE1BckJFLENBcUJGLGVBQWUsQ0FBQztFQUNaLGNBQWMsRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsaUJBQWtCO0NBNElqRjs7QUFsS0wsQUF1QlEsTUF2QkYsQ0FxQkYsZUFBZSxDQUVYLGFBQWEsQ0FBQztFQUNWLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDaEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxPQUFRO0VBQUUsYUFBYSxFQUFFLEdBQUk7Q0FDakY7O0FBMUJULEFBMkJRLE1BM0JGLENBcUJGLGVBQWUsQ0FNWCxtQkFBbUIsQ0FBQztFQUNoQixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2hHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsT0FBUTtFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQy9FLE9BQU8sRUFBRSxJQUFLO0NBQ2pCOztBQS9CVCxBQWlDWSxNQWpDTixDQXFCRixlQUFlLENBV1gsWUFBWSxDQUNSLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxLQUFNO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDcEMsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLE9BQVE7RUFBRSxPQUFPLEVBQUUsa0JBQW1CO0NBUzFGOztBQTdDYixBQXFDZ0IsTUFyQ1YsQ0FxQkYsZUFBZSxDQVdYLFlBQVksQ0FDUixDQUFDLENBSUcsTUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVM7RUFBRSxHQUFHLEVBQUUsR0FBSTtFQUFFLEtBQUssRUFBRSxDQUFFO0VBQ3pDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsS0FBTTtFQUFDLEtBQUssRUFBRSxPQUFRO0NBQzdEOztBQXpDakIsQUFpQ1ksTUFqQ04sQ0FxQkYsZUFBZSxDQVdYLFlBQVksQ0FDUixDQUFDLEFBU0ksTUFBTSxDQUFDO0VBQ0osS0FBSyxFQUFFLE9BQVE7RUFBRSxXQUFXLEVBQUUsR0FBSTtDQUNyQzs7QUE1Q2pCLEFBK0NRLE1BL0NGLENBcUJGLGVBQWUsQ0EwQlgsYUFBYSxDQUFDO0VBQUMsV0FBVyxFQUFFLEdBQUk7Q0FBRzs7QUEvQzNDLEFBZ0RRLE1BaERGLENBcUJGLGVBQWUsQ0EyQlgsY0FBYyxDQUFDO0VBQ1gsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxjQUFlO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUNwN0N0RixVQUFVLEVEcTdDaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUNwN0M3QyxrQkFBa0IsRURvN0NTLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLO0VDbjdDN0MsZUFBZSxFRG03Q1ksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUNsN0M3QyxjQUFjLEVEazdDYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztFQ2o3QzdDLGFBQWEsRURpN0NjLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLO0VDNTdDN0MsYUFBYSxFRDY3Q2lCLEdBQUc7RUM1N0NqQyxxQkFBcUIsRUQ0N0NTLEdBQUc7RUMzN0NqQyxrQkFBa0IsRUQyN0NZLEdBQUc7RUMxN0NqQyxpQkFBaUIsRUQwN0NhLEdBQUc7RUN6N0NqQyxnQkFBZ0IsRUR5N0NjLEdBQUc7RUNsNkNqQyxrQkFBa0IsRURtNkNTLFVBQVU7RUNsNkNyQyxlQUFlLEVEazZDWSxVQUFVO0VDajZDckMsVUFBVSxFRGk2Q2lCLFVBQVU7Q0FtQmhDOztBQXZFVCxBQ3IzQ0ksTURxM0NFLENBcUJGLGVBQWUsQ0EyQlgsY0FBYyxDQ3I2Q2xCLDJCQUEyQixDQUFDO0VEMDZDQyxLQUFLLEVBQUUsSUFBSztDQzE2Q0Y7O0FEcTNDM0MsQUNwM0NJLE1EbzNDRSxDQXFCRixlQUFlLENBMkJYLGNBQWMsQ0NwNkNsQixpQkFBaUIsQ0FBVztFRHk2Q0MsS0FBSyxFQUFFLElBQUs7Q0N6NkNGOztBRG8zQzNDLEFDbjNDSSxNRG0zQ0UsQ0FxQkYsZUFBZSxDQTJCWCxjQUFjLENDbjZDbEIsa0JBQWtCLENBQVU7RUR3NkNDLEtBQUssRUFBRSxJQUFLO0NDeDZDRjs7QURtM0MzQyxBQ2wzQ0ksTURrM0NFLENBcUJGLGVBQWUsQ0EyQlgsY0FBYyxDQ2w2Q2xCLHNCQUFzQixDQUFNO0VEdTZDQyxLQUFLLEVBQUUsSUFBSztDQ3Y2Q0Y7O0FEazNDM0MsQUFzRFksTUF0RE4sQ0FxQkYsZUFBZSxDQTJCWCxjQUFjLENBTVYsSUFBSSxDQUFDO0VBQUMsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUF0RGxDLEFBdUQ2QixNQXZEdkIsQ0FxQkYsZUFBZSxDQTJCWCxjQUFjLENBT1YsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxFQUFZO0VBQ2QsT0FBTyxFQUFFLEtBQU07RUFDZixVQUFVLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLGFBQWM7RUFDdkcsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxPQUFRO0VDMTZDckUsa0JBQWtCLEVEMjZDYSxVQUFVO0VDMTZDekMsZUFBZSxFRDA2Q2dCLFVBQVU7RUN6NkN6QyxVQUFVLEVEeTZDcUIsVUFBVTtDQUNoQzs7QUE3RGIsQUE4RCtCLE1BOUR6QixDQXFCRixlQUFlLENBMkJYLGNBQWMsQ0FjVixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVBQWU7RUFDakIsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLFdBQVcsRUFBRSxTQUFVO0VBQzdGLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUN6QyxVQUFVLEVBQUUsOENBQUcsQ0FBNEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VDejlDOUYsVUFBVSxFRDA5Q3NCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3o5Q3BELGtCQUFrQixFRHk5Q2MsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDeDlDcEQsZUFBZSxFRHc5Q2lCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3Y5Q3BELGNBQWMsRUR1OUNrQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN0OUNwRCxhQUFhLEVEczlDbUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBSTNDOztBQXRFYixBQThEK0IsTUE5RHpCLENBcUJGLGVBQWUsQ0EyQlgsY0FBYyxDQWNWLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FLRCxNQUFNLENBQUE7RUFDSCxPQUFPLEVBQUMsR0FBSTtDQUNmOztBQXJFakIsQUE0RVksTUE1RU4sQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBQ04sYUFBYSxDQUFDO0VBQUMsV0FBVyxFQUFFLEdBQUk7Q0FBRzs7QUE1RS9DLEFBNkVZLE1BN0VOLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQUVOLE1BQU0sQ0FBQztFQUNILGFBQWEsRUFBRSxJQUFLO0NBc0N2Qjs7QUFwSGIsQUFnRmdCLE1BaEZWLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQUVOLE1BQU0sQ0FHRixZQUFZLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsWUFBWSxFQUFFLEVBQUc7RUFBRSxRQUFRLEVBQUUsUUFBUztDQWtDcEU7O0FBbkhqQixBQWdGZ0IsTUFoRlYsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBRU4sTUFBTSxDQUdGLFlBQVksQUFFUCxXQUFXLENBQUM7RUFBQyxZQUFZLEVBQUMsQ0FBRTtDQUFHOztBQWxGcEQsQUFtRm9CLE1BbkZkLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQUVOLE1BQU0sQ0FHRixZQUFZLENBR1IsS0FBSyxDQUFDO0VBQ0YsT0FBTyxFQUFFLEtBQU07RUFBRSxhQUFhLEVBQUUsR0FBSTtFQUNwQyxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2xHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsT0FBUTtDQUM1RDs7QUF2RnJCLEFBd0ZxQyxNQXhGL0IsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBRU4sTUFBTSxDQUdGLFlBQVksQ0FRUixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYLEVBQWE7RUFDZixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUMsY0FBZTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQzlFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLEtBQU07RUFBQyxLQUFLLEVBQUUsT0FBUTtFQUFFLE9BQU8sRUFBRSxZQUFhO0VDLzlDdEcsVUFBVSxFRGcrQzZCLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLO0VDLzlDekQsa0JBQWtCLEVEKzlDcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUM5OUN6RCxlQUFlLEVEODlDd0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUM3OUN6RCxjQUFjLEVENjlDeUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUM1OUN6RCxhQUFhLEVENDlDMEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUN2K0N6RCxhQUFhLEVEdytDNkIsR0FBRztFQ3YrQzdDLHFCQUFxQixFRHUrQ3FCLEdBQUc7RUN0K0M3QyxrQkFBa0IsRURzK0N3QixHQUFHO0VDcitDN0MsaUJBQWlCLEVEcStDeUIsR0FBRztFQ3ArQzdDLGdCQUFnQixFRG8rQzBCLEdBQUc7RUM3OEM3QyxrQkFBa0IsRUQ4OENxQixVQUFVO0VDNzhDakQsZUFBZSxFRDY4Q3dCLFVBQVU7RUM1OENqRCxVQUFVLEVENDhDNkIsVUFBVTtDQUVoQzs7QUFqR3JCLEFDcjNDSSxNRHEzQ0UsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBRU4sTUFBTSxDQUdGLFlBQVksQ0FRUixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYLEVDNzhDdEIsMkJBQTJCLENBQUM7RURxOUNhLEtBQUssRUFBRSxJQUFLO0NDcjlDZDs7QURxM0MzQyxBQ3AzQ0ksTURvM0NFLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQUVOLE1BQU0sQ0FHRixZQUFZLENBUVIsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxFQzU4Q3RCLGlCQUFpQixDQUFXO0VEbzlDYSxLQUFLLEVBQUUsSUFBSztDQ3A5Q2Q7O0FEbzNDM0MsQUNuM0NJLE1EbTNDRSxDQXFCRixlQUFlLEFBc0RWLFNBQVMsQ0FFTixNQUFNLENBR0YsWUFBWSxDQVFSLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVgsRUMzOEN0QixrQkFBa0IsQ0FBVTtFRG05Q2EsS0FBSyxFQUFFLElBQUs7Q0NuOUNkOztBRG0zQzNDLEFDbDNDSSxNRGszQ0UsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBRU4sTUFBTSxDQUdGLFlBQVksQ0FRUixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssTUFBTSxBQUFYLEVDMThDdEIsc0JBQXNCLENBQU07RURrOUNhLEtBQUssRUFBRSxJQUFLO0NDbDlDZDs7QURrM0MzQyxBQWtHb0IsTUFsR2QsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBRU4sTUFBTSxDQUdGLFlBQVksQ0FrQlIsTUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVM7Q0FLdEI7O0FBeEdyQixBQWtHb0IsTUFsR2QsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBRU4sTUFBTSxDQUdGLFlBQVksQ0FrQlIsTUFBTSxBQUVELE1BQU0sQ0FBQztFQUNKLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLEdBQUcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsRUFBRztFQ3grQzlHLFVBQVUsRUR5K0NpQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSztFQ3grQ2pFLGtCQUFrQixFRHcrQ3lCLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO0VDditDakUsZUFBZSxFRHUrQzRCLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO0VDdCtDakUsY0FBYyxFRHMrQzZCLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO0VDcitDakUsYUFBYSxFRHErQzhCLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO0NBQzVDOztBQXZHekIsQUF5R29CLE1BekdkLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQUVOLE1BQU0sQ0FHRixZQUFZLENBeUJSLEdBQUcsQ0FBQztFQUNBLFFBQVEsRUFBRSxRQUFTO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUMsR0FBSTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFDMUUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxPQUFRO0NBQzVEOztBQTdHckIsQUErR3dCLE1BL0dsQixDQXFCRixlQUFlLEFBc0RWLFNBQVMsQ0FFTixNQUFNLENBR0YsWUFBWSxBQThCUCxXQUFXLENBQ1IsTUFBTSxBQUNELE1BQU0sQ0FBQztFQUFDLE9BQU8sRUFBQyxJQUFLO0NBQUc7O0FBaEhyRCxBQXFIWSxNQXJITixDQXFCRixlQUFlLEFBc0RWLFNBQVMsQ0EwQ04sWUFBWSxDQUFDO0VBQ1QsS0FBSyxFQUFFLEtBQU07Q0F1Q2hCOztBQTdKYixBQXFIWSxNQXJITixDQXFCRixlQUFlLEFBc0RWLFNBQVMsQ0EwQ04sWUFBWSxBQUVQLE1BQU0sQ0FBQztFQUNKLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDdEYsTUFBTSxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxFQUFHO0VDbmdEdkQsYUFBYSxFRG9nRHlCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUc7RUNuZ0RyRCxxQkFBcUIsRURtZ0RpQixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHO0VDbGdEckQsa0JBQWtCLEVEa2dEb0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRztFQ2pnRHJELGlCQUFpQixFRGlnRHFCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUc7RUNoZ0RyRCxnQkFBZ0IsRURnZ0RzQixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHO0NBQ3hDOztBQTNIakIsQUE0SGdCLE1BNUhWLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQTBDTixZQUFZLENBT1IsVUFBVSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsR0FBRyxFQUFFLEtBQU07RUFBRSxJQUFJLEVBQUUsQ0FBRTtDQW1CekU7O0FBaEpqQixBQThIb0IsTUE5SGQsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBMENOLFlBQVksQ0FPUixVQUFVLENBRU4sSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FnQm5FOztBQS9JckIsQUE4SG9CLE1BOUhkLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQTBDTixZQUFZLENBT1IsVUFBVSxDQUVOLElBQUksQUFFQyxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQy9FLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLEdBQUk7Q0FDdEI7O0FBbkl6QixBQThIb0IsTUE5SGQsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBMENOLFlBQVksQ0FPUixVQUFVLENBRU4sSUFBSSxBQU1DLFlBQVksQUFDUixPQUFPLENBQUM7RUFDTCxJQUFJLEVBQUMsR0FBSTtDQUNaOztBQXZJN0IsQUE4SG9CLE1BOUhkLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQTBDTixZQUFZLENBT1IsVUFBVSxDQUVOLElBQUksQUFXQyxXQUFXLEFBQ1AsTUFBTSxDQUFDO0VBQ0osUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUMvRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxLQUFNO0NBQ3pCOztBQTdJN0IsQUFpSmdCLE1BakpWLENBcUJGLGVBQWUsQUFzRFYsU0FBUyxDQTBDTixZQUFZLENBNEJSLGlCQUFpQixFQWpKakMsQUFpSnNELE1BakpoRCxDQXFCRixlQUFlLEFBc0RWLFNBQVMsQ0EwQ04sWUFBWSxDQTRCVyxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFqSnZFLEFBaUoyRixNQWpKckYsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBMENOLFlBQVksQ0E0QmlELGlCQUFpQixDQUFDLGlCQUFpQixDQUFDO0VBQ3pGLFVBQVUsRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLGNBQWU7RUM1aER0RyxhQUFhLEVENmhEeUIsR0FBRztFQzVoRHpDLHFCQUFxQixFRDRoRGlCLEdBQUc7RUMzaER6QyxrQkFBa0IsRUQyaERvQixHQUFHO0VDMWhEekMsaUJBQWlCLEVEMGhEcUIsR0FBRztFQ3poRHpDLGdCQUFnQixFRHloRHNCLEdBQUc7Q0FDNUI7O0FBcEpqQixBQXFKZ0IsTUFySlYsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBMENOLFlBQVksQ0FnQ1IsaUJBQWlCLENBQUM7RUFBQyxVQUFVLEVBQUUsT0FBUTtDQUFHOztBQXJKMUQsQUFxSFksTUFySE4sQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBMENOLFlBQVksQUFrQ1AscUJBQXFCLENBQUM7RUFDbkIsTUFBTSxFQUFFLEdBQUk7RUFBRSxnQkFBZ0IsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLENBQUU7RUNsaURqRSxhQUFhLEVEbWlEeUIsR0FBRztFQ2xpRHpDLHFCQUFxQixFRGtpRGlCLEdBQUc7RUNqaUR6QyxrQkFBa0IsRURpaURvQixHQUFHO0VDaGlEekMsaUJBQWlCLEVEZ2lEcUIsR0FBRztFQy9oRHpDLGdCQUFnQixFRCtoRHNCLEdBQUc7Q0FFNUI7O0FBM0pqQixBQTBKb0IsTUExSmQsQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBMENOLFlBQVksQUFrQ1AscUJBQXFCLENBR2xCLGlCQUFpQixDQUFDO0VBQUMsR0FBRyxFQUFFLE1BQU87RUFBRSxXQUFXLEVBQUUsS0FBTTtDQUFHOztBQTFKM0UsQUFxSFksTUFySE4sQ0FxQkYsZUFBZSxBQXNEVixTQUFTLENBMENOLFlBQVksQUF1Q1Asa0JBQWtCLENBQUM7RUFBQyxVQUFVLEVBQUUsSUFBSztDQUFHOztBQTVKekQsQUFxQkksTUFyQkUsQ0FxQkYsZUFBZSxBQTBJVixXQUFXLENBQUM7RUFDVCxjQUFjLEVBQUUsQ0FBRTtFQUFFLGFBQWEsRUFBRSxDQUFFO0NBQ3hDOztBQUdULEFBQUEsY0FBYyxDQUFDO0VBQ1gsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxVQUFXO0VDcGhEakQsa0JBQWtCLEVEcWhEQyxVQUFVO0VDcGhEN0IsZUFBZSxFRG9oREksVUFBVTtFQ25oRDdCLFVBQVUsRURtaERTLFVBQVU7Q0FJaEM7O0FBTkQsQUFBQSxjQUFjLEFBR1QsS0FBSyxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBQzFDOztBQUVMLEFBQUEsZUFBZSxDQUFDO0VBQ1osYUFBYSxFQUFFLElBQUs7Q0FldkI7O0FBaEJELEFBRUksZUFGVyxDQUVYLE1BQU0sQ0FBQztFQUNILFFBQVEsRUFBRSxRQUFTO0VBQUUsUUFBUSxFQUFFLE1BQU87RUN4akQxQyxhQUFhLEVEeWpEYSxHQUFHO0VDeGpEN0IscUJBQXFCLEVEd2pESyxHQUFHO0VDdmpEN0Isa0JBQWtCLEVEdWpEUSxHQUFHO0VDdGpEN0IsaUJBQWlCLEVEc2pEUyxHQUFHO0VDcmpEN0IsZ0JBQWdCLEVEcWpEVSxHQUFHO0NBVzVCOztBQWZMLEFBS1EsZUFMTyxDQUVYLE1BQU0sQ0FHRixHQUFHLENBQUM7RUFDQSxLQUFLLEVBQUUsSUFBSztFQzNqRHBCLGFBQWEsRUQ0akRpQixHQUFHO0VDM2pEakMscUJBQXFCLEVEMmpEUyxHQUFHO0VDMWpEakMsa0JBQWtCLEVEMGpEWSxHQUFHO0VDempEakMsaUJBQWlCLEVEeWpEYSxHQUFHO0VDeGpEakMsZ0JBQWdCLEVEd2pEYyxHQUFHO0VDMWtEakMsVUFBVSxFRDJrRGtCLEdBQUcsQ0FBQyxJQUFHLENBQUMsV0FBVztFQzFrRC9DLGtCQUFrQixFRDBrRFUsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDemtEL0MsZUFBZSxFRHlrRGEsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDeGtEL0MsY0FBYyxFRHdrRGMsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDdmtEL0MsYUFBYSxFRHVrRGUsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0NBQzFDOztBQVRULEFBV1ksZUFYRyxDQUVYLE1BQU0sQUFRRCxNQUFNLENBQ0gsR0FBRyxDQUFDO0VBQ0EsT0FBTyxFQUFFLEdBQUk7Q0FDaEI7O0FBSWIsQUFBQSxZQUFZLENBQUM7RUFDVCxhQUFhLEVBQUUsSUFBSztDQTZEdkI7O0FBOURELEFBRUksWUFGUSxDQUVSLFdBQVcsQ0FBQztFQUNSLGNBQWMsRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsaUJBQWtCO0NBV2pGOztBQWRMLEFBS1EsWUFMSSxDQUVSLFdBQVcsQ0FHUCxFQUFFLENBQUM7RUFDQyxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2hHLGNBQWMsRUFBRSxNQUFPO0VBQUUsS0FBSyxFQUFFLE9BQVE7Q0FDM0M7O0FBUlQsQUFTUSxZQVRJLENBRVIsV0FBVyxDQU9QLE1BQU0sQ0FBQztFQUNILFdBQVcsRUFBRSxHQUFJO0VBQ2pCLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsSUFBSztDQUN2Qzs7QUFiVCxBQWlCUSxZQWpCSSxDQWVSLGNBQWMsQ0FFVixLQUFLLENBQUM7RUFDRixPQUFPLEVBQUUsWUFBYTtFQUFFLE9BQU8sRUFBRSxTQUFVO0VBQzNDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQ3pEOztBQXJCVCxBQXNCUSxZQXRCSSxDQWVSLGNBQWMsQ0FPVixZQUFZLENBQUM7RUFDVCxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsWUFBWSxFQUFFLElBQUs7Q0FhdkU7O0FBcENULEFBd0JZLFlBeEJBLENBZVIsY0FBYyxDQU9WLFlBQVksQ0FFUixDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsWUFBYTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VBQ2pGLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsU0FBVTtFQUNwRCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VDbG1EdkQsYUFBYSxFRG1tRHFCLEdBQUc7RUNsbURyQyxxQkFBcUIsRURrbURhLEdBQUc7RUNqbURyQyxrQkFBa0IsRURpbURnQixHQUFHO0VDaG1EckMsaUJBQWlCLEVEZ21EaUIsR0FBRztFQy9sRHJDLGdCQUFnQixFRCtsRGtCLEdBQUc7RUN4a0RyQyxrQkFBa0IsRUR5a0RhLFVBQVU7RUN4a0R6QyxlQUFlLEVEd2tEZ0IsVUFBVTtFQ3ZrRHpDLFVBQVUsRUR1a0RxQixVQUFVO0NBS2hDOztBQW5DYixBQStCZ0IsWUEvQkosQ0FlUixjQUFjLENBT1YsWUFBWSxDQUVSLENBQUMsQ0FPRyxJQUFJLENBQUM7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFFLFlBQVksRUFBRSxHQUFJO0NBQUc7O0FBL0JwRSxBQXdCWSxZQXhCQSxDQWVSLGNBQWMsQ0FPVixZQUFZLENBRVIsQ0FBQyxBQVFJLE9BQU8sQ0FBQztFQUNMLFlBQVksRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLE9BQVE7Q0FDMUM7O0FBbENqQixBQXFDUSxZQXJDSSxDQWVSLGNBQWMsQ0FzQlYsY0FBYyxDQUFDO0VBQ1gsS0FBSyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsSUFBSztDQWNoQzs7QUFwRFQsQUF1Q1ksWUF2Q0EsQ0FlUixjQUFjLENBc0JWLGNBQWMsQ0FFVixNQUFNLENBQUM7RUFDSCxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUNqRCxLQUFLLEVBQUUsS0FBTTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsT0FBUTtFQUFFLEtBQUssRUFBQyxJQUFLO0VBQ25GLFFBQVEsRUFBRSxRQUFTO0VDaG5EL0IsYUFBYSxFRGluRHFCLEdBQUc7RUNobkRyQyxxQkFBcUIsRURnbkRhLEdBQUc7RUMvbURyQyxrQkFBa0IsRUQrbURnQixHQUFHO0VDOW1EckMsaUJBQWlCLEVEOG1EaUIsR0FBRztFQzdtRHJDLGdCQUFnQixFRDZtRGtCLEdBQUc7Q0FRNUI7O0FBbkRiLEFBNENnQixZQTVDSixDQWVSLGNBQWMsQ0FzQlYsY0FBYyxDQUVWLE1BQU0sQ0FLRixLQUFLLENBQUM7RUFDRixTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxlQUFnQjtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFDLElBQUs7Q0FDekU7O0FBOUNqQixBQStDZ0IsWUEvQ0osQ0FlUixjQUFjLENBc0JWLGNBQWMsQ0FFVixNQUFNLENBUUYsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFDL0QsVUFBVSxFQUFFLHdDQUFHLENBQXNDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUMvRTs7QUFsRGpCLEFBc0RJLFlBdERRLENBc0RSLFNBQVMsQ0FBQztFQUNOLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsWUFBYTtDQUNwRzs7QUF6REwsQUFBQSxZQUFZLEFBMERQLE9BQU8sQ0FBQztFQUFDLGFBQWEsRUFBRSxJQUFLO0NBQUc7O0FBTXJDLEFBQ0ksWUFEUSxDQUNSLElBQUksQ0FBQztFQUNELE9BQU8sRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztDQWlEdEQ7O0FBbkRMLEFBSVEsWUFKSSxDQUNSLElBQUksQ0FHQSxJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsVUFBVztFQUFFLGNBQWMsRUFBRSxNQUFPO0VDaG5EckQsa0JBQWtCLEVEaW5EUyxVQUFVO0VDaG5EckMsZUFBZSxFRGduRFksVUFBVTtFQy9tRHJDLFVBQVUsRUQrbURpQixVQUFVO0NBb0NoQzs7QUExQ1QsQUFJUSxZQUpJLENBQ1IsSUFBSSxDQUdBLElBQUksQUFHQyxLQUFLLENBQUM7RUFDSCxLQUFLLEVBQUUsTUFBTztFQUFFLGFBQWEsRUFBRSxLQUFNO0NBS3hDOztBQWJiLEFBU2dCLFlBVEosQ0FDUixJQUFJLENBR0EsSUFBSSxBQUdDLEtBQUssQ0FFRixJQUFJLENBQUM7RUFDRCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxHQUFJO0VBQ2pHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUN6RDs7QUFaakIsQUFJUSxZQUpJLENBQ1IsSUFBSSxDQUdBLElBQUksQUFVQyxJQUFJLENBQUM7RUFDRixLQUFLLEVBQUUsTUFBTztDQTBCakI7O0FBekNiLEFBZ0JnQixZQWhCSixDQUNSLElBQUksQ0FHQSxJQUFJLEFBVUMsSUFBSSxDQUVELE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxVQUFXO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFBRSxRQUFRLEVBQUUsUUFBUztFQ3ZwRGxGLGFBQWEsRUR3cER5QixHQUFHO0VDdnBEekMscUJBQXFCLEVEdXBEaUIsR0FBRztFQ3RwRHpDLGtCQUFrQixFRHNwRG9CLEdBQUc7RUNycER6QyxpQkFBaUIsRURxcERxQixHQUFHO0VDcHBEekMsZ0JBQWdCLEVEb3BEc0IsR0FBRztDQVk1Qjs7QUE5QmpCLEFBbUJvQixZQW5CUixDQUNSLElBQUksQ0FHQSxJQUFJLEFBVUMsSUFBSSxDQUVELE1BQU0sQ0FHRixHQUFHLENBQUM7RUN6cERwQixhQUFhLEVEMHBENkIsR0FBRztFQ3pwRDdDLHFCQUFxQixFRHlwRHFCLEdBQUc7RUN4cEQ3QyxrQkFBa0IsRUR3cER3QixHQUFHO0VDdnBEN0MsaUJBQWlCLEVEdXBEeUIsR0FBRztFQ3RwRDdDLGdCQUFnQixFRHNwRDBCLEdBQUc7RUNucEQ3QyxVQUFVLEVEb3BENkIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGtCQUFJO0VDbnBENUQsa0JBQWtCLEVEbXBEcUIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGtCQUFJO0VDbHBENUQsZUFBZSxFRGtwRHdCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxrQkFBSTtFQ2pwRDVELGNBQWMsRURpcER5QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsa0JBQUk7RUNocEQ1RCxhQUFhLEVEZ3BEMEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGtCQUFJO0NBQzNDOztBQXRCckIsQUF1Qm9CLFlBdkJSLENBQ1IsSUFBSSxDQUdBLElBQUksQUFVQyxJQUFJLENBRUQsTUFBTSxDQU9GLFNBQVMsQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFNO0NBS2xCOztBQTdCckIsQUF5QndCLFlBekJaLENBQ1IsSUFBSSxDQUdBLElBQUksQUFVQyxJQUFJLENBRUQsTUFBTSxDQU9GLFNBQVMsQ0FFTCxHQUFHLENBQUM7RUFDQSxRQUFRLEVBQUMsUUFBUztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFDM0UsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztDQUM5Qjs7QUE1QnpCLEFBK0JnQixZQS9CSixDQUNSLElBQUksQ0FHQSxJQUFJLEFBVUMsSUFBSSxDQWlCRCxTQUFTLENBQUM7RUFDTixPQUFPLEVBQUUsSUFBSztDQUNqQjs7QUFqQ2pCLEFBa0NnQixZQWxDSixDQUNSLElBQUksQ0FHQSxJQUFJLEFBVUMsSUFBSSxDQW9CRCxNQUFNLENBQUM7RUFDSCxRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxDQUFFO0VBQ1YsY0FBYyxFQUFFLE1BQU87Q0FFMUI7O0FBeENqQixBQXVDb0IsWUF2Q1IsQ0FDUixJQUFJLENBR0EsSUFBSSxBQVVDLElBQUksQ0FvQkQsTUFBTSxDQUtGLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxlQUFnQjtFQUFFLE1BQU0sRUFBRSxlQUFnQjtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtDQUFHOztBQXZDeEgsQUFDSSxZQURRLENBQ1IsSUFBSSxBQTBDQyxJQUFJLENBQUM7RUFDRixTQUFTLEVBQUUsR0FBSTtDQU1sQjs7QUFsRFQsQUE2Q1ksWUE3Q0EsQ0FDUixJQUFJLEFBMENDLElBQUksQ0FFRCxJQUFJLENBQUM7RUFDRCxTQUFTLEVBQUUsR0FBSTtDQUdsQjs7QUFqRGIsQUE2Q1ksWUE3Q0EsQ0FDUixJQUFJLEFBMENDLElBQUksQ0FFRCxJQUFJLEFBR0MsS0FBSyxDQUFDO0VBQUMsWUFBWSxFQUFFLEtBQU07RUFBRSxhQUFhLEVBQUUsQ0FBRTtDQUFHOztBQUtsRSxBQUFBLFlBQVksQ0FBQztFQUNULFVBQVUsRUFBRSxNQUFPO0NBOEJ0Qjs7QUEvQkQsQUFFSSxZQUZRLENBRVIsRUFBRSxDQUFDO0VBQUMsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUFGL0IsQUFHSSxZQUhRLENBR1IsSUFBSSxDQUFDO0VBQ0QsVUFBVSxFQUFFLE1BQU87Q0EwQnRCOztBQTlCTCxBQU1RLFlBTkksQ0FHUixJQUFJLENBR0EsSUFBSSxDQUFDO0VBQ0QsaUJBQWlCO0VBQ2pCLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLEdBQUk7RUFDNUMsS0FBSyxFQUFFLE9BQVE7RUFDZixNQUFNLEVBQUMsYUFBYztFQUFFLE9BQU8sRUFBRSxtQkFBb0I7RUFDcEQsZ0JBQWdCLEVBQUUsNkRBQWU7RUN0c0R6QyxhQUFhLEVEdXNEaUIsR0FBRztFQ3RzRGpDLHFCQUFxQixFRHNzRFMsR0FBRztFQ3JzRGpDLGtCQUFrQixFRHFzRFksR0FBRztFQ3BzRGpDLGlCQUFpQixFRG9zRGEsR0FBRztFQ25zRGpDLGdCQUFnQixFRG1zRGMsR0FBRztFQzVxRGpDLGtCQUFrQixFRDZxRFMsVUFBVTtFQzVxRHJDLGVBQWUsRUQ0cURZLFVBQVU7RUMzcURyQyxVQUFVLEVEMnFEaUIsVUFBVTtDQWdCaEM7O0FBN0JULEFBTVEsWUFOSSxDQUdSLElBQUksQ0FHQSxJQUFJLEFBUUMsVUFBVyxDQUFBLElBQUksRUFBRTtFQUFDLFlBQVksRUFBRSxDQUFFO0NBQUc7O0FBZGxELEFBZVksWUFmQSxDQUdSLElBQUksQ0FHQSxJQUFJLENBU0EsTUFBTSxDQUFDO0VBQ0gsS0FBSyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGdCQUFpQjtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQy9GLFFBQVEsRUFBRSxNQUFPO0VDNXNEN0IsYUFBYSxFRDZzRHFCLEdBQUc7RUM1c0RyQyxxQkFBcUIsRUQ0c0RhLEdBQUc7RUMzc0RyQyxrQkFBa0IsRUQyc0RnQixHQUFHO0VDMXNEckMsaUJBQWlCLEVEMHNEaUIsR0FBRztFQ3pzRHJDLGdCQUFnQixFRHlzRGtCLEdBQUc7RUN0c0RyQyxVQUFVLEVEdXNEcUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0VDdHNEL0Msa0JBQWtCLEVEc3NEYSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7RUNyc0QvQyxlQUFlLEVEcXNEZ0IsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0VDcHNEL0MsY0FBYyxFRG9zRGlCLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBSTtFQ25zRC9DLGFBQWEsRURtc0RrQixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7Q0FJdEM7O0FBdkJiLEFBb0JnQixZQXBCSixDQUdSLElBQUksQ0FHQSxJQUFJLENBU0EsTUFBTSxDQUtGLEdBQUcsQ0FBQztFQUNBLFFBQVEsRUFBRSxRQUFTO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtDQUMvRTs7QUF0QmpCLEFBd0JZLFlBeEJBLENBR1IsSUFBSSxDQUdBLElBQUksQ0FrQkEsRUFBRSxDQUFDO0VBQUMsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUF4QnZDLEFBeUJZLFlBekJBLENBR1IsSUFBSSxDQUdBLElBQUksQ0FtQkEsSUFBSSxDQUFDO0VBQ0QsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsR0FBSTtFQUNqRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztDQUNqRjs7QUFLYixBQUFBLGNBQWMsQ0FBQztFQUNYLGNBQWMsRUFBRSxJQUFLO0NBNkR4Qjs7QUE5REQsQUFJUSxjQUpNLENBRVYsSUFBSSxDQUVBLElBQUksQ0FBQztFQUNELFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsTUFBTztFQUFFLE1BQU0sRUFBRSxhQUFjO0NBNEI1RTs7QUFqQ1QsQUFJUSxjQUpNLENBRVYsSUFBSSxDQUVBLElBQUksQUFFQyxVQUFXLENBQUEsSUFBSSxFQUFFO0VBQUMsWUFBWSxFQUFFLENBQUU7Q0FBRzs7QUFObEQsQUFPWSxjQVBFLENBRVYsSUFBSSxDQUVBLElBQUksQ0FHQSxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLGFBQWEsRUFBRSxJQUFLO0NBQzVDOztBQVRiLEFBVVksY0FWRSxDQUVWLElBQUksQ0FFQSxJQUFJLENBTUEsTUFBTSxDQUFDO0VBQ0gsV0FBVyxFQUFFLENBQUU7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFFBQVEsRUFBRSxNQUFPO0VDdnVEbkUsYUFBYSxFRHd1RHFCLEdBQUc7RUN2dURyQyxxQkFBcUIsRUR1dURhLEdBQUc7RUN0dURyQyxrQkFBa0IsRURzdURnQixHQUFHO0VDcnVEckMsaUJBQWlCLEVEcXVEaUIsR0FBRztFQ3B1RHJDLGdCQUFnQixFRG91RGtCLEdBQUc7Q0FLNUI7O0FBakJiLEFBYWdCLGNBYkYsQ0FFVixJQUFJLENBRUEsSUFBSSxDQU1BLE1BQU0sQ0FHRixHQUFHLENBQUM7RUN6dURoQixhQUFhLEVEMHVEeUIsR0FBRztFQ3p1RHpDLHFCQUFxQixFRHl1RGlCLEdBQUc7RUN4dUR6QyxrQkFBa0IsRUR3dURvQixHQUFHO0VDdnVEekMsaUJBQWlCLEVEdXVEcUIsR0FBRztFQ3R1RHpDLGdCQUFnQixFRHN1RHNCLEdBQUc7RUN4dkR6QyxVQUFVLEVEeXZEMEIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDeHZEeEQsa0JBQWtCLEVEd3ZEa0IsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDdnZEeEQsZUFBZSxFRHV2RHFCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3R2RHhELGNBQWMsRURzdkRzQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNydkR4RCxhQUFhLEVEcXZEdUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBQzNDOztBQWhCakIsQUFrQlksY0FsQkUsQ0FFVixJQUFJLENBRUEsSUFBSSxDQWNBLFFBQVEsQ0FBQztFQUNMLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxPQUFRO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FDbEY7O0FBckJiLEFBc0JZLGNBdEJFLENBRVYsSUFBSSxDQUVBLElBQUksQ0FrQkEsT0FBTyxDQUFDO0VBQ0osU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLE9BQVE7Q0FDNUQ7O0FBekJiLEFBNEJvQixjQTVCTixDQUVWLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0FDSCxNQUFNLENBQ0YsR0FBRyxDQUFDO0VDL3ZEcEIsU0FBUyxFRGd3RDhCLFdBQUs7RUMvdkQ1QyxpQkFBaUIsRUQrdkRzQixXQUFLO0VDOXZENUMsY0FBYyxFRDh2RHlCLFdBQUs7RUM3dkQ1QyxhQUFhLEVENnZEMEIsV0FBSztFQzV2RDVDLFlBQVksRUQ0dkQyQixXQUFLO0NBQzNCOztBQTlCckIsQUFxQ1ksY0FyQ0UsQUFtQ1QsUUFBUSxDQUNMLElBQUksQ0FDQSxJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsbUJBQW9CO0VBQUUsVUFBVSxFQUFFLElBQUs7RUNsd0Q1RCxhQUFhLEVEbXdEcUIsR0FBRztFQ2x3RHJDLHFCQUFxQixFRGt3RGEsR0FBRztFQ2p3RHJDLGtCQUFrQixFRGl3RGdCLEdBQUc7RUNod0RyQyxpQkFBaUIsRURnd0RpQixHQUFHO0VDL3ZEckMsZ0JBQWdCLEVEK3ZEa0IsR0FBRztFQ3h1RHJDLGtCQUFrQixFRHl1RGEsVUFBVTtFQ3h1RHpDLGVBQWUsRUR3dURnQixVQUFVO0VDdnVEekMsVUFBVSxFRHV1RHFCLFVBQVU7Q0FhaEM7O0FBckRiLEFBcUNZLGNBckNFLEFBbUNULFFBQVEsQ0FDTCxJQUFJLENBQ0EsSUFBSSxBQUlDLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxjQUFlO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFDckYsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLENBQUU7RUN2d0RqRSxhQUFhLEVEd3dEeUIsR0FBRztFQ3Z3RHpDLHFCQUFxQixFRHV3RGlCLEdBQUc7RUN0d0R6QyxrQkFBa0IsRURzd0RvQixHQUFHO0VDcndEekMsaUJBQWlCLEVEcXdEcUIsR0FBRztFQ3B3RHpDLGdCQUFnQixFRG93RHNCLEdBQUc7RUM3dUR6QyxrQkFBa0IsRUQ4dURpQixVQUFVO0VDN3VEN0MsZUFBZSxFRDZ1RG9CLFVBQVU7RUM1dUQ3QyxVQUFVLEVENHVEeUIsVUFBVTtDQUNoQzs7QUE5Q2pCLEFBcUNZLGNBckNFLEFBbUNULFFBQVEsQ0FDTCxJQUFJLENBQ0EsSUFBSSxBQVVDLE1BQU0sQ0FBQztFQUNKLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxjQUFlO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFDckYsR0FBRyxFQUFFLEtBQU07RUFBRSxJQUFJLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLENBQUU7RUM3d0R4RSxhQUFhLEVEOHdEeUIsR0FBRztFQzd3RHpDLHFCQUFxQixFRDZ3RGlCLEdBQUc7RUM1d0R6QyxrQkFBa0IsRUQ0d0RvQixHQUFHO0VDM3dEekMsaUJBQWlCLEVEMndEcUIsR0FBRztFQzF3RHpDLGdCQUFnQixFRDB3RHNCLEdBQUc7RUNudkR6QyxrQkFBa0IsRURvdkRpQixVQUFVO0VDbnZEN0MsZUFBZSxFRG12RG9CLFVBQVU7RUNsdkQ3QyxVQUFVLEVEa3ZEeUIsVUFBVTtDQUNoQzs7QUFwRGpCLEFBc0RZLGNBdERFLEFBbUNULFFBQVEsQ0FDTCxJQUFJLENBa0JBLE1BQU0sQ0FBQztFQUNILFFBQVEsRUFBRSxNQUFPO0VBQUUsTUFBTSxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsQ0FBRTtDQUlqRDs7QUEzRGIsQUF3RGdCLGNBeERGLEFBbUNULFFBQVEsQ0FDTCxJQUFJLENBa0JBLE1BQU0sQ0FFRixHQUFHLENBQUM7RUFDQSxVQUFVLEVBQUUsS0FBTTtFQUFFLGVBQWUsRUFBRSxhQUFjO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztDQUNuRjs7QUFLakIsQUFDSSxxQkFEaUIsQ0FDakIsV0FBVyxDQUFDO0VBQ1IsYUFBYSxFQUFFLElBQUs7Q0F3QnZCOztBQTFCTCxBQUdRLHFCQUhhLENBQ2pCLFdBQVcsQ0FFUCxNQUFNLENBQUM7RUFDSCxXQUFXLEVBQUUsQ0FBRTtFQy94RHZCLGFBQWEsRURneURpQixHQUFHO0VDL3hEakMscUJBQXFCLEVEK3hEUyxHQUFHO0VDOXhEakMsa0JBQWtCLEVEOHhEWSxHQUFHO0VDN3hEakMsaUJBQWlCLEVENnhEYSxHQUFHO0VDNXhEakMsZ0JBQWdCLEVENHhEYyxHQUFHO0NBRTVCOztBQVBULEFBTVkscUJBTlMsQ0FDakIsV0FBVyxDQUVQLE1BQU0sQ0FHRixHQUFHLENBQUM7RUNqeURaLGFBQWEsRURpeURzQixHQUFHO0VDaHlEdEMscUJBQXFCLEVEZ3lEYyxHQUFHO0VDL3hEdEMsa0JBQWtCLEVEK3hEaUIsR0FBRztFQzl4RHRDLGlCQUFpQixFRDh4RGtCLEdBQUc7RUM3eER0QyxnQkFBZ0IsRUQ2eERtQixHQUFHO0NBQUk7O0FBTjlDLEFBUVEscUJBUmEsQ0FDakIsV0FBVyxDQU9QLFlBQVksQ0FBQztFQUNULFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxHQUFJO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUMxRixXQUFXLEVBQUUsU0FBVTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGNBQWU7RUMxd0QxRSxrQkFBa0IsRUQyd0RTLFVBQVU7RUMxd0RyQyxlQUFlLEVEMHdEWSxVQUFVO0VDendEckMsVUFBVSxFRHl3RGlCLFVBQVU7RUN0eURyQyxhQUFhLEVEc3lEaUQsR0FBRztFQ3J5RGpFLHFCQUFxQixFRHF5RHlDLEdBQUc7RUNweURqRSxrQkFBa0IsRURveUQ0QyxHQUFHO0VDbnlEakUsaUJBQWlCLEVEbXlENkMsR0FBRztFQ2x5RGpFLGdCQUFnQixFRGt5RDhDLEdBQUc7RUM3eURqRSxTQUFTLEVEOHlEa0Isa0JBQVM7RUM3eURwQyxpQkFBaUIsRUQ2eURVLGtCQUFTO0VDNXlEcEMsY0FBYyxFRDR5RGEsa0JBQVM7RUMzeURwQyxhQUFhLEVEMnlEYyxrQkFBUztFQzF5RHBDLFlBQVksRUQweURlLGtCQUFTO0NBYS9COztBQXpCVCxBQVFRLHFCQVJhLENBQ2pCLFdBQVcsQ0FPUCxZQUFZLEFBS1AsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQ3ZGLE9BQU8sRUFBRSxFQUFHO0NBQ2Y7O0FBaEJiLEFBUVEscUJBUmEsQ0FDakIsV0FBVyxDQU9QLFlBQVksQUFTUCxXQUFXLENBQUM7RUFDVCxJQUFJLEVBQUUsSUFBSztDQUVkOztBQXBCYixBQVFRLHFCQVJhLENBQ2pCLFdBQVcsQ0FPUCxZQUFZLEFBU1AsV0FBVyxBQUVQLE9BQU8sQ0FBQztFQUFDLFVBQVUsRUFBQyw4Q0FBRyxDQUE0QyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07Q0FBRzs7QUFuQjlHLEFBUVEscUJBUmEsQ0FDakIsV0FBVyxDQU9QLFlBQVksQUFhUCxXQUFXLENBQUM7RUFDVCxLQUFLLEVBQUMsSUFBSztDQUVkOztBQXhCYixBQVFRLHFCQVJhLENBQ2pCLFdBQVcsQ0FPUCxZQUFZLEFBYVAsV0FBVyxBQUVQLE9BQU8sQ0FBQztFQUFDLFVBQVUsRUFBQyw4Q0FBRyxDQUE0QyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07Q0FBRzs7QUF2QjlHLEFBNEJRLHFCQTVCYSxDQTJCakIsYUFBYSxDQUNULFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUMsY0FBZTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQ3ZFLE1BQU0sRUFBRSxVQUFXO0VDenpEM0IsYUFBYSxFRDB6RGlCLEdBQUc7RUN6ekRqQyxxQkFBcUIsRUR5ekRTLEdBQUc7RUN4ekRqQyxrQkFBa0IsRUR3ekRZLEdBQUc7RUN2ekRqQyxpQkFBaUIsRUR1ekRhLEdBQUc7RUN0ekRqQyxnQkFBZ0IsRURzekRjLEdBQUc7RUMveERqQyxrQkFBa0IsRURneURTLFVBQVU7RUMveERyQyxlQUFlLEVEK3hEWSxVQUFVO0VDOXhEckMsVUFBVSxFRDh4RGlCLFVBQVU7Q0FPaEM7O0FBdkNULEFBNEJRLHFCQTVCYSxDQTJCakIsYUFBYSxDQUNULFlBQVksQUFLUCxjQUFjLENBQUM7RUFDWixZQUFZLEVBQUUsT0FBUTtDQUN6Qjs7QUFuQ2IsQUFxQ2dCLHFCQXJDSyxDQTJCakIsYUFBYSxDQUNULFlBQVksQ0FRUixNQUFNLENBQ0YsR0FBRyxDQUFDO0VDaDBEaEIsYUFBYSxFRGcwRDBCLEdBQUc7RUMvekQxQyxxQkFBcUIsRUQrekRrQixHQUFHO0VDOXpEMUMsa0JBQWtCLEVEOHpEcUIsR0FBRztFQzd6RDFDLGlCQUFpQixFRDZ6RHNCLEdBQUc7RUM1ekQxQyxnQkFBZ0IsRUQ0ekR1QixHQUFHO0NBQUk7O0FBTWxELEFBQUEsVUFBVSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQ3ZGLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFVBQVUsRUFBRSxNQUFPO0VDeDBEdEUsYUFBYSxFRHkwRFMsR0FBRztFQ3gwRHpCLHFCQUFxQixFRHcwREMsR0FBRztFQ3YwRHpCLGtCQUFrQixFRHUwREksR0FBRztFQ3QwRHpCLGlCQUFpQixFRHMwREssR0FBRztFQ3IwRHpCLGdCQUFnQixFRHEwRE0sR0FBRztDQU81Qjs7QUFWRCxBQUFBLFVBQVUsQUFJTCxJQUFJLENBQUM7RUFBQyxVQUFVLEVBQUUsT0FBUTtFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUc7O0FBSnRELEFBQUEsVUFBVSxBQUtMLEtBQUssQ0FBQztFQUFDLFVBQVUsRUFBRSxPQUFRO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FBRzs7QUFMdkQsQUFBQSxVQUFVLEFBTUwsS0FBSyxDQUFDO0VBQ0gsVUFBVSxFQUFFLE9BQVE7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUUzQzs7QUFUTCxBQVFRLFVBUkUsQUFNTCxLQUFLLENBRUYsSUFBSSxDQUFDO0VBQUMsT0FBTyxFQUFFLFVBQVc7RUFBRSxPQUFPLEVBQUUsS0FBTTtDQUFHOztBQUd0RCxBQUFBLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxHQUFJO0VBQ3pFLFVBQVUsRUFBRSw4Q0FBRyxDQUE0QyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07Q0FPckY7O0FBVEQsQUFBQSxLQUFLLEFBR0EsT0FBTyxDQUFDO0VBQ0wsVUFBVSxFQUFFLDRDQUFHLENBQTBDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUNuRjs7QUFMTCxBQUFBLEtBQUssQUFNQSxTQUFTLENBQUM7RUFDUCxVQUFVLEVBQUUsOENBQUcsQ0FBNEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0NBQ3JGOztBQUVMLEFBRUksU0FGSyxDQUVMLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUN6QyxVQUFVLEVBQUUsOENBQUcsQ0FBNEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0NBSXJGOztBQVJMLEFBRUksU0FGSyxDQUVMLEtBQUssQUFHQSxPQUFPLENBQUM7RUFDTCxVQUFVLEVBQUUsNENBQUcsQ0FBMEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0NBQ25GOztBQVBULEFBU0ksU0FUSyxDQVNMLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBQyxTQUFVO0NBRXZFOztBQVpMLEFBU0ksU0FUSyxDQVNMLE1BQU0sQUFFRCxLQUFLLENBQUM7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUFHOztBQVgvQixBQWFJLFNBYkssQ0FhTCxLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUMsU0FBVTtDQUNwRTs7QUFFTCxBQUFBLGVBQWUsQ0FBQztFQUNaLGFBQWEsRUFBRSxJQUFLO0NBYXZCOztBQWRELEFBR0ksZUFIVyxDQUdYLFFBQVEsQ0FBQztFQUNMLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxPQUFRO0NBUzlEOztBQWJMLEFBS1EsZUFMTyxDQUdYLFFBQVEsQ0FFSixJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsS0FBTTtFQUNmLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFDM0IsVUFBVSxFQUFFLGlEQUFHLENBQStDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUN4Rjs7QUFUVCxBQVdZLGVBWEcsQ0FHWCxRQUFRLEFBT0gsTUFBTSxDQUNILElBQUksRUFYaEIsQUFXWSxlQVhHLENBR1gsUUFBUSxBQU9NLFNBQVMsQ0FDZixJQUFJLENBQUM7RUFBQyxVQUFVLEVBQUUsK0NBQUcsQ0FBNkMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0NBQUc7O0FBSXhHLEFBRUksT0FGRyxDQUVILE9BQU8sQ0FBQztFQUNKLE1BQU0sRUFBRSxXQUFZO0NBT3ZCOztBQVZMLEFBSVEsT0FKRCxDQUVILE9BQU8sQ0FFSCxJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsWUFBYTtFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFDLE9BQU8sRUFBRSxLQUFNO0VBQ3JGLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsT0FBUTtFQ2w0RG5FLGFBQWEsRURtNERpQixHQUFHO0VDbDREakMscUJBQXFCLEVEazREUyxHQUFHO0VDajREakMsa0JBQWtCLEVEaTREWSxHQUFHO0VDaDREakMsaUJBQWlCLEVEZzREYSxHQUFHO0VDLzNEakMsZ0JBQWdCLEVEKzNEYyxHQUFHO0NBQzVCOztBQVRULEFBV0ksT0FYRyxDQVdILEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxTQUFVO0NBQ3BFOztBQUVMLEFBQUEsYUFBYSxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVM7RUFBRSxJQUFJLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxLQUFNO0VBQUMsT0FBTyxFQUFFLEVBQUc7RUFBRSxPQUFPLEVBQUUsSUFBSztFQUM1RSxLQUFLLEVBQUUsS0FBTTtFQUFDLE9BQU8sRUFBQyxJQUFLO0VBQUMsVUFBVSxFQUFFLGtCQUFJO0VBQzVDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDaEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0VDcjVEdEQsU0FBUyxFRHM1RFUsa0JBQVM7RUNyNUQ1QixpQkFBaUIsRURxNURFLGtCQUFTO0VDcDVENUIsY0FBYyxFRG81REssa0JBQVM7RUNuNUQ1QixhQUFhLEVEbTVETSxrQkFBUztFQ2w1RDVCLFlBQVksRURrNURPLGtCQUFTO0VDLzRENUIsYUFBYSxFRGc1RFMsR0FBRztFQy80RHpCLHFCQUFxQixFRCs0REMsR0FBRztFQzk0RHpCLGtCQUFrQixFRDg0REksR0FBRztFQzc0RHpCLGlCQUFpQixFRDY0REssR0FBRztFQzU0RHpCLGdCQUFnQixFRDQ0RE0sR0FBRztFQ3IzRHpCLGtCQUFrQixFRHMzREMsVUFBVTtFQ3IzRDdCLGVBQWUsRURxM0RJLFVBQVU7RUNwM0Q3QixVQUFVLEVEbzNEUyxVQUFVO0NBVWhDOztBQWpCRCxBQVFJLGFBUlMsQ0FRVCxLQUFLLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtDQUFHOztBQVJ6QixBQVNJLGFBVFMsQ0FTVCxNQUFNLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxLQUFNO0NBQUc7O0FBVDlDLEFBVUksYUFWUyxDQVVULElBQUksQ0FBQztFQUNELFdBQVcsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxLQUFNO0NBS2pGOztBQWhCTCxBQVVJLGFBVlMsQ0FVVCxJQUFJLEFBRUMsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQ2hGLFVBQVUsRUFBRSwrQ0FBRyxDQUE2QyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07Q0FDdEY7O0FBR1IsQUFBQSxVQUFVLENBQUM7RUFDUixLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxXQUFXLEVBQUUsSUFBSztFQzc1RDNELGFBQWEsRUQ4NURTLEdBQUc7RUM3NUR6QixxQkFBcUIsRUQ2NURDLEdBQUc7RUM1NUR6QixrQkFBa0IsRUQ0NURJLEdBQUc7RUMzNUR6QixpQkFBaUIsRUQyNURLLEdBQUc7RUMxNUR6QixnQkFBZ0IsRUQwNURNLEdBQUc7Q0F5QzVCOztBQTNDQSxBQUdHLFVBSE8sQ0FHUCxVQUFVLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQ2hGLFlBQVksRUFBRSxpQkFBa0I7Q0FLbkM7O0FBVkosQUFHRyxVQUhPLENBR1AsVUFBVSxBQUdMLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxHQUFJO0VBQUUsR0FBRyxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUNwRixXQUFXLEVBQUUsSUFBSztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFBRSxLQUFLLEVBQUUsSUFBSztDQUMxRTs7QUFUUixBQVdHLFVBWE8sQ0FXUCxLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQ3pFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLEtBQUssRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE1BQU87RUMvNERyQyxrQkFBa0IsRURnNURLLFVBQVU7RUMvNERqQyxlQUFlLEVEKzREUSxVQUFVO0VDOTREakMsVUFBVSxFRDg0RGEsVUFBVTtDQUNoQzs7QUFoQkosQUFpQkcsVUFqQk8sQ0FpQlAsU0FBUyxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUNoRixXQUFXLEVBQUUsaUJBQWtCO0NBTWxDOztBQXpCSixBQWlCRyxVQWpCTyxDQWlCUCxTQUFTLEFBR0osT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEdBQUk7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQ2pGLFdBQVcsRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQ3ZFLFdBQVcsRUFBRSxJQUFLO0NBQ3JCOztBQXhCUixBQUFBLFVBQVUsQUEwQk4sT0FBTyxDQUFDO0VBQ0wsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFlBQWE7Q0FlMUU7O0FBMUNKLEFBNEJPLFVBNUJHLEFBMEJOLE9BQU8sQ0FFSixLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLEdBQUk7RUFDMUQsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBQ2xEOztBQS9CUixBQWdDTyxVQWhDRyxBQTBCTixPQUFPLENBTUosU0FBUyxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxHQUFJO0VBQzFELE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUVsRDs7QUFwQ1IsQUFnQ08sVUFoQ0csQUEwQk4sT0FBTyxDQU1KLFNBQVMsQUFHSixPQUFPLENBQUM7RUFBQyxXQUFXLEVBQUMsSUFBSztDQUFHOztBQW5DekMsQUFxQ08sVUFyQ0csQUEwQk4sT0FBTyxDQVdKLFVBQVUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFlBQWE7RUFBRSxjQUFjLEVBQUUsR0FBSTtFQUMxRCxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FFbEQ7O0FBekNSLEFBcUNPLFVBckNHLEFBMEJOLE9BQU8sQ0FXSixVQUFVLEFBR0wsT0FBTyxDQUFDO0VBQUMsV0FBVyxFQUFDLElBQUs7Q0FBRzs7QUFJMUMsQUFDSSxRQURJLENBQ0osQ0FBQyxDQUFDO0VBQ0UsWUFBWSxFQUFFLElBQUs7Q0FFdEI7O0FBSkwsQUFDSSxRQURJLENBQ0osQ0FBQyxBQUVJLFdBQVcsQ0FBQztFQUFDLFlBQVksRUFBQyxDQUFFO0NBQUc7O0FBR3hDLEFBQUEsZUFBZSxDQUFDO0VBQ1osYUFBYSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztDQXFINUM7O0FBdEhELEFBR0ksZUFIVyxDQUdYLGdCQUFnQixDQUFDO0VBQ2IsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsTUFBTztFQUFFLE9BQU8sRUFBRSxPQUFRO0NBK0JsRDs7QUFuQ0wsQUFLUSxlQUxPLENBR1gsZ0JBQWdCLENBRVosVUFBVSxDQUFDO0VBQ1AsTUFBTSxFQUFFLFNBQVU7RUFBRSxRQUFRLEVBQUUsUUFBUztDQUsxQzs7QUFYVCxBQU9ZLGVBUEcsQ0FHWCxnQkFBZ0IsQ0FFWixVQUFVLENBRU4sTUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVM7RUFBQyxVQUFVLEVBQUUsTUFBTztDQUUxQzs7QUFWYixBQVNnQixlQVRELENBR1gsZ0JBQWdCLENBRVosVUFBVSxDQUVOLE1BQU0sQ0FFRixHQUFHLENBQUM7RUFBQyxPQUFPLEVBQUUsWUFBYTtDQUFHOztBQVQ5QyxBQWFZLGVBYkcsQ0FHWCxnQkFBZ0IsQ0FTWixVQUFVLENBQ04sV0FBVyxDQUFDO0VBQUMsTUFBTSxFQUFFLGVBQWdCO0NBQUc7O0FBYnBELEFBY1ksZUFkRyxDQUdYLGdCQUFnQixDQVNaLFVBQVUsQ0FFTixZQUFZLENBQUM7RUFDVCxLQUFLLEVBQUUsS0FBTTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLE1BQU0sRUFBQyxTQUFVO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUNsOER4RyxrQkFBa0IsRURtOERhLFVBQVU7RUNsOER6QyxlQUFlLEVEazhEZ0IsVUFBVTtFQ2o4RHpDLFVBQVUsRURpOERxQixVQUFVO0VDOTlEekMsYUFBYSxFRCs5RHFCLEdBQUc7RUM5OURyQyxxQkFBcUIsRUQ4OURhLEdBQUc7RUM3OURyQyxrQkFBa0IsRUQ2OURnQixHQUFHO0VDNTlEckMsaUJBQWlCLEVENDlEaUIsR0FBRztFQzM5RHJDLGdCQUFnQixFRDI5RGtCLEdBQUc7Q0FnQjVCOztBQWpDYixBQWtCZ0IsZUFsQkQsQ0FHWCxnQkFBZ0IsQ0FTWixVQUFVLENBRU4sWUFBWSxDQUlSLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsTUFBTztFQUFFLFVBQVUsRUFBRSxNQUFPO0VDdDhEcEYsa0JBQWtCLEVEdThEaUIsVUFBVTtFQ3Q4RDdDLGVBQWUsRURzOERvQixVQUFVO0VDcjhEN0MsVUFBVSxFRHE4RHlCLFVBQVU7Q0FLaEM7O0FBekJqQixBQXFCb0IsZUFyQkwsQ0FHWCxnQkFBZ0IsQ0FTWixVQUFVLENBRU4sWUFBWSxDQUlSLE1BQU0sQ0FHRixHQUFHLENBQUM7RUFDQSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQUUsZUFBZSxFQUFFLGFBQWM7RUFDcEUsT0FBTyxFQUFFLFlBQWE7Q0FDekI7O0FBeEJyQixBQTBCZ0IsZUExQkQsQ0FHWCxnQkFBZ0IsQ0FTWixVQUFVLENBRU4sWUFBWSxDQVlSLEdBQUcsQ0FBQztFQUNBLE1BQU0sRUFBRSxJQUFLO0NBQ2hCOztBQTVCakIsQUE2QmdCLGVBN0JELENBR1gsZ0JBQWdCLENBU1osVUFBVSxDQUVOLFlBQVksQ0FlUixZQUFZLENBQUM7RUFDVCxNQUFNLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxNQUFPO0NBQ25DOztBQS9CakIsQUFjWSxlQWRHLENBR1gsZ0JBQWdCLENBU1osVUFBVSxDQUVOLFlBQVksQUFrQlAsY0FBYyxDQUFDO0VBQUMsWUFBWSxFQUFFLE9BQVE7Q0FBRzs7QUFoQzFELEFBb0NJLGVBcENXLENBb0NYLGFBQWEsQ0FBQztFQUNWLEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLE1BQU87RUFBRSxPQUFPLEVBQUUsYUFBYztFQ3g5RHpELGtCQUFrQixFRHk5REssVUFBVTtFQ3g5RGpDLGVBQWUsRUR3OURRLFVBQVU7RUN2OURqQyxVQUFVLEVEdTlEYSxVQUFVO0NBK0VoQzs7QUFySEwsQUF1Q1EsZUF2Q08sQ0FvQ1gsYUFBYSxDQUdULFFBQVEsQ0FBQztFQUNMLE9BQU8sRUFBRSxVQUFXO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFBRSxhQUFhLEVBQUUsaUJBQWtCO0NBa0MvRTs7QUExRVQsQUEwQ1ksZUExQ0csQ0FvQ1gsYUFBYSxDQUdULFFBQVEsQ0FHSixJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsTUFBTSxFQUFFLFVBQVc7Q0FRdkU7O0FBbkRiLEFBMENZLGVBMUNHLENBb0NYLGFBQWEsQ0FHVCxRQUFRLENBR0osSUFBSSxBQUVDLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxLQUFNO0NBQUc7O0FBNUN6QyxBQTBDWSxlQTFDRyxDQW9DWCxhQUFhLENBR1QsUUFBUSxDQUdKLElBQUksQUFHQyxZQUFZLENBQUM7RUFBQyxXQUFXLEVBQUUsaUJBQWtCO0VBQUUsWUFBWSxFQUFFLElBQUs7Q0FBRzs7QUE3Q3RGLEFBMENZLGVBMUNHLENBb0NYLGFBQWEsQ0FHVCxRQUFRLENBR0osSUFBSSxBQUlDLE1BQU0sQ0FBQztFQUNKLEtBQUssRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFDbEMsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsY0FBYyxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsSUFBSztDQUN2Qzs7QUFsRGpCLEFBb0RZLGVBcERHLENBb0NYLGFBQWEsQ0FHVCxRQUFRLENBYUosTUFBTSxDQUFDO0VBQ0gsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNoRyxjQUFjLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxPQUFRO0NBQzFDOztBQXZEYixBQXdEWSxlQXhERyxDQW9DWCxhQUFhLENBR1QsUUFBUSxDQWlCSixXQUFXLENBQUM7RUFDUixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxHQUFJO0VBQy9GLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztFQUFFLGVBQWUsRUFBQyxZQUFhO0NBS3hGOztBQS9EYixBQTJEZ0IsZUEzREQsQ0FvQ1gsYUFBYSxDQUdULFFBQVEsQ0FpQkosV0FBVyxDQUdQLEtBQUssQ0FBQztFQUNGLFVBQVUsRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsWUFBYTtFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsV0FBVyxFQUFFLEdBQUk7RUMxZ0U5RyxhQUFhLEVEMmdFeUIsR0FBRztFQzFnRXpDLHFCQUFxQixFRDBnRWlCLEdBQUc7RUN6Z0V6QyxrQkFBa0IsRUR5Z0VvQixHQUFHO0VDeGdFekMsaUJBQWlCLEVEd2dFcUIsR0FBRztFQ3ZnRXpDLGdCQUFnQixFRHVnRXNCLEdBQUc7Q0FDNUI7O0FBOURqQixBQXVDUSxlQXZDTyxDQW9DWCxhQUFhLENBR1QsUUFBUSxBQXlCSCxVQUFVLENBQUM7RUFDUixhQUFhLEVBQUUsQ0FBRTtFQUFFLGNBQWMsRUFBRSxDQUFFO0NBQ3hDOztBQWxFYixBQXVDUSxlQXZDTyxDQW9DWCxhQUFhLENBR1QsUUFBUSxBQTRCSCxRQUFRLENBQUM7RUFBQyxXQUFXLEVBQUUsSUFBSztDQUFHOztBQW5FNUMsQUFvRVksZUFwRUcsQ0FvQ1gsYUFBYSxDQUdULFFBQVEsQ0E2QkosSUFBSSxDQUFDO0VBQ0QsWUFBWSxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxNQUFPO0NBQzFEOztBQXRFYixBQXdFZ0IsZUF4RUQsQ0FvQ1gsYUFBYSxDQUdULFFBQVEsQ0FnQ0osYUFBYSxDQUNULElBQUksQ0FBQztFQUFDLE9BQU8sRUFBRSxNQUFPO0VBQUUsWUFBWSxFQUFFLENBQUU7Q0FBRzs7QUF4RTNELEFBMkVRLGVBM0VPLENBb0NYLGFBQWEsQ0F1Q1QsWUFBWSxDQUFDO0VBQ1QsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQ3RELFVBQVUsRUFBRSxxQ0FBRyxDQUFtQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU07Q0FDdkU7O0FBOUVULEFBZ0ZZLGVBaEZHLENBb0NYLGFBQWEsQ0EyQ1QsVUFBVSxDQUNOLFVBQVUsQ0FBQztFQUNQLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsVUFBVztFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUFDekYsVUFBVSxFQUFFLHNDQUFHLENBQW9DLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTTtDQUN4RTs7QUFuRmIsQUFzRlksZUF0RkcsQ0FvQ1gsYUFBYSxDQWlEVCxVQUFVLENBQ04sS0FBSyxDQUFDO0VBQ0YsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsU0FBVTtDQWNuQzs7QUFyR2IsQUF3RmdCLGVBeEZELENBb0NYLGFBQWEsQ0FpRFQsVUFBVSxDQUNOLEtBQUssQ0FFRCxLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUM3RCxVQUFVLEVBQUUsTUFBTztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsU0FBUyxFQUFFLElBQUs7Q0FVN0Q7O0FBcEdqQixBQTJGb0IsZUEzRkwsQ0FvQ1gsYUFBYSxDQWlEVCxVQUFVLENBQ04sS0FBSyxDQUVELEtBQUssQ0FHRCxLQUFLLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUFDekYsTUFBTSxFQUFDLGlCQUFrQjtFQzNpRTdDLGFBQWEsRUQ0aUU2QixHQUFHO0VDM2lFN0MscUJBQXFCLEVEMmlFcUIsR0FBRztFQzFpRTdDLGtCQUFrQixFRDBpRXdCLEdBQUc7RUN6aUU3QyxpQkFBaUIsRUR5aUV5QixHQUFHO0VDeGlFN0MsZ0JBQWdCLEVEd2lFMEIsR0FBRztDQUs1Qjs7QUFuR3JCLEFBMkZvQixlQTNGTCxDQW9DWCxhQUFhLENBaURULFVBQVUsQ0FDTixLQUFLLENBRUQsS0FBSyxDQUdELEtBQUssQUFJQSxRQUFRLENBQUM7RUFDTixVQUFVLEVBQUMsd0NBQUcsQ0FBc0MsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJO0VBQ3ZFLFlBQVksRUFBRSxPQUFRO0NBQ3pCOztBQWxHekIsQUF3R1EsZUF4R08sQ0FvQ1gsYUFBYSxDQW9FVCxNQUFNLEFBQ0QsVUFBVSxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVM7Q0FNdEI7O0FBaEhiLEFBMkdnQixlQTNHRCxDQW9DWCxhQUFhLENBb0VULE1BQU0sQUFDRCxVQUFVLENBRVAsSUFBSSxDQUFDO0VBQ0QsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLEdBQUk7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUMvRixjQUFjLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsT0FBTyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsVUFBVztFQUMvRSxVQUFVLEVBQUUsNENBQUcsQ0FBMEMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQ3pFOztBQS9HakIsQUF3R1EsZUF4R08sQ0FvQ1gsYUFBYSxDQW9FVCxNQUFNLEFBU0QsWUFBWSxDQUFDO0VBQ1YsS0FBSyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUNuQzs7QUFLYixBQUFBLGdCQUFnQixDQUFDO0VBQ2IsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLE9BQU8sRUFBRSxxQkFBc0I7RUFBRSxhQUFhLEVBQUUsSUFBSztDQWFuRjs7QUFkRCxBQUdJLGdCQUhZLENBR1osS0FBSyxDQUFDO0VBQ0YsS0FBSyxFQUFFLEtBQU07Q0FDaEI7O0FBTEwsQUFNSSxnQkFOWSxDQU1aLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxLQUFNO0NBQUc7O0FBTjVCLEFBT0ksZ0JBUFksQ0FPWixNQUFNLENBQUM7RUFDSCxTQUFTLEVBQUUsS0FBTTtFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxHQUFJO0VBQ2hHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsT0FBUTtDQUk5RDs7QUFiTCxBQVVRLGdCQVZRLENBT1osTUFBTSxDQUdGLElBQUksQ0FBQztFQUNELFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUNuRDs7QUFHVCxBQUNJLFlBRFEsQ0FDUixrQkFBa0IsQ0FBQztFQUNmLFFBQVEsRUFBRSxRQUFTO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztDQW9CM0Q7O0FBdEJMLEFBR1EsWUFISSxDQUNSLGtCQUFrQixDQUVkLEdBQUcsQ0FBQztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztDQUFHOztBQUhsRSxBQUlRLFlBSkksQ0FDUixrQkFBa0IsQ0FHZCxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFDLElBQUs7RUFDeEMsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FDOUU7O0FBUlQsQUFTUSxZQVRJLENBQ1Isa0JBQWtCLENBUWQsY0FBYyxDQUFDO0VBQ1gsTUFBTSxFQUFFLGFBQWM7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQzlELE1BQU0sRUFBRSxHQUFJO0VDcmtFcEIsa0JBQWtCLEVEc2tFUyxVQUFVO0VDcmtFckMsZUFBZSxFRHFrRVksVUFBVTtFQ3BrRXJDLFVBQVUsRURva0VpQixVQUFVO0VDam1FckMsYUFBYSxFRGttRWlCLEdBQUc7RUNqbUVqQyxxQkFBcUIsRURpbUVTLEdBQUc7RUNobUVqQyxrQkFBa0IsRURnbUVZLEdBQUc7RUMvbEVqQyxpQkFBaUIsRUQrbEVhLEdBQUc7RUM5bEVqQyxnQkFBZ0IsRUQ4bEVjLEdBQUc7Q0FNNUI7O0FBbkJULEFBY1ksWUFkQSxDQUNSLGtCQUFrQixDQVFkLGNBQWMsQ0FLVixNQUFNLENBQUM7RUFDSCxRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUMsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQ2pFLE9BQU8sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLE9BQVE7RUNybUU3QyxhQUFhLEVEc21FcUIsR0FBRztFQ3JtRXJDLHFCQUFxQixFRHFtRWEsR0FBRztFQ3BtRXJDLGtCQUFrQixFRG9tRWdCLEdBQUc7RUNubUVyQyxpQkFBaUIsRURtbUVpQixHQUFHO0VDbG1FckMsZ0JBQWdCLEVEa21Fa0IsR0FBRztDQUM1Qjs7QUFsQmIsQUFvQlEsWUFwQkksQ0FDUixrQkFBa0IsQ0FtQmQsTUFBTSxDQUFDO0VBQUMsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0NBQUc7O0FBcEIxRCxBQUNJLFlBRFEsQ0FDUixrQkFBa0IsQUFvQmIsV0FBVyxDQUFDO0VBQUMsYUFBYSxFQUFFLENBQUU7Q0FBRzs7QUFHMUMsQUFBQSxXQUFXLENBQUM7RUFDUixNQUFNLEVBQUUsaUJBQWtCO0VBQUUsT0FBTyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxNQUFPO0NBVXhGOztBQVhELEFBRUksV0FGTyxDQUVQLEVBQUUsQ0FBQztFQUNDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxPQUFRO0VBQUMsYUFBYSxFQUFFLEdBQUk7Q0FDbEY7O0FBTEwsQUFNSSxXQU5PLENBTVAsQ0FBQyxDQUFDO0VBQ0UsVUFBVSxFQUFFLE1BQU87RUFDbkIsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLE9BQVE7Q0FDOUQ7O0FBRUwsQUFBQSxZQUFZLENBQUM7RUFDVCxhQUFhLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxpQkFBa0I7RUFDaEQsT0FBTyxFQUFFLG1CQUFvQjtDQXVDaEM7O0FBekNELEFBR0ksWUFIUSxDQUdSLElBQUksQ0FBQztFQ2ptRUwsa0JBQWtCLEVEa21FSyxVQUFVO0VDam1FakMsZUFBZSxFRGltRVEsVUFBVTtFQ2htRWpDLFVBQVUsRURnbUVhLFVBQVU7Q0FHaEM7O0FBUEwsQUFHSSxZQUhRLENBR1IsSUFBSSxBQUVDLEtBQUssQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztDQUFHOztBQUx2RSxBQUdJLFlBSFEsQ0FHUixJQUFJLEFBR0MsTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBRSxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQU5uRCxBQVFJLFlBUlEsQ0FRUixJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLFlBQWE7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQ3ZGLFdBQVcsRUFBRSxJQUFLO0NBTXJCOztBQWhCTCxBQVFJLFlBUlEsQ0FRUixJQUFJLEFBR0MsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQ2hGLFVBQVUsRUFBRSx5Q0FBRyxDQUF1QyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07RUFDN0UsZUFBZSxFQUFFLElBQUs7Q0FDekI7O0FBZlQsQUFpQkksWUFqQlEsQ0FpQlIsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLEtBQU07RUFBRSxjQUFjLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxVQUFXO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsVUFBVztFQUNoRyxXQUFXLEVBQUUsSUFBSztDQW9CckI7O0FBdkNMLEFBcUJZLFlBckJBLENBaUJSLElBQUksQUFHQyxPQUFPLENBQ0osSUFBSSxDQUFDO0VBQ0QsWUFBWSxFQUFFLElBQUs7Q0FPdEI7O0FBN0JiLEFBcUJZLFlBckJBLENBaUJSLElBQUksQUFHQyxPQUFPLENBQ0osSUFBSSxBQUVDLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsR0FBSTtFQUNyRixVQUFVLEVBQUUsNkNBQUcsQ0FBMkMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VBQ2pGLGVBQWUsRUFBRSxTQUFVO0VDMXBFM0MsU0FBUyxFRDJwRTBCLGdCQUFVO0VDMXBFN0MsaUJBQWlCLEVEMHBFa0IsZ0JBQVU7RUN6cEU3QyxjQUFjLEVEeXBFcUIsZ0JBQVU7RUN4cEU3QyxhQUFhLEVEd3BFc0IsZ0JBQVU7RUN2cEU3QyxZQUFZLEVEdXBFdUIsZ0JBQVU7Q0FDaEM7O0FBNUJqQixBQStCZ0IsWUEvQkosQ0FpQlIsSUFBSSxBQUdDLE9BQU8sQUFVSCxNQUFNLENBQ0gsSUFBSSxBQUNDLE9BQU8sQ0FBQztFQUNMLFVBQVUsRUFBRSxpREFBRyxDQUErQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07RUFDckYsZUFBZSxFQUFFLFNBQVU7Q0FDOUI7O0FBT3JCLEFBQUEsYUFBYSxDQUFDO0VBQ1YsY0FBYyxFQUFFLElBQUs7Q0FzQ3hCOztBQXZDRCxBQUVJLGFBRlMsQ0FFVCxLQUFLLENBQUM7RUFDRixNQUFNLEVBQUUsaUJBQWtCO0VBQUMsT0FBTyxFQUFFLG9CQUFxQjtFQUFDLGFBQWEsRUFBRSxJQUFLO0NBOEJqRjs7QUFqQ0wsQUFLWSxhQUxDLENBRVQsS0FBSyxDQUVELFlBQVksQ0FDUixFQUFFLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxZQUFhO0NBQUc7O0FBTHpELEFBTVksYUFOQyxDQUVULEtBQUssQ0FFRCxZQUFZLENBRVIsQ0FBQyxDQUFDO0VBQ0UsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUMsYUFBYSxFQUFFLElBQUs7Q0FDNUQ7O0FBVGIsQUFZZ0IsYUFaSCxDQUVULEtBQUssQ0FFRCxZQUFZLENBTVIsU0FBUyxDQUVMLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFVBQVc7Q0FJcEM7O0FBakJqQixBQWNvQixhQWRQLENBRVQsS0FBSyxDQUVELFlBQVksQ0FNUixTQUFTLENBRUwsS0FBSyxDQUVELEdBQUcsQ0FBQztFQ2pyRXBCLGFBQWEsRURrckU2QixHQUFHO0VDanJFN0MscUJBQXFCLEVEaXJFcUIsR0FBRztFQ2hyRTdDLGtCQUFrQixFRGdyRXdCLEdBQUc7RUMvcUU3QyxpQkFBaUIsRUQrcUV5QixHQUFHO0VDOXFFN0MsZ0JBQWdCLEVEOHFFMEIsR0FBRztDQUM1Qjs7QUFoQnJCLEFBRUksYUFGUyxDQUVULEtBQUssQUFrQkEsSUFBSSxDQUFDO0VBQ0YsVUFBVSxFQUFFLE9BQVE7Q0FXdkI7O0FBaENULEFBdUJnQixhQXZCSCxDQUVULEtBQUssQUFrQkEsSUFBSSxDQUVELFlBQVksQ0FDUixFQUFFLENBQUM7RUFBQyxZQUFZLEVBQUUsSUFBSztDQUFHOztBQXZCMUMsQUF5QlksYUF6QkMsQ0FFVCxLQUFLLEFBa0JBLElBQUksQ0FLRCxHQUFHLENBQUM7RUFBQyxjQUFjLEVBQUUsR0FBSTtDQUFHOztBQXpCeEMsQUEyQmdCLGFBM0JILENBRVQsS0FBSyxBQWtCQSxJQUFJLENBTUQsUUFBUSxDQUNKLEtBQUssQ0FBQztFQUNGLE9BQU8sRUFBRSxtQkFBb0I7RUFBRSxXQUFXLEVBQUUsQ0FBRTtFQUFFLFlBQVksRUFBRSxDQUFFO0VBQUUsYUFBYSxFQUFFLENBQUU7Q0FFdEY7O0FBOUJqQixBQTJCZ0IsYUEzQkgsQ0FFVCxLQUFLLEFBa0JBLElBQUksQ0FNRCxRQUFRLENBQ0osS0FBSyxBQUVBLFdBQVcsQ0FBQztFQUFDLGFBQWEsRUFBQyxDQUFFO0NBQUc7O0FBN0JyRCxBQW9DWSxhQXBDQyxBQWtDUixRQUFRLENBQ0wsWUFBWSxDQUNSLEVBQUUsQ0FBQztFQUFDLE1BQU0sRUFBQyxhQUFjO0NBQUc7O0FBS3hDLEFBRUksUUFGSSxDQUVKLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VDcHJFaEIsa0JBQWtCLEVEcXJFSyxVQUFVO0VDcHJFakMsZUFBZSxFRG9yRVEsVUFBVTtFQ25yRWpDLFVBQVUsRURtckVhLFVBQVU7Q0F3Q2hDOztBQTVDTCxBQUVJLFFBRkksQ0FFSixJQUFJLEFBR0MsSUFBSSxDQUFDO0VBQ0YsS0FBSyxFQUFFLEtBQU07RUFBRSxZQUFZLEVBQUUsS0FBTTtDQVd0Qzs7QUFqQlQsQUFPWSxRQVBKLENBRUosSUFBSSxBQUdDLElBQUksQ0FFRCxRQUFRLENBQUM7RUFDTCxNQUFNLEVBQUUsVUFBVztDQUl0Qjs7QUFaYixBQU9ZLFFBUEosQ0FFSixJQUFJLEFBR0MsSUFBSSxDQUVELFFBQVEsQUFFSCxRQUFRLENBQUM7RUFDTixVQUFVLEVBQUUsSUFBSztDQUNwQjs7QUFYakIsQUFhWSxRQWJKLENBRUosSUFBSSxBQUdDLElBQUksQ0FRRCxNQUFNLENBQUM7RUFDSCxXQUFXLEVBQUUsQ0FBRTtDQUNsQjs7QUFmYixBQWdCWSxRQWhCSixDQUVKLElBQUksQUFHQyxJQUFJLENBV0QsQ0FBQyxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsTUFBTztFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztDQUFHOztBQWhCMUcsQUFFSSxRQUZJLENBRUosSUFBSSxBQWdCQyxLQUFLLENBQUM7RUFDSCxLQUFLLEVBQUUsS0FBTTtDQWVoQjs7QUFsQ1QsQUFvQlksUUFwQkosQ0FFSixJQUFJLEFBZ0JDLEtBQUssQ0FFRixDQUFDLENBQUM7RUFDRSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0NBQzdDOztBQXZCYixBQXdCWSxRQXhCSixDQUVKLElBQUksQUFnQkMsS0FBSyxDQU1GLGFBQWEsQ0FBQztFQUNWLE9BQU8sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQUUsYUFBYSxFQUFFLElBQUs7RUNydUVoRyxhQUFhLEVEc3VFcUIsR0FBRztFQ3J1RXJDLHFCQUFxQixFRHF1RWEsR0FBRztFQ3B1RXJDLGtCQUFrQixFRG91RWdCLEdBQUc7RUNudUVyQyxpQkFBaUIsRURtdUVpQixHQUFHO0VDbHVFckMsZ0JBQWdCLEVEa3VFa0IsR0FBRztDQU81Qjs7QUFqQ2IsQUEyQmdCLFFBM0JSLENBRUosSUFBSSxBQWdCQyxLQUFLLENBTUYsYUFBYSxDQUdULE1BQU0sQ0FBQztFQUFDLGFBQWEsRUFBRSxJQUFLO0NBQUc7O0FBM0IvQyxBQTRCaUIsUUE1QlQsQ0FFSixJQUFJLEFBZ0JDLEtBQUssQ0FNRixhQUFhLENBSVQsQ0FBQyxBQUFBLEtBQUssQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFNBQVU7RUFBRSxVQUFVLEVBQUUsTUFBTztDQUFHOztBQTVCaEYsQUE2QmlCLFFBN0JULENBRUosSUFBSSxBQWdCQyxLQUFLLENBTUYsYUFBYSxDQUtULENBQUMsQUFBQSxPQUFPLENBQUM7RUFDTCxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFDN0MsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztDQUNuRzs7QUFoQ2pCLEFBb0NZLFFBcENKLENBRUosSUFBSSxDQWlDQSxnQkFBZ0IsQ0FDWixRQUFRLENBQUM7RUFBQyxNQUFNLEVBQUMsVUFBVztFQUFDLE1BQU0sRUFBRSxLQUFNO0NBQUc7O0FBcEMxRCxBQUVJLFFBRkksQ0FFSixJQUFJLEFBb0NDLE9BQU8sQ0FBQztFQUNMLE1BQU0sRUFBRSxNQUFPO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztDQUlyRDs7QUEzQ1QsQUF3Q1ksUUF4Q0osQ0FFSixJQUFJLEFBb0NDLE9BQU8sQ0FFSixDQUFDLENBQUM7RUFBQyxVQUFVLEVBQUUsTUFBTztDQUFHOztBQXhDckMsQUF5Q1ksUUF6Q0osQ0FFSixJQUFJLEFBb0NDLE9BQU8sQ0FHSixLQUFLLENBQUM7RUFBQyxVQUFVLEVBQUUsTUFBTztDQUFHOztBQXpDekMsQUEwQ1ksUUExQ0osQ0FFSixJQUFJLEFBb0NDLE9BQU8sQ0FJSixJQUFJLENBQUM7RUFBQyxNQUFNLEVBQUUsQ0FBRTtDQUFHOztBQTFDL0IsQUE4Q1EsUUE5Q0EsQUE2Q0gsT0FBTyxDQUNKLElBQUksQUFDQyxJQUFJLENBQUM7RUFDRixLQUFLLEVBQUUsS0FBTTtFQUFFLFlBQVksRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLEtBQU07Q0FDMUQ7O0FBakRiLEFBOENRLFFBOUNBLEFBNkNILE9BQU8sQ0FDSixJQUFJLEFBSUMsS0FBSyxDQUFDO0VBQUMsS0FBSyxFQUFFLEtBQU07Q0FBRzs7QUFsRHBDLEFBQUEsUUFBUSxBQTZDSCxPQUFPLEFBT0gsWUFBWSxDQUFDO0VBQ1YsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxNQUFPO0NBSW5EOztBQXpEVCxBQXNEWSxRQXRESixBQTZDSCxPQUFPLEFBT0gsWUFBWSxDQUVULFFBQVEsQ0FBQztFQUNMLE9BQU8sRUFBRSxhQUFjO0NBQzFCOztBQUliLEFBQUEsTUFBTSxDQUFDO0VBQ0gsS0FBSyxFQUFFLE9BQVE7Q0FHbEI7O0FBSkQsQUFBQSxNQUFNLEFBRUQsTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFGNUIsQUFBQSxNQUFNLEFBR0QsTUFBTSxDQUFDO0VBQUMsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFHOztBQUVwRCxBQUFBLGFBQWEsQ0FBQztFQUNWLGFBQWEsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtDQW9DbEQ7O0FBckNELEFBRUksYUFGUyxDQUVULEtBQUssQ0FBQztFQUNGLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUMvQyxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2xHLGNBQWMsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FDdkM7O0FBTkwsQUFPSSxhQVBTLENBT1QsUUFBUSxDQUFDO0VBQ0wsVUFBVSxFQUFDLGlCQUFrQjtDQUVoQzs7QUFWTCxBQU9JLGFBUFMsQ0FPVCxRQUFRLEFBRUgsWUFBWSxDQUFDO0VBQUMsVUFBVSxFQUFFLENBQUU7Q0FBRzs7QUFUeEMsQUFXSSxhQVhTLENBV1QsVUFBVSxDQUFDO0VBQ1AsTUFBTSxFQUFFLE9BQVE7Q0FhbkI7O0FBekJMLEFBV0ksYUFYUyxDQVdULFVBQVUsQUFFSixNQUFNLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLElBQUs7RUFDdkYsVUFBVSxFQUFFLDRDQUFHLENBQTBDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQzF5RXhGLFVBQVUsRUQyeUVrQixHQUFHLENBQUMsS0FBSSxDQUFDLFFBQVE7RUMxeUU3QyxrQkFBa0IsRUQweUVVLEdBQUcsQ0FBQyxLQUFJLENBQUMsUUFBUTtFQ3p5RTdDLGVBQWUsRUR5eUVhLEdBQUcsQ0FBQyxLQUFJLENBQUMsUUFBUTtFQ3h5RTdDLGNBQWMsRUR3eUVjLEdBQUcsQ0FBQyxLQUFJLENBQUMsUUFBUTtFQ3Z5RTdDLGFBQWEsRUR1eUVlLEdBQUcsQ0FBQyxLQUFJLENBQUMsUUFBUTtDQUN4Qzs7QUFqQlQsQUFXSSxhQVhTLENBV1QsVUFBVSxBQU9MLEtBQUssQ0FBQztFQUNILGFBQWEsRUFBQyxpQkFBa0I7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUl2RDs7QUF2QlQsQUFXSSxhQVhTLENBV1QsVUFBVSxBQU9MLEtBQUssQUFFRCxNQUFNLENBQUM7RUN4eUVoQixTQUFTLEVEeXlFc0IsYUFBTTtFQ3h5RXJDLGlCQUFpQixFRHd5RWMsYUFBTTtFQ3Z5RXJDLGNBQWMsRUR1eUVpQixhQUFNO0VDdHlFckMsYUFBYSxFRHN5RWtCLGFBQU07RUNyeUVyQyxZQUFZLEVEcXlFbUIsYUFBTTtDQUM1Qjs7QUF0QmIsQUEwQkksYUExQlMsQ0EwQlQsWUFBWSxDQUFDO0VBQ1QsT0FBTyxFQUFFLFNBQVU7RUFBRSxTQUFTLEVBQUUsSUFBSztDQVN4Qzs7QUFwQ0wsQUE0QlEsYUE1QkssQ0EwQlQsWUFBWSxDQUVSLEVBQUUsQ0FBQztFQUNDLGFBQWEsRUFBRSxDQUFFO0NBRXBCOztBQS9CVCxBQThCWSxhQTlCQyxDQTBCVCxZQUFZLENBRVIsRUFBRSxDQUVFLEVBQUUsQ0FBQztFQUFDLFNBQVMsRUFBRSxJQUFLO0NBQUc7O0FBOUJuQyxBQWdDUSxhQWhDSyxDQTBCVCxZQUFZLENBTVIsRUFBRSxDQUFDO0VBQ0MsYUFBYSxFQUFFLENBQUU7Q0FFcEI7O0FBbkNULEFBa0NZLGFBbENDLENBMEJULFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxDQUFDO0VBQUMsU0FBUyxFQUFFLElBQUs7Q0FBRzs7QUFLbkMsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLFFBQVEsRUFBRSxRQUFTO0NBbUJ0Qjs7QUFwQkQsQUFFSSxnQkFGWSxDQUVaLFdBQVcsQ0FBQztFQUNSLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLE1BQU0sRUFBRSxDQUFFO0NBZ0JyRTs7QUFuQkwsQUFJUSxnQkFKUSxDQUVaLFdBQVcsQ0FFUCxFQUFFLENBQUM7RUFDQyxPQUFPLEVBQUUsWUFBYTtFQUFFLE1BQU0sRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUN2MEU3RyxVQUFVLEVEdzBFa0IsR0FBRyxDQUFDLElBQUcsQ0FBQyxXQUFXO0VDdjBFL0Msa0JBQWtCLEVEdTBFVSxHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUN0MEUvQyxlQUFlLEVEczBFYSxHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUNyMEUvQyxjQUFjLEVEcTBFYyxHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7RUNwMEUvQyxhQUFhLEVEbzBFZSxHQUFHLENBQUMsSUFBRyxDQUFDLFdBQVc7Q0FZMUM7O0FBbEJULEFBT1ksZ0JBUEksQ0FFWixXQUFXLENBRVAsRUFBRSxDQUdFLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxXQUFXLEVBQUUsU0FBVTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUM5RixRQUFRLEVBQUUsUUFBUztFQUFFLEdBQUcsRUFBRSxHQUFJO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsSUFBSztFQzd6RXZFLGFBQWEsRUQ4ekVxQixHQUFHO0VDN3pFckMscUJBQXFCLEVENnpFYSxHQUFHO0VDNXpFckMsa0JBQWtCLEVENHpFZ0IsR0FBRztFQzN6RXJDLGlCQUFpQixFRDJ6RWlCLEdBQUc7RUMxekVyQyxnQkFBZ0IsRUQwekVrQixHQUFHO0NBQzVCOztBQVhiLEFBSVEsZ0JBSlEsQ0FFWixXQUFXLENBRVAsRUFBRSxBQVFHLGFBQWEsQ0FBQztFQUNYLEtBQUssRUFBRSxJQUFLO0NBSWY7O0FBakJiLEFBY2dCLGdCQWRBLENBRVosV0FBVyxDQUVQLEVBQUUsQUFRRyxhQUFhLENBRVYsTUFBTSxDQUFDO0VBQ0gsVUFBVSxFQUFFLE9BQVE7Q0FDdkI7O0FBTWpCLEFBRUksYUFGUyxDQUVULEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFVBQVc7Q0EwQnBDOztBQTdCTCxBQUVJLGFBRlMsQ0FFVCxLQUFLLEFBRUEsTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBRSxZQUFZLEVBQUUsSUFBSztDQUFHOztBQUpwRCxBQUVJLGFBRlMsQ0FFVCxLQUFLLEFBR0EsV0FBVyxDQUFDO0VBQUMsWUFBWSxFQUFDLENBQUU7Q0FBRzs7QUFMeEMsQUFNUSxhQU5LLENBRVQsS0FBSyxDQUlELEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQzFELFVBQVUsRUFBRSxNQUFPO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxTQUFVO0NBZ0JsRjs7QUF4QlQsQUFTWSxhQVRDLENBRVQsS0FBSyxDQUlELEtBQUssQ0FHRCxLQUFLLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUFDekYsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLEdBQUcsRUFBRSxDQUFFO0VDcjFFOUMsYUFBYSxFRHMxRXFCLEdBQUc7RUNyMUVyQyxxQkFBcUIsRURxMUVhLEdBQUc7RUNwMUVyQyxrQkFBa0IsRURvMUVnQixHQUFHO0VDbjFFckMsaUJBQWlCLEVEbTFFaUIsR0FBRztFQ2wxRXJDLGdCQUFnQixFRGsxRWtCLEdBQUc7Q0FNNUI7O0FBbEJiLEFBU1ksYUFUQyxDQUVULEtBQUssQ0FJRCxLQUFLLENBR0QsS0FBSyxBQUlBLFFBQVEsQ0FBQztFQUNOLFVBQVUsRUFBQywyQ0FBRyxDQUF5QyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUk7RUFDMUUsWUFBWSxFQUFFLE9BQVE7RUFDdEIsZUFBZSxFQUFFLFNBQVU7Q0FDOUI7O0FBakJqQixBQW1CWSxhQW5CQyxDQUVULEtBQUssQ0FJRCxLQUFLLENBYUQsQ0FBQyxDQUFDO0VBQ0UsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFDM0UsTUFBTSxFQUFFLENBQUU7Q0FDYjs7QUF2QmIsQUF5QmEsYUF6QkEsQ0FFVCxLQUFLLENBdUJELEtBQUssQUFBQSxNQUFNLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0VDejBFaEYsa0JBQWtCLEVEMDBFUyxVQUFVO0VDejBFckMsZUFBZSxFRHkwRVksVUFBVTtFQ3gwRXJDLFVBQVUsRUR3MEVpQixVQUFVO0NBQ2hDOztBQTVCVCxBQStCUSxhQS9CSyxBQThCUixHQUFHLENBQ0EsS0FBSyxDQUFDO0VBQ0YsWUFBWSxFQUFFLElBQUs7Q0FPdEI7O0FBdkNULEFBaUNZLGFBakNDLEFBOEJSLEdBQUcsQ0FDQSxLQUFLLENBRUQsS0FBSyxDQUFDO0VBQ0YsT0FBTyxFQUFFLFNBQVU7Q0FJdEI7O0FBdENiLEFBbUNxQixhQW5DUixBQThCUixHQUFHLENBQ0EsS0FBSyxDQUVELEtBQUssQ0FFRCxLQUFLLEFBQUEsTUFBTSxDQUFDO0VBQ1IsT0FBTyxFQUFFLENBQUU7Q0FDZDs7QUFyQ2pCLEFBMENRLGFBMUNLLEFBeUNSLEdBQUcsQ0FDQSxLQUFLLENBQUM7RUFDRixZQUFZLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLEtBQU07Q0FXL0Q7O0FBdERULEFBNENZLGFBNUNDLEFBeUNSLEdBQUcsQ0FDQSxLQUFLLENBRUQsS0FBSyxDQUFDO0VBQ0YsT0FBTyxFQUFFLGdCQUFpQjtFQUFFLGNBQWMsRUFBRSxNQUFPO0NBQ3REOztBQTlDYixBQStDWSxhQS9DQyxBQXlDUixHQUFHLENBQ0EsS0FBSyxDQUtELFVBQVUsQ0FBQztFQUNQLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFBRSxZQUFZLEVBQUUsSUFBSztFQUNwRSxNQUFNLEVBQUUsSUFBSztDQUNoQjs7QUFsRGIsQUFtRFksYUFuREMsQUF5Q1IsR0FBRyxDQUNBLEtBQUssQ0FTRCxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FDakU7O0FBckRiLEFBd0RZLGFBeERDLEFBeUNSLEdBQUcsQUFjQyxVQUFVLENBQ1AsS0FBSyxDQUFDO0VBQ0YsYUFBYSxFQUFFLElBQUs7Q0FFdkI7O0FBM0RiLEFBMERxQixhQTFEUixBQXlDUixHQUFHLEFBY0MsVUFBVSxDQUNQLEtBQUssQ0FFRCxLQUFLLEFBQUEsTUFBTSxDQUFDO0VBQUMsT0FBTyxFQUFFLENBQUU7Q0FBRzs7QUExRDNDLEFBK0RTLGFBL0RJLEFBOERSLEdBQUcsQ0FDQyxLQUFLLENBQUM7RUFDSCxLQUFLLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQUUsTUFBTSxFQUFDLFVBQVc7RUMvMkU3RCxrQkFBa0IsRURnM0VTLFVBQVU7RUMvMkVyQyxlQUFlLEVEKzJFWSxVQUFVO0VDOTJFckMsVUFBVSxFRDgyRWlCLFVBQVU7Q0FJaEM7O0FBckVULEFBa0VZLGFBbEVDLEFBOERSLEdBQUcsQ0FDQyxLQUFLLENBR0YsS0FBSyxDQUFDO0VBQ0YsT0FBTyxFQUFFLElBQUs7Q0FDakI7O0FBcEViLEFBd0VRLGFBeEVLLEFBdUVSLFFBQVEsQ0FDTCxLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQUUsTUFBTSxFQUFDLFVBQVc7RUN4M0U3RCxrQkFBa0IsRUR5M0VTLFVBQVU7RUN4M0VyQyxlQUFlLEVEdzNFWSxVQUFVO0VDdjNFckMsVUFBVSxFRHUzRWlCLFVBQVU7Q0FpQ2hDOztBQTNHVCxBQTJFWSxhQTNFQyxBQXVFUixRQUFRLENBQ0wsS0FBSyxDQUdELEtBQUssQ0FBQztFQUNGLE9BQU8sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLElBQUs7Q0E2QmpDOztBQXpHYixBQThFZ0IsYUE5RUgsQUF1RVIsUUFBUSxDQUNMLEtBQUssQ0FHRCxLQUFLLENBR0QsS0FBSyxDQUFDO0VBQ0YsV0FBVyxFQUFFLENBQUU7RUN6NUUvQixhQUFhLEVEMDVFeUIsQ0FBQztFQ3o1RXZDLHFCQUFxQixFRHk1RWlCLENBQUM7RUN4NUV2QyxrQkFBa0IsRUR3NUVvQixDQUFDO0VDdjVFdkMsaUJBQWlCLEVEdTVFcUIsQ0FBQztFQ3Q1RXZDLGdCQUFnQixFRHM1RXNCLENBQUM7Q0FPMUI7O0FBdkZqQixBQThFZ0IsYUE5RUgsQUF1RVIsUUFBUSxDQUNMLEtBQUssQ0FHRCxLQUFLLENBR0QsS0FBSyxBQUdBLFFBQVEsQ0FBQztFQUNOLFlBQVksRUFBQyxPQUFRO0VBQ3JCLFdBQVcsRUFBRSxDQUFFO0VBQ2YsVUFBVSxFQUE4Qyw2Q0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSTtFQzk1RWpHLGFBQWEsRUQrNUU2QixDQUFDO0VDOTVFM0MscUJBQXFCLEVEODVFcUIsQ0FBQztFQzc1RTNDLGtCQUFrQixFRDY1RXdCLENBQUM7RUM1NUUzQyxpQkFBaUIsRUQ0NUV5QixDQUFDO0VDMzVFM0MsZ0JBQWdCLEVEMjVFMEIsQ0FBQztDQUMxQjs7QUF0RnJCLEFBd0ZnQixhQXhGSCxBQXVFUixRQUFRLENBQ0wsS0FBSyxDQUdELEtBQUssQ0FhRCxTQUFTLENBQUM7RUFDTixVQUFVLEVBQUUsMENBQUcsQ0FBd0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0VBQ3BFLEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQy9ELGVBQWUsRUFBRSxTQUFVO0VBQzNCLEtBQUssRUFBRSxJQUFLO0VBQ1osUUFBUSxFQUFFLFFBQVM7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VDNTRFdEQsa0JBQWtCLEVENjRFaUIsVUFBVTtFQzU0RTdDLGVBQWUsRUQ0NEVvQixVQUFVO0VDMzRFN0MsVUFBVSxFRDI0RXlCLFVBQVU7Q0FHaEM7O0FBakdqQixBQStGb0IsYUEvRlAsQUF1RVIsUUFBUSxDQUNMLEtBQUssQ0FHRCxLQUFLLENBYUQsU0FBUyxDQU9MLE1BQU0sQ0FBQztFQUFDLFNBQVMsRUFBRSxHQUFJO0VBQUMsT0FBTyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsQ0FBRTtDQUFHOztBQS9GMUUsQUFnR29CLGFBaEdQLEFBdUVSLFFBQVEsQ0FDTCxLQUFLLENBR0QsS0FBSyxDQWFELFNBQVMsQ0FRTCxRQUFRLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLENBQUU7Q0FBRzs7QUFoRzlFLEFBa0dnQixhQWxHSCxBQXVFUixRQUFRLENBQ0wsS0FBSyxDQUdELEtBQUssQ0F1QkQsS0FBSyxDQUFDO0VBQ0YsS0FBSyxFQUFFLEtBQU07RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxnQkFBaUI7RUFDdkQsVUFBVSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQ241RXJELGtCQUFrQixFRG81RWlCLFVBQVU7RUNuNUU3QyxlQUFlLEVEbTVFb0IsVUFBVTtFQ2w1RTdDLFVBQVUsRURrNUV5QixVQUFVO0NBR2hDOztBQXhHakIsQUFzR29CLGFBdEdQLEFBdUVSLFFBQVEsQ0FDTCxLQUFLLENBR0QsS0FBSyxDQXVCRCxLQUFLLENBSUQsTUFBTSxDQUFDO0VBQUMsU0FBUyxFQUFFLEdBQUk7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0NBQUc7O0FBdEc3RSxBQXVHb0IsYUF2R1AsQUF1RVIsUUFBUSxDQUNMLEtBQUssQ0FHRCxLQUFLLENBdUJELEtBQUssQ0FLRCxTQUFTLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUF2R2pGLEFBd0VRLGFBeEVLLEFBdUVSLFFBQVEsQ0FDTCxLQUFLLEFBa0NBLFVBQVcsQ0FBQSxJQUFJLEVBQUU7RUFBQyxPQUFPLEVBQUUsVUFBVztDQUFHOztBQTFHdEQsQUE4R1EsYUE5R0ssQUE2R1IsVUFBVSxDQUNQLEtBQUssQ0FBQztFQUFDLGFBQWEsRUFBRSxJQUFLO0NBQUc7O0FBR3RDLEFBQ0ksU0FESyxDQUNMLFNBQVMsQ0FBQTtFQUNMLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEtBQU07RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxPQUFPLEVBQUUsTUFBTztFQUM3RixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxjQUFjLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFBRSxVQUFVLEVBQUUsVUFBVztFQUFFLFFBQVEsRUFBRSxRQUFTO0NBRzFHOztBQVBMLEFBS1EsU0FMQyxDQUNMLFNBQVMsQ0FJTCxJQUFJLENBQUE7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFVBQVUsRUFBb0MsbUNBQUMsQ0FBQyxTQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFNBQVMsRUFBRSxxQkFBUztFQUFhLElBQUksRUFBRSxHQUFJO0VBQUUsR0FBRyxFQUFFLEdBQUk7Q0FBSTs7QUFMckwsQUFNUSxTQU5DLENBQ0wsU0FBUyxDQUtMLEVBQUUsQ0FBQTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsU0FBUyxFQUFFLHFCQUFTO0VBQWEsSUFBSSxFQUFFLEdBQUk7RUFBRSxHQUFHLEVBQUUsR0FBSTtDQUFJOztBQU4zRixBQVFJLFNBUkssQ0FRTCxXQUFXLENBQUM7RUFDUixhQUFhLEVBQUUsSUFBSztDQU92Qjs7QUFoQkwsQUN0NkVJLFNEczZFSyxDQVFMLFdBQVcsQ0M5NkVYLDJCQUEyQixDQUFDO0VEaTdFRixLQUFLLEVBQUUsSUFBSztDQ2o3RUM7O0FEczZFM0MsQUNyNkVJLFNEcTZFSyxDQVFMLFdBQVcsQ0M3NkVYLGlCQUFpQixDQUFXO0VEZzdFRixLQUFLLEVBQUUsSUFBSztDQ2g3RUM7O0FEcTZFM0MsQUNwNkVJLFNEbzZFSyxDQVFMLFdBQVcsQ0M1NkVYLGtCQUFrQixDQUFVO0VEKzZFRixLQUFLLEVBQUUsSUFBSztDQy82RUM7O0FEbzZFM0MsQUNuNkVJLFNEbTZFSyxDQVFMLFdBQVcsQ0MzNkVYLHNCQUFzQixDQUFNO0VEODZFRixLQUFLLEVBQUUsSUFBSztDQzk2RUM7O0FEbTZFM0MsQUFRSSxTQVJLLENBUUwsV0FBVyxBQUlOLFdBQVcsQ0FBQztFQUNULGFBQWEsRUFBRSxJQUFLO0NBQ3ZCOztBQWRULEFBUUksU0FSSyxDQVFMLFdBQVcsQUFPTixPQUFPLENBQUM7RUFBQyxXQUFXLEVBQUUsSUFBSztDQUFHOztBQWZ2QyxBQWlCSSxTQWpCSyxDQWlCTCxXQUFXLENBQUM7RUFDUixPQUFPLEVBQUUsYUFBYztFQUN2QixNQUFNLEVBQUMsWUFBYTtDQUd2Qjs7QUF0QkwsQUN0NkVJLFNEczZFSyxDQWlCTCxXQUFXLENDdjdFWCwyQkFBMkIsQ0FBQztFRDI3RUYsS0FBSyxFQUFFLElBQUs7Q0MzN0VDOztBRHM2RTNDLEFDcjZFSSxTRHE2RUssQ0FpQkwsV0FBVyxDQ3Q3RVgsaUJBQWlCLENBQVc7RUQwN0VGLEtBQUssRUFBRSxJQUFLO0NDMTdFQzs7QURxNkUzQyxBQ3A2RUksU0RvNkVLLENBaUJMLFdBQVcsQ0NyN0VYLGtCQUFrQixDQUFVO0VEeTdFRixLQUFLLEVBQUUsSUFBSztDQ3o3RUM7O0FEbzZFM0MsQUNuNkVJLFNEbTZFSyxDQWlCTCxXQUFXLENDcDdFWCxzQkFBc0IsQ0FBTTtFRHc3RUYsS0FBSyxFQUFFLElBQUs7Q0N4N0VDOztBRG02RTNDLEFBdUJJLFNBdkJLLENBdUJMLE1BQU0sQ0FBQztFQUFDLFFBQVEsRUFBRSxRQUFTO0NBQUc7O0FBdkJsQyxBQXdCSSxTQXhCSyxDQXdCTCxJQUFJLENBQUM7RUFBQyxZQUFZLEVBQUUsSUFBSztDQUFHOztBQXhCaEMsQUF5QkksU0F6QkssQ0F5QkwsT0FBTyxDQUFDO0VBQ0osU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLE9BQU8sRUFBRSxZQUFhO0NBQzVEOztBQTNCTCxBQTRCSSxTQTVCSyxDQTRCTCxNQUFNLENBQUM7RUFBQyxNQUFNLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQUUsWUFBWSxFQUFFLElBQUs7Q0FBRzs7QUE1QmhFLEFBNkJJLFNBN0JLLENBNkJMLEtBQUssQ0FBQztFQUNGLE9BQU8sRUFBRSxLQUFNO0VBQ2YsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLENBQUU7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FDekU7O0FBakNMLEFBa0NTLFNBbENBLENBa0NMLEtBQUssQUFBQSxNQUFNLENBQUM7RUFDUixPQUFPLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsU0FBVTtDQUN0RTs7QUFwQ0wsQUFxQ0ksU0FyQ0ssQ0FxQ0wsS0FBSyxFQXJDVCxBQXFDVyxTQXJDRixDQXFDRSxRQUFRLENBQUM7RUFDWixLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VBQUUsT0FBTyxFQUFFLE1BQU87RUFDNUYsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0VDeDhFMUQsa0JBQWtCLEVEeThFSyxVQUFVO0VDeDhFakMsZUFBZSxFRHc4RVEsVUFBVTtFQ3Y4RWpDLFVBQVUsRUR1OEVhLFVBQVU7RUNwK0VqQyxhQUFhLEVEcStFYSxHQUFHO0VDcCtFN0IscUJBQXFCLEVEbytFSyxHQUFHO0VDbitFN0Isa0JBQWtCLEVEbStFUSxHQUFHO0VDbCtFN0IsaUJBQWlCLEVEaytFUyxHQUFHO0VDaitFN0IsZ0JBQWdCLEVEaStFVSxHQUFHO0VDbi9FN0IsVUFBVSxFRG8vRWMsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbi9FNUMsa0JBQWtCLEVEbS9FTSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNsL0U1QyxlQUFlLEVEay9FUyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNqL0U1QyxjQUFjLEVEaS9FVSxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNoL0U1QyxhQUFhLEVEZy9FVyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7Q0FJM0M7O0FBL0NMLEFBcUNJLFNBckNLLENBcUNMLEtBQUssQUFPQSxNQUFNLEVBNUNmLEFBcUNXLFNBckNGLENBcUNFLFFBQVEsQUFPVixNQUFNLENBQUM7RUNoK0VaLFVBQVUsRURpK0VpQixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUNoK0UvQyxrQkFBa0IsRURnK0VTLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQy85RS9DLGVBQWUsRUQrOUVZLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQzk5RS9DLGNBQWMsRUQ4OUVhLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQzc5RS9DLGFBQWEsRUQ2OUVjLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtDQUMxQzs7QUE5Q1QsQUFnREksU0FoREssQ0FnREwsTUFBTSxDQUFDO0VDei9FUCxVQUFVLEVEMC9FYyxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN6L0U1QyxrQkFBa0IsRUR5L0VNLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3gvRTVDLGVBQWUsRUR3L0VTLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3YvRTVDLGNBQWMsRUR1L0VVLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3QvRTVDLGFBQWEsRURzL0VXLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztDQUkzQzs7QUFyREwsQUFnREksU0FoREssQ0FnREwsTUFBTSxBQUVELE1BQU0sQ0FBQztFQ3QrRVosVUFBVSxFRHUrRWlCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQ3QrRS9DLGtCQUFrQixFRHMrRVMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHNCQUFJO0VDcitFL0MsZUFBZSxFRHErRVksR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHNCQUFJO0VDcCtFL0MsY0FBYyxFRG8rRWEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHNCQUFJO0VDbitFL0MsYUFBYSxFRG0rRWMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHNCQUFJO0NBQzFDOztBQXBEVCxBQXNEc0IsU0F0RGIsQ0FzREwsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWixFQUFjO0VDLy9FcEIsVUFBVSxFRGdnRmMsSUFBSSxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDLy9FN0Msa0JBQWtCLEVEKy9FTSxJQUFJLENBQUMsS0FBSSxDQUFDLFdBQVc7RUM5L0U3QyxlQUFlLEVEOC9FUyxJQUFJLENBQUMsS0FBSSxDQUFDLFdBQVc7RUM3L0U3QyxjQUFjLEVENi9FVSxJQUFJLENBQUMsS0FBSSxDQUFDLFdBQVc7RUM1L0U3QyxhQUFhLEVENC9FVyxJQUFJLENBQUMsS0FBSSxDQUFDLFdBQVc7Q0FJNUM7O0FBM0RMLEFBc0RzQixTQXREYixDQXNETCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLENBRUQsTUFBTSxDQUFDO0VDNStFWixVQUFVLEVENitFaUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLHNCQUFJO0VDNStFN0Msa0JBQWtCLEVENCtFUyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUMzK0U3QyxlQUFlLEVEMitFWSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUMxK0U3QyxjQUFjLEVEMCtFYSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUN6K0U3QyxhQUFhLEVEeStFYyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7Q0FDeEM7O0FBMURULEFBNER5QixTQTVEaEIsQ0E0REwsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixFQUFpQjtFQUNuQixNQUFNLEVBQUUsQ0FBRTtFQ3RnRmQsVUFBVSxFRHNnRnlCLElBQUksQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3JnRnhELGtCQUFrQixFRHFnRmlCLElBQUksQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3BnRnhELGVBQWUsRURvZ0ZvQixJQUFJLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNuZ0Z4RCxjQUFjLEVEbWdGcUIsSUFBSSxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbGdGeEQsYUFBYSxFRGtnRnNCLElBQUksQ0FBQyxLQUFJLENBQUMsV0FBVztDQUl2RDs7QUFqRUwsQUE0RHlCLFNBNURoQixDQTRETCxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssVUFBVSxBQUFmLENBRUQsTUFBTSxDQUFDO0VDbC9FWixVQUFVLEVEbS9FaUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLHNCQUFJO0VDbC9FN0Msa0JBQWtCLEVEay9FUyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUNqL0U3QyxlQUFlLEVEaS9FWSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUNoL0U3QyxjQUFjLEVEZy9FYSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUMvK0U3QyxhQUFhLEVEKytFYyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsc0JBQUk7Q0FDeEM7O0FBaEVULEFBa0VTLFNBbEVBLENBa0VMLEtBQUssQUFBQSxHQUFHLENBQUM7RUFBQyxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFDLEtBQU07Q0FBRzs7QUFsRWxFLEFBbUVJLFNBbkVLLENBbUVMLFNBQVMsQ0FBQztFQUNOLFVBQVUsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FDbEM7O0FBckVMLEFBc0VJLFNBdEVLLENBc0VMLFFBQVEsQ0FBQztFQUFDLE1BQU0sRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsY0FBYyxFQUFFLElBQUs7Q0FBRzs7QUF0RTdHLEFBdUVJLFNBdkVLLENBdUVMLFVBQVUsQ0FBQztFQUNQLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBQ2xGOztBQXpFTCxBQTRFUSxTQTVFQyxDQTBFTCxTQUFTLENBRUwsT0FBTyxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLFlBQVksRUFBRSxFQUFHO0NBSy9DOztBQWxGVCxBQTRFUSxTQTVFQyxDQTBFTCxTQUFTLENBRUwsT0FBTyxBQUVGLFdBQVcsQ0FBQztFQUFDLFlBQVksRUFBQyxDQUFFO0NBQUc7O0FBOUU1QyxBQTRFUSxTQTVFQyxDQTBFTCxTQUFTLENBRUwsT0FBTyxBQUdGLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0NBQUc7O0FBL0VuQyxBQTRFUSxTQTVFQyxDQTBFTCxTQUFTLENBRUwsT0FBTyxBQUlGLEtBQUssQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0NBQUc7O0FBaEZsQyxBQTRFUSxTQTVFQyxDQTBFTCxTQUFTLENBRUwsT0FBTyxBQUtGLEtBQUssQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0NBQUc7O0FBakZsQyxBQXNGUSxTQXRGQyxDQW9GTCxPQUFPLENBRUgsT0FBTyxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUs7Q0FJZjs7QUEzRlQsQUFzRlEsU0F0RkMsQ0FvRkwsT0FBTyxDQUVILE9BQU8sQUFFRixHQUFHLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtFQUFFLFlBQVksRUFBRSxFQUFHO0NBQUc7O0FBeEZuRCxBQXNGUSxTQXRGQyxDQW9GTCxPQUFPLENBRUgsT0FBTyxBQUdGLEdBQUcsQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0NBQUc7O0FBekZoQyxBQTBGWSxTQTFGSCxDQW9GTCxPQUFPLENBRUgsT0FBTyxDQUlILElBQUksQ0FBQztFQUFDLE9BQU8sRUFBRSxLQUFNO0VBQUMsTUFBTSxFQUFFLENBQUU7Q0FBRzs7QUExRi9DLEFBK0ZRLFNBL0ZDLENBNkZMLFFBQVEsQ0FFSixRQUFRLENBQUM7RUFDTCxLQUFLLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsYUFBYSxFQUFFLElBQUs7RUNoZ0Z2RCxrQkFBa0IsRURpZ0ZTLFVBQVU7RUNoZ0ZyQyxlQUFlLEVEZ2dGWSxVQUFVO0VDLy9FckMsVUFBVSxFRCsvRWlCLFVBQVU7Q0FFaEM7O0FBbkdULEFBK0ZRLFNBL0ZDLENBNkZMLFFBQVEsQ0FFSixRQUFRLEFBR0gsV0FBVyxDQUFDO0VBQUMsWUFBWSxFQUFDLElBQUs7RUFBRSxhQUFhLEVBQUUsQ0FBRTtDQUFHOztBQWxHbEUsQUF1R1EsU0F2R0MsQ0FxR0wsU0FBUyxDQUVMLFNBQVMsQ0FBQztFQUNOLEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxhQUFhLEVBQUUsSUFBSztFQ3hnRnZELGtCQUFrQixFRHlnRlMsVUFBVTtFQ3hnRnJDLGVBQWUsRUR3Z0ZZLFVBQVU7RUN2Z0ZyQyxVQUFVLEVEdWdGaUIsVUFBVTtDQUdoQzs7QUE1R1QsQUF1R1EsU0F2R0MsQ0FxR0wsU0FBUyxDQUVMLFNBQVMsQUFHSixXQUFXLENBQUM7RUFBQyxZQUFZLEVBQUMsSUFBSztFQUFFLGFBQWEsRUFBRSxDQUFFO0NBQUc7O0FBMUdsRSxBQTJHWSxTQTNHSCxDQXFHTCxTQUFTLENBRUwsU0FBUyxDQUlMLEtBQUssQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBM0dsQyxBQThHSSxTQTlHSyxDQThHTCxXQUFXLENBQUM7RUFDUixLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VBQUUsT0FBTyxFQUFFLE1BQU87RUFDNUYsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUNqaEY1RSxrQkFBa0IsRURraEZLLFVBQVU7RUNqaEZqQyxlQUFlLEVEaWhGUSxVQUFVO0VDaGhGakMsVUFBVSxFRGdoRmEsVUFBVTtFQzdpRmpDLGFBQWEsRUQ4aUZhLEdBQUc7RUM3aUY3QixxQkFBcUIsRUQ2aUZLLEdBQUc7RUM1aUY3QixrQkFBa0IsRUQ0aUZRLEdBQUc7RUMzaUY3QixpQkFBaUIsRUQyaUZTLEdBQUc7RUMxaUY3QixnQkFBZ0IsRUQwaUZVLEdBQUc7Q0FlNUI7O0FBbElMLEFBb0hRLFNBcEhDLENBOEdMLFdBQVcsQ0FNUCxLQUFLLENBQUM7RUFBQyxPQUFPLEVBQUUsYUFBYztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLE9BQVE7Q0FBRzs7QUFwSHhFLEFBOEdJLFNBOUdLLENBOEdMLFdBQVcsQUFPTixPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDckYsVUFBVSxFQUFFLHNDQUFHLENBQW9DLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUMxRSxlQUFlLEVBQUUsSUFBSztDQUN6Qjs7QUF6SFQsQUEwSFEsU0ExSEMsQ0E4R0wsV0FBVyxDQVlQLElBQUksQ0FBQztFQUNELFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFDbkUsT0FBTyxFQUFFLGFBQWM7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFFBQVEsRUFBRSxNQUFPO0VDNWhGL0Qsa0JBQWtCLEVENmhGUyxVQUFVO0VDNWhGckMsZUFBZSxFRDRoRlksVUFBVTtFQzNoRnJDLFVBQVUsRUQyaEZpQixVQUFVO0NBQ2hDOztBQTlIVCxBQStIYSxTQS9ISixDQThHTCxXQUFXLENBaUJQLEtBQUssQUFBQSxNQUFNLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBQzNFOztBQWpJVCxBQW1JSSxTQW5JSyxDQW1JTCxVQUFVLENBQUM7RUFDUCxPQUFPLEVBQUUsU0FBVTtDQUt0Qjs7QUF6SUwsQUFzSVEsU0F0SUMsQ0FtSUwsVUFBVSxDQUdOLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEdBQUk7Q0FDNUI7O0FBeElULEFBMElJLFNBMUlLLENBMElMLGNBQWMsQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFTO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsSUFBSztDQTJCekQ7O0FBdEtMLEFBNElRLFNBNUlDLENBMElMLGNBQWMsQ0FFVixLQUFLLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQy9FLE9BQU8sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFDOUIsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsQ0FBRTtDQWtCMUI7O0FBaktULEFBZ0pnQixTQWhKUCxDQTBJTCxjQUFjLENBRVYsS0FBSyxHQUlHLEtBQUssQ0FBQztFQUNOLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE1BQU0sRUFBRSxPQUFRO0VBQ2hCLE9BQU8sRUFBRSxDQUFFO0NBQ2Q7O0FBcEpiLEFBcUpxQixTQXJKWixDQTBJTCxjQUFjLENBRVYsS0FBSyxHQVNHLEtBQUssQUFBQSxPQUFPLENBQUM7RUFDYixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLEdBQUcsRUFBRSxHQUFJO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFDbkYsVUFBVSxFQUFFLHVDQUFHLENBQXFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztFQUNqRSxlQUFlLEVBQUUsU0FBVTtDQUM5Qjs7QUF6SmIsQUEwSjhCLFNBMUpyQixDQTBJTCxjQUFjLENBRVYsS0FBSyxBQWNBLFNBQVMsR0FBRyxLQUFLLEFBQUEsT0FBTyxDQUFDO0VBQ3RCLG1CQUFtQixFQUFFLEdBQUk7Q0FFNUI7O0FBN0piLEFBOEo2QixTQTlKcEIsQ0EwSUwsY0FBYyxDQUVWLEtBQUssQUFrQkEsUUFBUSxHQUFHLEtBQUssQUFBQSxPQUFPLENBQUM7RUFDckIsbUJBQW1CLEVBQUUsUUFBUztDQUNqQzs7QUFoS2IsQUFrS1EsU0FsS0MsQ0EwSUwsY0FBYyxDQXdCVixNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsS0FBTTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsVUFBVztFQUFFLEtBQUssRUFBQyxJQUFLO0VBQ3BGLFdBQVcsRUFBRSxJQUFLO0NBQ3JCOztBQXJLVCxBQXVLSSxTQXZLSyxDQXVLTCxlQUFlLENBQUM7RUFDWixRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxtQkFBb0I7RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VDeGtGakYsa0JBQWtCLEVEeWtGSyxVQUFVO0VDeGtGakMsZUFBZSxFRHdrRlEsVUFBVTtFQ3ZrRmpDLFVBQVUsRUR1a0ZhLFVBQVU7Q0FRaEM7O0FBakxMLEFBMEtRLFNBMUtDLENBdUtMLGVBQWUsQ0FHWCxVQUFVLENBQUM7RUFDUCxNQUFNLEVBQUUsS0FBTTtFQUFFLFFBQVEsRUFBRSxJQUFLO0NBQ2xDOztBQTVLVCxBQTZLUSxTQTdLQyxDQXVLTCxlQUFlLENBTVgsQ0FBQyxDQUFDO0VBQ0UsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztDQUMvRTs7QUFoTFQsQUFtTFEsU0FuTEMsQ0FrTEwsVUFBVSxDQUNOLEtBQUssQ0FBQztFQUFDLGFBQWEsRUFBRSxHQUFJO0NBQUc7O0FBbkxyQyxBQW9MUyxTQXBMQSxDQWtMTCxVQUFVLENBRU4sQ0FBQyxBQUFBLGNBQWMsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLENBQUU7RUFDbkUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFDM0UsV0FBVyxFQUFFLGlCQUFrQjtFQ25uRnZDLGFBQWEsRURvbkZpQixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDbm5GekMscUJBQXFCLEVEbW5GUyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDbG5GekMsa0JBQWtCLEVEa25GWSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDam5GekMsaUJBQWlCLEVEaW5GYSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VDaG5GekMsZ0JBQWdCLEVEZ25GYyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0NBSXBDOztBQTdMVCxBQW9MUyxTQXBMQSxDQWtMTCxVQUFVLENBRU4sQ0FBQyxBQUFBLGNBQWMsQUFNVixNQUFNLENBQUM7RUFDSixVQUFVLEVBQUMsT0FBUTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBQ3BDOztBQTVMYixBQWdNSSxTQWhNSyxDQWdNTCxRQUFRLENBQUM7RUFDTCxhQUFhLEVBQUUsaUJBQWtCO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FDMUQ7O0FBSUwsQUFBQSxTQUFTLENBQUM7RUFDTixVQUFVLEVBQUUsTUFBTztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0EyQ2pFOztBQTVDRCxBQUVJLFNBRkssQ0FFTCxLQUFLLENBQUM7RUFDRixPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxHQUFJO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsY0FBZTtDQXdDOUY7O0FBM0NMLEFBRUksU0FGSyxDQUVMLEtBQUssQUFFQSxNQUFNLENBQUM7RUFDSixRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEdBQUk7RUFBRSxVQUFVLEVBQUUsT0FBUTtFQUFFLEdBQUcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFDL0YsT0FBTyxFQUFFLEVBQUc7RUFBRSxPQUFPLEVBQUUsRUFBRztFQ3ZvRmxDLGFBQWEsRUR3b0ZpQixHQUFHO0VDdm9GakMscUJBQXFCLEVEdW9GUyxHQUFHO0VDdG9GakMsa0JBQWtCLEVEc29GWSxHQUFHO0VDcm9GakMsaUJBQWlCLEVEcW9GYSxHQUFHO0VDcG9GakMsZ0JBQWdCLEVEb29GYyxHQUFHO0NBQzVCOztBQVJULEFBU1EsU0FUQyxDQUVMLEtBQUssQ0FPRCxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsS0FBTTtDQU9wRzs7QUFqQlQsQUFTUSxTQVRDLENBRUwsS0FBSyxDQU9ELElBQUksQUFFQyxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxHQUFJO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFDcEYsVUFBVSxFQUFFLE9BQVE7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQzlvRjdDLGFBQWEsRUQrb0ZxQixHQUFHO0VDOW9GckMscUJBQXFCLEVEOG9GYSxHQUFHO0VDN29GckMsa0JBQWtCLEVENm9GZ0IsR0FBRztFQzVvRnJDLGlCQUFpQixFRDRvRmlCLEdBQUc7RUMzb0ZyQyxnQkFBZ0IsRUQyb0ZrQixHQUFHO0VDdHBGckMsU0FBUyxFRHVwRnNCLHFCQUFTO0VDdHBGeEMsaUJBQWlCLEVEc3BGYyxxQkFBUztFQ3JwRnhDLGNBQWMsRURxcEZpQixxQkFBUztFQ3BwRnhDLGFBQWEsRURvcEZrQixxQkFBUztFQ25wRnhDLFlBQVksRURtcEZtQixxQkFBUztDQUMvQjs7QUFoQmIsQUFrQlEsU0FsQkMsQ0FFTCxLQUFLLENBZ0JELElBQUksQ0FBQztFQUFDLE9BQU8sRUFBRSxLQUFNO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUFHOztBQWxCbEUsQUFFSSxTQUZLLENBRUwsS0FBSyxBQWlCQSxXQUFXLENBQUM7RUFDVCxhQUFhLEVBQUUsQ0FBRTtDQUVwQjs7QUF0QlQsQUFFSSxTQUZLLENBRUwsS0FBSyxBQWlCQSxXQUFXLEFBRVAsTUFBTSxDQUFDO0VBQUMsT0FBTyxFQUFDLElBQUs7Q0FBRzs7QUFyQnJDLEFBRUksU0FGSyxDQUVMLEtBQUssQUFxQkEsS0FBSyxBQUNELE1BQU0sQ0FBQztFQUFDLFVBQVUsRUFBQyxPQUFRO0NBQUc7O0FBeEIzQyxBQXlCWSxTQXpCSCxDQUVMLEtBQUssQUFxQkEsS0FBSyxDQUVGLElBQUksQ0FBQztFQUNELFVBQVUsRUFBQyxJQUFLO0NBTW5COztBQWhDYixBQXlCWSxTQXpCSCxDQUVMLEtBQUssQUFxQkEsS0FBSyxDQUVGLElBQUksQUFFQyxPQUFPLENBQUM7RUFDTCxLQUFLLEVBQUMsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQzFCLFVBQVUsRUFBQyw4Q0FBRyxDQUE0QyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07RUFDakYsZUFBZSxFQUFFLElBQUs7Q0FDekI7O0FBL0JqQixBQWlDWSxTQWpDSCxDQUVMLEtBQUssQUFxQkEsS0FBSyxDQVVGLElBQUksQ0FBQztFQUFDLEtBQUssRUFBRSxPQUFRO0NBQUc7O0FBakNwQyxBQW9DWSxTQXBDSCxDQUVMLEtBQUssQUFpQ0EsUUFBUSxDQUNMLElBQUksQUFDQyxPQUFPLENBQUM7RUFDTCxVQUFVLEVBQUMsT0FBUTtDQUN0Qjs7QUF2Q2pCLEFBeUNZLFNBekNILENBRUwsS0FBSyxBQWlDQSxRQUFRLENBTUwsSUFBSSxDQUFDO0VBQUMsS0FBSyxFQUFFLE9BQVE7Q0FBRzs7QUFLcEMsQUFDSSxTQURLLENBQ0wsSUFBSSxBQUVDLEtBQUssQ0FBQTtFQUFFLGFBQWEsRUFBRSxpQkFBa0I7RUFBRSxPQUFPLEVBQUUsTUFBTztFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLFVBQVc7Q0FBSTs7QUFIdEgsQUFJUSxTQUpDLENBQ0wsSUFBSSxDQUdBLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsVUFBVztFQ3pwRnZELGtCQUFrQixFRDBwRlMsVUFBVTtFQ3pwRnJDLGVBQWUsRUR5cEZZLFVBQVU7RUN4cEZyQyxVQUFVLEVEd3BGaUIsVUFBVTtDQWlCaEM7O0FBdkJULEFBSVEsU0FKQyxDQUNMLElBQUksQ0FHQSxJQUFJLEFBR0MsVUFBVyxDQUFBLElBQUksRUFBRTtFQUFDLE9BQU8sRUFBRSxVQUFXO0NBQUc7O0FBUHRELEFBSVEsU0FKQyxDQUNMLElBQUksQ0FHQSxJQUFJLEFBSUMsVUFBVSxDQUFDO0VBQUMsT0FBTyxFQUFFLFVBQVc7Q0FBRzs7QUFSaEQsQUFJUSxTQUpDLENBQ0wsSUFBSSxDQUdBLElBQUksQUFLQyxLQUFLLENBQUM7RUFBQyxPQUFPLEVBQUUsVUFBVztFQUFFLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBVHpELEFBSVEsU0FKQyxDQUNMLElBQUksQ0FHQSxJQUFJLEFBTUMsVUFBVSxDQUFDO0VBQUMsT0FBTyxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUFHOztBQVY5RCxBQUlRLFNBSkMsQ0FDTCxJQUFJLENBR0EsSUFBSSxBQU9DLFlBQVksQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUFYL0QsQUFJUSxTQUpDLENBQ0wsSUFBSSxDQUdBLElBQUksQUFRQyxhQUFhLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtFQUFFLFlBQVksRUFBRSxDQUFFO0NBQUc7O0FBWjVELEFBSVEsU0FKQyxDQUNMLElBQUksQ0FHQSxJQUFJLEFBU0MsU0FBUyxDQUFDO0VBQUMsT0FBTyxFQUFFLENBQUU7Q0FBRzs7QUFidEMsQUFJUSxTQUpDLENBQ0wsSUFBSSxDQUdBLElBQUksQUFVQyxNQUFNLENBQUM7RUFDSixLQUFLLEVBQUUsTUFBTztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLGNBQWU7Q0FHdkQ7O0FBbEJiLEFBSVEsU0FKQyxDQUNMLElBQUksQ0FHQSxJQUFJLEFBVUMsTUFBTSxBQUVGLFVBQVcsQ0FBQSxJQUFJLEVBQUM7RUFBQyxZQUFZLEVBQUUsQ0FBRTtDQUFHOztBQWhCckQsQUFJUSxTQUpDLENBQ0wsSUFBSSxDQUdBLElBQUksQUFVQyxNQUFNLEFBR0YsV0FBVyxDQUFDO0VBQUMsV0FBVyxFQUFFLEtBQU07RUFBRSxZQUFZLEVBQUUsQ0FBRTtFQUFFLGFBQWEsRUFBRSxDQUFFO0NBQUc7O0FBakJ6RixBQUlRLFNBSkMsQ0FDTCxJQUFJLENBR0EsSUFBSSxBQWVDLE1BQU0sQ0FBQztFQUNKLEtBQUssRUFBRSxNQUFPO0VBQUUsT0FBTyxFQUFFLENBQUU7Q0FFOUI7O0FBdEJiLEFBSVEsU0FKQyxDQUNMLElBQUksQ0FHQSxJQUFJLEFBZUMsTUFBTSxBQUVGLFlBQVksQ0FBQztFQUFDLFlBQVksRUFBRSxLQUFNO0NBQUc7O0FBTXRELEFBQUEsWUFBWSxDQUFDO0VBQ1QsT0FBTyxFQUFFLFlBQWE7RUFDdEIsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsR0FBSTtFQUFFLEtBQUssRUFBRSxPQUFRO0NBR3ZEOztBQUxELEFBQUEsWUFBWSxBQUdQLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBSDVCLEFBQUEsWUFBWSxBQUlQLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBRTVCLEFBQUEsVUFBVSxDQUFDO0VBQ1AsT0FBTyxFQUFFLFNBQVU7Q0FPdEI7O0FBUkQsQUFFSSxVQUZNLENBRU4sVUFBVSxDQUFDO0VBQ1AsT0FBTyxFQUFFLFlBQWE7RUFBRSxjQUFjLEVBQUUsTUFBTztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFDckYsVUFBVSxFQUFFLEtBQU07RUFBRSxhQUFhLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxHQUFJO0NBRTFEOztBQU5MLEFBRUksVUFGTSxDQUVOLFVBQVUsQUFHTCxPQUFPLENBQUE7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBQUk7O0FBTHZELEFBT0ksVUFQTSxDQU9OLElBQUksQ0FBQztFQUFDLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLE1BQU87Q0FBRzs7QUFFNUQsQUFDSSxjQURVLENBQ1YsV0FBVyxDQUFDO0VBQUMsTUFBTSxFQUFDLGlCQUFrQjtFQzF0RnRDLGFBQWEsRUQwdEZpRCxHQUFHO0VDenRGakUscUJBQXFCLEVEeXRGeUMsR0FBRztFQ3h0RmpFLGtCQUFrQixFRHd0RjRDLEdBQUc7RUN2dEZqRSxpQkFBaUIsRUR1dEY2QyxHQUFHO0VDdHRGakUsZ0JBQWdCLEVEc3RGOEMsR0FBRztDQUFJOztBQUR6RSxBQUVJLGNBRlUsQ0FFVixhQUFhLENBQUM7RUFDVixLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsVUFBVSxFQUFFLElBQUs7Q0FvQm5EOztBQXZCTCxBQUtZLGNBTEUsQ0FFVixhQUFhLEFBRVIsV0FBVyxDQUNSLElBQUksQ0FBQTtFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FBSTs7QUFMekQsQUFPUSxjQVBNLENBRVYsYUFBYSxDQUtULFdBQVcsQ0FBQztFQUNSLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFBRSxRQUFRLEVBQUUsUUFBUztFQUNwRSxLQUFLLEVBQUUsR0FBSTtFQUFDLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtFQUFDLFlBQVksRUFBRSxJQUFLO0VDbHVGaEYsYUFBYSxFRG11RmlCLEdBQUc7RUNsdUZqQyxxQkFBcUIsRURrdUZTLEdBQUc7RUNqdUZqQyxrQkFBa0IsRURpdUZZLEdBQUc7RUNodUZqQyxpQkFBaUIsRURndUZhLEdBQUc7RUMvdEZqQyxnQkFBZ0IsRUQrdEZjLEdBQUc7Q0FPNUI7O0FBakJULEFBV1ksY0FYRSxDQUVWLGFBQWEsQ0FLVCxXQUFXLENBSVAsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLEdBQUk7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUNwRixVQUFVLEVBQUUsTUFBTztFQzNzRi9CLGtCQUFrQixFRDRzRmEsVUFBVTtFQzNzRnpDLGVBQWUsRUQyc0ZnQixVQUFVO0VDMXNGekMsVUFBVSxFRDBzRnFCLFVBQVU7Q0FFaEM7O0FBaEJiLEFBZWdCLGNBZkYsQ0FFVixhQUFhLENBS1QsV0FBVyxDQUlQLE1BQU0sQ0FJRixHQUFHLENBQUM7RUFBQyxNQUFNLEVBQUUsSUFBSztDQUFHOztBQWZyQyxBQWtCUSxjQWxCTSxDQUVWLGFBQWEsQ0FnQlQsY0FBYyxDQUFDO0VBQ1gsT0FBTyxFQUFFLFlBQWE7RUFBRSxjQUFjLEVBQUUsTUFBTztFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFDdkYsS0FBSyxFQUFFLEtBQU07RUNsdEZyQixrQkFBa0IsRURtdEZTLFVBQVU7RUNsdEZyQyxlQUFlLEVEa3RGWSxVQUFVO0VDanRGckMsVUFBVSxFRGl0RmlCLFVBQVU7Q0FDaEM7O0FBdEJULEFBd0JJLGNBeEJVLENBd0JWLFdBQVcsQ0FBQztFQUNSLE9BQU8sRUFBRSxZQUFhO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsVUFBVztFQUNqRSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2xHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUt6RDs7QUFoQ0wsQUF3QkksY0F4QlUsQ0F3QlYsV0FBVyxBQUlOLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUNoRixVQUFVLEVBQUUsd0NBQUcsQ0FBc0MsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0NBQy9FOztBQS9CVCxBQWlDSSxjQWpDVSxDQWlDVixLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztDQWlFZjs7QUFuR0wsQUFvQ1ksY0FwQ0UsQ0FpQ1YsS0FBSyxDQUVELEtBQUssQ0FDRCxFQUFFLENBQUM7RUFDQyxVQUFVLEVBQUUsT0FBUTtFQUFFLE9BQU8sRUFBRSxRQUFTO0VBQ3hDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDaEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0NBUzNEOztBQWhEYixBQW9DWSxjQXBDRSxDQWlDVixLQUFLLENBRUQsS0FBSyxDQUNELEVBQUUsQUFJRyxZQUFZLENBQUM7RUFBQyxZQUFZLEVBQUMsSUFBSztFQUFFLGFBQWEsRUFBRSxDQUFFO0NBQUc7O0FBeEN2RSxBQW9DWSxjQXBDRSxDQWlDVixLQUFLLENBRUQsS0FBSyxDQUNELEVBQUUsQUFLRyxXQUFXLENBQUM7RUFBQyxhQUFhLEVBQUMsSUFBSztDQUFHOztBQXpDcEQsQUFvQ1ksY0FwQ0UsQ0FpQ1YsS0FBSyxDQUVELEtBQUssQ0FDRCxFQUFFLEFBTUcsUUFBUSxDQUFDO0VBQUMsS0FBSyxFQUFFLEVBQUc7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFHOztBQTFDNUQsQUFvQ1ksY0FwQ0UsQ0FpQ1YsS0FBSyxDQUVELEtBQUssQ0FDRCxFQUFFLEFBT0csVUFBVSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBQyxVQUFVLEVBQUUsSUFBSztDQUFHOztBQTNDN0QsQUFvQ1ksY0FwQ0UsQ0FpQ1YsS0FBSyxDQUVELEtBQUssQ0FDRCxFQUFFLEFBUUcsUUFBUSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBQyxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQTVDNUQsQUFvQ1ksY0FwQ0UsQ0FpQ1YsS0FBSyxDQUVELEtBQUssQ0FDRCxFQUFFLEFBU0csTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUE3Q3ZDLEFBb0NZLGNBcENFLENBaUNWLEtBQUssQ0FFRCxLQUFLLENBQ0QsRUFBRSxBQVVHLFdBQVcsQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0VBQUMsVUFBVSxFQUFFLEtBQU07Q0FBRzs7QUE5Qy9ELEFBb0NZLGNBcENFLENBaUNWLEtBQUssQ0FFRCxLQUFLLENBQ0QsRUFBRSxBQVdHLFNBQVMsQ0FBQztFQUFDLEtBQUssRUFBRSxFQUFHO0NBQUc7O0FBL0N6QyxBQW9EZ0IsY0FwREYsQ0FpQ1YsS0FBSyxDQWlCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQ0FBQztFQUNDLE9BQU8sRUFBRSxTQUFVO0VBQUUsYUFBYSxFQUFDLGlCQUFrQjtFQUFDLFFBQVEsRUFBRSxRQUFTO0VBQ3pFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0NBTzNEOztBQTlEakIsQUFvRGdCLGNBcERGLENBaUNWLEtBQUssQ0FpQkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBSUcsWUFBWSxDQUFDO0VBQUMsWUFBWSxFQUFDLElBQUs7RUFBRSxhQUFhLEVBQUUsQ0FBRTtDQUFHOztBQXhEM0UsQUFvRGdCLGNBcERGLENBaUNWLEtBQUssQ0FpQkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBS0csV0FBVyxDQUFDO0VBQUMsYUFBYSxFQUFDLElBQUs7Q0FBRzs7QUF6RHhELEFBb0RnQixjQXBERixDQWlDVixLQUFLLENBaUJELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQU1HLFNBQVMsQ0FBQztFQUFDLFdBQVcsRUFBRSxJQUFLO0NBQUc7O0FBMURyRCxBQW9EZ0IsY0FwREYsQ0FpQ1YsS0FBSyxDQWlCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFPRyxXQUFXLENBQUM7RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxJQUFLO0NBQUc7O0FBM0Q1RSxBQW9EZ0IsY0FwREYsQ0FpQ1YsS0FBSyxDQWlCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFRRyxTQUFTLENBQUM7RUFBQyxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQTVEckQsQUFvRGdCLGNBcERGLENBaUNWLEtBQUssQ0FpQkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBU0csWUFBWSxDQUFDO0VBQUMsVUFBVSxFQUFFLEtBQU07Q0FBRzs7QUE3RHhELEFBaUVZLGNBakVFLENBaUNWLEtBQUssQ0FpQkQsS0FBSyxDQWVELEtBQUssQ0FBQztFQUNGLFNBQVMsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEtBQU07RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxJQUFLO0NBQ3RFOztBQW5FYixBQXVFZ0IsY0F2RUYsQ0FpQ1YsS0FBSyxDQW9DRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQ0FBQztFQUNDLE9BQU8sRUFBRSxTQUFVO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFDNUMsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FpQjNEOztBQTNGakIsQUEyRW9CLGNBM0VOLENBaUNWLEtBQUssQ0FvQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLENBSUUsVUFBVSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxHQUFJO0VBQUUsSUFBSSxFQUFFLEtBQU07RUFDMUQsYUFBYSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsS0FBTTtDQUM1Qzs7QUE5RXJCLEFBdUVnQixjQXZFRixDQWlDVixLQUFLLENBb0NELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVFHLFlBQVksQ0FBQztFQUFDLFlBQVksRUFBQyxJQUFLO0VBQUUsYUFBYSxFQUFFLENBQUU7Q0FBRzs7QUEvRTNFLEFBdUVnQixjQXZFRixDQWlDVixLQUFLLENBb0NELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVNHLFdBQVcsQ0FBQztFQUFDLGFBQWEsRUFBQyxJQUFLO0NBQUc7O0FBaEZ4RCxBQXVFZ0IsY0F2RUYsQ0FpQ1YsS0FBSyxDQW9DRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFVRyxTQUFTLENBQUM7RUFBQyxXQUFXLEVBQUUsSUFBSztDQUFHOztBQWpGckQsQUF1RWdCLGNBdkVGLENBaUNWLEtBQUssQ0FvQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBV0csV0FBVyxDQUFDO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUFFLFNBQVMsRUFBRSxJQUFLO0NBQUc7O0FBbEY5RixBQXVFZ0IsY0F2RUYsQ0FpQ1YsS0FBSyxDQW9DRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFZRyxZQUFZLENBQUM7RUFBQyxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQW5GeEQsQUF1RWdCLGNBdkVGLENBaUNWLEtBQUssQ0FvQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBYUcsZUFBZSxDQUFDO0VBQ2IsVUFBVSxFQUFFLEtBQU07RUFBRSxjQUFjLEVBQUUsTUFBTztDQUM5Qzs7QUF0RnJCLEFBdUZvQixjQXZGTixDQWlDVixLQUFLLENBb0NELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxDQWdCRSxNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFDckUsUUFBUSxFQUFFLFFBQVM7Q0FDdEI7O0FBMUZyQixBQTZGb0IsY0E3Rk4sQ0FpQ1YsS0FBSyxDQW9DRCxLQUFLLENBQ0QsRUFBRSxBQXNCRyxXQUFXLENBQ1IsRUFBRSxDQUFDO0VBQ0MsYUFBYSxFQUFFLENBQUU7Q0FDcEI7O0FBL0ZyQixBQUFBLGNBQWMsQUFvR1QsUUFBUSxDQUFDO0VBQ04sYUFBYSxFQUFFLElBQUs7Q0E4RXZCOztBQW5MTCxBQXNHUSxjQXRHTSxBQW9HVCxRQUFRLENBRUwsTUFBTSxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUs7Q0FFZjs7QUF6R1QsQUFzR1EsY0F0R00sQUFvR1QsUUFBUSxDQUVMLE1BQU0sQUFFRCxHQUFHLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBeEduRCxBQTRHZ0IsY0E1R0YsQUFvR1QsUUFBUSxDQU1MLEtBQUssQ0FDRCxLQUFLLENBQ0QsRUFBRSxDQUFDO0VBQ0MsVUFBVSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUtsQzs7QUFsSGpCLEFBNEdnQixjQTVHRixBQW9HVCxRQUFRLENBTUwsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLEFBRUcsVUFBVSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUE5Ry9DLEFBNEdnQixjQTVHRixBQW9HVCxRQUFRLENBTUwsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLEFBR0csUUFBUSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUEvRzdDLEFBNEdnQixjQTVHRixBQW9HVCxRQUFRLENBTUwsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLEFBSUcsTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUFoSDNDLEFBNEdnQixjQTVHRixBQW9HVCxRQUFRLENBTUwsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLEFBS0csV0FBVyxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUFqSGhELEFBc0hvQixjQXRITixBQW9HVCxRQUFRLENBTUwsS0FBSyxDQVVELEtBQUssQ0FDRCxFQUFFLENBQ0UsYUFBYSxDQUFDO0VBQ1YsS0FBSyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsWUFBYTtFQUFDLE9BQU8sRUFBRSxVQUFXO0VBQUUsVUFBVSxFQUFFLElBQUs7RUNyekYvRixrQkFBa0IsRURzekZxQixTQUFTO0VDcnpGaEQsZUFBZSxFRHF6RndCLFNBQVM7RUNwekZoRCxVQUFVLEVEb3pGNkIsU0FBUztDQUMvQjs7QUF6SHJCLEFBMkh5QixjQTNIWCxBQW9HVCxRQUFRLENBTUwsS0FBSyxDQVVELEtBQUssQ0FDRCxFQUFFLEFBS0csYUFBYSxDQUNWLENBQUMsQUFBQSxRQUFRLENBQUM7RUFDTixLQUFLLEVBQUUsS0FBTTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQzF6RmhGLGtCQUFrQixFRDJ6RnlCLFNBQVM7RUMxekZwRCxlQUFlLEVEMHpGNEIsU0FBUztFQ3p6RnBELFVBQVUsRUR5ekZpQyxTQUFTO0VDNzFGcEQsU0FBUyxFRDgxRmtDLGtCQUFTO0VDNzFGcEQsaUJBQWlCLEVENjFGMEIsa0JBQVM7RUM1MUZwRCxjQUFjLEVENDFGNkIsa0JBQVM7RUMzMUZwRCxhQUFhLEVEMjFGOEIsa0JBQVM7RUMxMUZwRCxZQUFZLEVEMDFGK0Isa0JBQVM7Q0FDL0I7O0FBL0h6QixBQW9Jd0IsY0FwSVYsQUFvR1QsUUFBUSxDQU1MLEtBQUssQ0FVRCxLQUFLLENBY0QsRUFBRSxBQUNHLFNBQVMsQ0FDTixhQUFhLENBQUM7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUFHOztBQXBJdEQsQUF5SWdCLGNBeklGLEFBb0dULFFBQVEsQ0FNTCxLQUFLLENBOEJELEtBQUssQ0FDRCxNQUFNLENBQUM7RUFBQyxLQUFLLEVBQUUsT0FBUTtDQUFHOztBQXpJMUMsQUE0SXdCLGNBNUlWLEFBb0dULFFBQVEsQ0FNTCxLQUFLLENBOEJELEtBQUssQ0FFRCxFQUFFLEFBQ0csV0FBVyxDQUNSLEVBQUUsQ0FBQztFQUFDLFVBQVUsRUFBQyxPQUFRO0NBQUc7O0FBNUlsRCxBQWtKWSxjQWxKRSxBQW9HVCxRQUFRLEFBNkNKLFVBQVUsQ0FDUCxXQUFXLENBQUE7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0NBQUk7O0FBbEpwRSxBQXNKd0IsY0F0SlYsQUFvR1QsUUFBUSxBQTZDSixVQUFVLENBRVAsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQUNHLFlBQVksQ0FBQTtFQUFFLFVBQVUsRUFBQyxJQUFLO0NBQUk7O0FBdkovRCxBQXNKd0IsY0F0SlYsQUFvR1QsUUFBUSxBQTZDSixVQUFVLENBRVAsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQUVHLFdBQVcsQ0FBQTtFQUFFLFVBQVUsRUFBQyxLQUFNO0NBQUk7O0FBeEovRCxBQThKd0IsY0E5SlYsQUFvR1QsUUFBUSxBQTZDSixVQUFVLENBRVAsS0FBSyxDQVNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQUNHLFlBQVksQ0FBQTtFQUFFLFVBQVUsRUFBQyxJQUFLO0NBQUk7O0FBL0ovRCxBQThKd0IsY0E5SlYsQUFvR1QsUUFBUSxBQTZDSixVQUFVLENBRVAsS0FBSyxDQVNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQUVHLFdBQVcsQ0FBQTtFQUFFLFVBQVUsRUFBQyxLQUFNO0NBQUk7O0FBaEsvRCxBQWlLNEIsY0FqS2QsQUFvR1QsUUFBUSxBQTZDSixVQUFVLENBRVAsS0FBSyxDQVNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxDQUdFLENBQUMsQ0FBQTtFQUNHLFFBQVEsRUFBRSxRQUFTO0NBRXRCOztBQXBLN0IsQUFtS2dDLGNBbktsQixBQW9HVCxRQUFRLEFBNkNKLFVBQVUsQ0FFUCxLQUFLLENBU0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLENBR0UsQ0FBQyxDQUVHLG9CQUFvQixDQUFBO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxVQUFVLEVBQWdELCtDQUFDLENBQUMsU0FBUztFQUFFLEtBQUssRUFBQyxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FBSzs7QUFuS2pMLEFBMEt3QixjQTFLVixBQW9HVCxRQUFRLEFBNkNKLFVBQVUsQ0FFUCxLQUFLLENBcUJELEtBQUssQ0FDRCxFQUFFLEFBQUEsV0FBVyxDQUNULEVBQUUsQ0FBQTtFQUNFLFVBQVUsRUFBQyxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUd4RDs7QUE5S3pCLEFBMEt3QixjQTFLVixBQW9HVCxRQUFRLEFBNkNKLFVBQVUsQ0FFUCxLQUFLLENBcUJELEtBQUssQ0FDRCxFQUFFLEFBQUEsV0FBVyxDQUNULEVBQUUsQUFFRyxZQUFZLENBQUE7RUFBRSxVQUFVLEVBQUMsSUFBSztDQUFJOztBQTVLL0QsQUEwS3dCLGNBMUtWLEFBb0dULFFBQVEsQUE2Q0osVUFBVSxDQUVQLEtBQUssQ0FxQkQsS0FBSyxDQUNELEVBQUUsQUFBQSxXQUFXLENBQ1QsRUFBRSxBQUdHLFdBQVcsQ0FBQTtFQUFFLFVBQVUsRUFBQyxLQUFNO0NBQUk7O0FBN0svRCxBQXFMUSxjQXJMTSxBQW9MVCxtQkFBbUIsQ0FDaEIsV0FBVyxDQUFDO0VBQUMsTUFBTSxFQUFFLENBQUU7Q0FBRzs7QUFyTGxDLEFBeUxvQixjQXpMTixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxDQUFDO0VBQ0MsYUFBYSxFQUFFLGtCQUFtQjtDQVlyQzs7QUF0TXJCLEFBeUxvQixjQXpMTixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQUVHLFdBQVcsQ0FBQztFQUNULFlBQVksRUFBRSxDQUFFO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsR0FBSTtDQU90RDs7QUFuTXpCLEFBNkw0QixjQTdMZCxBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQUVHLFdBQVcsQ0FFUixhQUFhLENBQUM7RUFDVixLQUFLLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxDQUFFO0NBSWxDOztBQWxNN0IsQUErTGdDLGNBL0xsQixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQUVHLFdBQVcsQ0FFUixhQUFhLENBRVQsY0FBYyxDQUFDO0VBQ1gsYUFBYSxFQUFFLEdBQUk7Q0FDdEI7O0FBak1qQyxBQXlMb0IsY0F6TE4sQUFvTFQsbUJBQW1CLENBRWhCLEtBQUssQ0FDRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFXRyxTQUFTLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtDQUFHOztBQXBNbEQsQUF5TG9CLGNBekxOLEFBb0xULG1CQUFtQixDQUVoQixLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBWUcsWUFBWSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUFyTXJELEFBd013QixjQXhNVixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLEFBZUcsV0FBVyxDQUNSLEVBQUUsQ0FBQztFQUNDLGFBQWEsRUFBRSxHQUFJO0NBQ3RCOztBQTFNekIsQUFnTm9CLGNBaE5OLEFBb0xULG1CQUFtQixDQUVoQixLQUFLLENBd0JELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxDQUFDO0VBQ0MsVUFBVSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsaUJBQWtCO0VBQUUsVUFBVSxFQUFFLEtBQU07RUFDckUsS0FBSyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLGNBQWMsRUFBRSxJQUFLO0NBdUMxRDs7QUF6UHJCLEFBbU53QixjQW5OVixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQXdCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQ0FHRSxNQUFNLEFBQ0QsTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFwTnBELEFBc053QixjQXROVixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQXdCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQ0FNRSxjQUFjLENBQUM7RUFDWCxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBQ2pDOztBQXhOekIsQUFnTm9CLGNBaE5OLEFBb0xULG1CQUFtQixDQUVoQixLQUFLLENBd0JELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVNHLFVBQVUsQ0FBQTtFQUNQLE9BQU8sRUFBRSxDQUFFO0NBMkJkOztBQXJQekIsQUEyTjRCLGNBM05kLEFBb0xULG1CQUFtQixDQUVoQixLQUFLLENBd0JELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVNHLFVBQVUsQ0FFUCxXQUFXLENBQUE7RUFDUCxVQUFVLEVBQUUsSUFBSztDQU9wQjs7QUFuTzdCLEFBOE5nQyxjQTlObEIsQUFvTFQsbUJBQW1CLENBRWhCLEtBQUssQ0F3QkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBU0csVUFBVSxDQUVQLFdBQVcsQ0FHUCxXQUFXLENBQUE7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUFJOztBQTlON0QsQUErTmdDLGNBL05sQixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQXdCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFTRyxVQUFVLENBRVAsV0FBVyxDQUlQLGFBQWEsQ0FBQTtFQUNULEtBQUssRUFBRSxLQUFNO0NBRWhCOztBQWxPakMsQUFpT29DLGNBak90QixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQXdCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFTRyxVQUFVLENBRVAsV0FBVyxDQUlQLGFBQWEsQ0FFVCxLQUFLLENBQUE7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFJOztBQWpPakUsQUFvTzRCLGNBcE9kLEFBb0xULG1CQUFtQixDQUVoQixLQUFLLENBd0JELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVNHLFVBQVUsQ0FXUCxZQUFZLENBQUE7RUFDUixPQUFPLEVBQUUsSUFBSztDQWVqQjs7QUFwUDdCLEFBc09nQyxjQXRPbEIsQUFvTFQsbUJBQW1CLENBRWhCLEtBQUssQ0F3QkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBU0csVUFBVSxDQVdQLFlBQVksQ0FFUixFQUFFLENBQUE7RUFBRSxVQUFVLEVBQUUsSUFBSztDQUFJOztBQXRPekQsQUF5T3dDLGNBek8xQixBQW9MVCxtQkFBbUIsQ0FFaEIsS0FBSyxDQXdCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFTRyxVQUFVLENBV1AsWUFBWSxDQUdSLGFBQWEsQUFDUixHQUFHLENBQ0EsS0FBSyxDQUFBO0VBQ0QsU0FBUyxFQUFFLEtBQU07Q0FFcEI7O0FBNU96QyxBQTJPNEMsY0EzTzlCLEFBb0xULG1CQUFtQixDQUVoQixLQUFLLENBd0JELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVNHLFVBQVUsQ0FXUCxZQUFZLENBR1IsYUFBYSxBQUNSLEdBQUcsQ0FDQSxLQUFLLENBRUQsS0FBSyxDQUFBO0VBQUUsT0FBTyxFQUFFLEdBQUk7Q0FBSTs7QUEzT3BFLEFBK09nQyxjQS9PbEIsQUFvTFQsbUJBQW1CLENBRWhCLEtBQUssQ0F3QkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBU0csVUFBVSxDQVdQLFlBQVksQ0FXUixZQUFZLENBQUE7RUFDUixNQUFNLEVBQUMsaUJBQWtCO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQUMsU0FBUyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsU0FBVTtFQUFDLFVBQVUsRUFBQywyQ0FBRyxDQUF5QyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUk7RUFDeEwsWUFBWSxFQUFFLE9BQVE7RUFDdEIsZUFBZSxFQUFFLFNBQVU7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLE9BQVE7Q0FDekY7O0FBblBqQyxBQWdOb0IsY0FoTk4sQUFvTFQsbUJBQW1CLENBRWhCLEtBQUssQ0F3QkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBc0NHLFFBQVEsQ0FBQTtFQUNMLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7Q0FDMUI7O0FBeFB6QixBQTJQd0IsY0EzUFYsQUFvTFQsbUJBQW1CLENBRWhCLEtBQUssQ0F3QkQsS0FBSyxDQUNELEVBQUUsQUEyQ0csV0FBVyxDQUNSLEVBQUUsQ0FBQztFQUNDLFVBQVUsRUFBRSxJQUFLO0NBQ3BCOztBQU96QixBQUFBLFlBQVksQ0FBQztFQUNULE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxtQkFBb0I7RUFDOUUsUUFBUSxFQUFFLFFBQVM7RUMvOUZuQixhQUFhLEVEZytGUyxHQUFHO0VDLzlGekIscUJBQXFCLEVEKzlGQyxHQUFHO0VDOTlGekIsa0JBQWtCLEVEODlGSSxHQUFHO0VDNzlGekIsaUJBQWlCLEVENjlGSyxHQUFHO0VDNTlGekIsZ0JBQWdCLEVENDlGTSxHQUFHO0NBdUU1Qjs7QUExRUQsQUFBQSxZQUFZLEFBSVAsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsS0FBTTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQ25GLFVBQVUsRUFBRSxPQUFRO0VDMStGeEIsU0FBUyxFRDIrRmMsa0JBQVM7RUMxK0ZoQyxpQkFBaUIsRUQwK0ZNLGtCQUFTO0VDeitGaEMsY0FBYyxFRHkrRlMsa0JBQVM7RUN4K0ZoQyxhQUFhLEVEdytGVSxrQkFBUztFQ3YrRmhDLFlBQVksRUR1K0ZXLGtCQUFTO0NBQy9COztBQVJMLEFBWUksWUFaUSxDQVlSLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsVUFBVztFQy84Rm5ELGtCQUFrQixFRGc5RkssVUFBVTtFQy84RmpDLGVBQWUsRUQrOEZRLFVBQVU7RUM5OEZqQyxVQUFVLEVEODhGYSxVQUFVO0NBMkRoQzs7QUF6RUwsQUFZSSxZQVpRLENBWVIsSUFBSSxBQUdDLFdBQVcsQ0FBQztFQUFDLE9BQU8sRUFBQyxVQUFXO0NBQUc7O0FBZjVDLEFBZ0JRLFlBaEJJLENBWVIsSUFBSSxDQUlBLEVBQUUsQ0FBQztFQUFDLE1BQU0sRUFBRSxTQUFVO0NBQUc7O0FBaEJqQyxBQWlCUSxZQWpCSSxDQVlSLElBQUksQ0FLQSxXQUFXLENBQUM7RUFDUixLQUFLLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBRSxTQUFVO0VBQ25DLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0NBQ2xGOztBQXBCVCxBQXFCUSxZQXJCSSxDQVlSLElBQUksQ0FTQSxRQUFRLENBQUM7RUFDTCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2xHLE1BQU0sRUFBRSxVQUFXO0NBQ3RCOztBQXhCVCxBQXlCUSxZQXpCSSxDQVlSLElBQUksQ0FhQSxVQUFVLENBQUM7RUFDUCxNQUFNLEVBQUUsVUFBVztFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxRQUFRLEVBQUUsUUFBUztFQ3YvRjNFLGFBQWEsRUR3L0ZpQixHQUFHO0VDdi9GakMscUJBQXFCLEVEdS9GUyxHQUFHO0VDdC9GakMsa0JBQWtCLEVEcy9GWSxHQUFHO0VDci9GakMsaUJBQWlCLEVEcS9GYSxHQUFHO0VDcC9GakMsZ0JBQWdCLEVEby9GYyxHQUFHO0NBNkM1Qjs7QUF4RVQsQUE2QlksWUE3QkEsQ0FZUixJQUFJLENBYUEsVUFBVSxDQUlOLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLGdCQUFpQjtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUNuRixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2xHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUN6RDs7QUFqQ2IsQUFrQ2lCLFlBbENMLENBWVIsSUFBSSxDQWFBLFVBQVUsQ0FTTixLQUFLLEFBQUEsTUFBTSxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVM7RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUN4RSxPQUFPLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsU0FBVTtDQUN0RTs7QUFyQ2IsQUFzQ1ksWUF0Q0EsQ0FZUixJQUFJLENBYUEsVUFBVSxDQWFOLFVBQVUsQ0FBQztFQUNQLEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxDQUFFO0VBQUUsT0FBTyxFQUFFLEtBQU07RUFDNUUsS0FBSyxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQzkvRjdDLFVBQVUsRUQrL0ZxQixJQUFJO0VDOS9GbkMsa0JBQWtCLEVEOC9GYSxJQUFJO0VDNy9GbkMsZUFBZSxFRDYvRmdCLElBQUk7RUM1L0ZuQyxjQUFjLEVENC9GaUIsSUFBSTtFQzMvRm5DLGFBQWEsRUQyL0ZrQixJQUFJO0NBYTFCOztBQXREYixBQTBDZ0IsWUExQ0osQ0FZUixJQUFJLENBYUEsVUFBVSxDQWFOLFVBQVUsQ0FJTixNQUFNLENBQUM7RUFDSCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLEtBQU07RUFBQyxLQUFLLEVBQUUsSUFBSztFQUMxRSxZQUFZLEVBQUUsS0FBTTtFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQzFDLGVBQWUsRUFBRSxLQUFNO0VBQ3ZCLFVBQVUsRUFBRSxLQUFNO0VBQ2xCLG1CQUFtQixFQUFFLEtBQU07RUFDM0Isb0JBQW9CLEVBQUUsS0FBTTtDQUkvQjs7QUFyRGpCLEFBa0RvQixZQWxEUixDQVlSLElBQUksQ0FhQSxVQUFVLENBYU4sVUFBVSxDQUlOLE1BQU0sQ0FRRixNQUFNLENBQUM7RUFDSCxVQUFVLEVBQUUsS0FBTTtDQUNyQjs7QUFwRHJCLEFBdURZLFlBdkRBLENBWVIsSUFBSSxDQWFBLFVBQVUsQ0E4Qk4sa0JBQWtCLENBQUM7RUFDZixNQUFNLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxlQUFnQjtFQUFFLGNBQWMsRUFBRSxHQUFJO0NBQy9EOztBQXpEYixBQTBEK0IsWUExRG5CLENBWVIsSUFBSSxDQWFBLFVBQVUsQ0FpQ04sa0JBQWtCLENBQUMsMEJBQTBCLENBQUM7RUFDMUMsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsS0FBTTtDQUN2Rjs7QUE1RGIsQUE2RDBELFlBN0Q5QyxDQVlSLElBQUksQ0FhQSxVQUFVLENBb0NOLGtCQUFrQixDQUFDLDBCQUEwQixDQUFDLDRCQUE0QixDQUFDO0VBQ3ZFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUN2RCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxLQUFNO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FDMUQ7O0FBakViLEFBa0VtRSxZQWxFdkQsQ0FZUixJQUFJLENBYUEsVUFBVSxDQXlDTiwyQkFBMkIsQ0FBQywwQkFBMEIsQ0FBQyx5QkFBeUIsQ0FBQztFQUM3RSxPQUFPLEVBQUUsSUFBSztDQUNqQjs7QUFwRWIsQUF5QlEsWUF6QkksQ0FZUixJQUFJLENBYUEsVUFBVSxBQTRDTCxVQUFVLENBQUM7RUFDUixhQUFhLEVBQUUsSUFBSztDQUN2Qjs7QUFJYixBQUFBLGtCQUFrQixDQUFDO0VBQ2YsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsY0FBYyxFQUFFLEdBQUk7Q0FDL0Q7O0FBQ0QsQUFBNEIsMkJBQUQsQ0FBQywwQkFBMEIsQ0FBQztFQUNuRCxNQUFNLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FDekM7O0FBQ0QsQUFBdUQsMkJBQTVCLENBQUMsMEJBQTBCLENBQUMsNEJBQTRCLENBQUM7RUFDaEYsTUFBTSxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsWUFBWSxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUNwRixLQUFLLEVBQUUsSUFBSztDQUNmOztBQUNELEFBQXVELDJCQUE1QixDQUFDLDBCQUEwQixDQUFDLHlCQUF5QixDQUFDO0VBQzdFLE9BQU8sRUFBRSxJQUFLO0NBQ2pCOztBQUNELEFBQUEsaUJBQWlCLENBQUM7RUFBQyxZQUFZLEVBQUUsSUFBSztDQUFHOztBQUN6QyxBQUF5Qix3QkFBRCxDQUFDLHdCQUF3QixDQUFDO0VBQUMsVUFBVSxFQUFDLGNBQWU7Q0FBRzs7QUFDaEYsQUFBc0QsMkJBQTNCLENBQUMseUJBQXlCLENBQUMsc0JBQXNCLENBQUM7RUFDekUsT0FBTyxFQUFFLElBQUs7Q0FDakI7O0FBQ0QsQUFBQSx3QkFBd0IsQ0FBQztFQUFDLE9BQU8sRUFBRSxJQUFLO0VBQUMsU0FBUyxFQUFFLElBQUs7Q0FBRzs7QUFFNUQsQUFBaUIsaUJBQUEsQUFBQSxjQUFjLENBQUM7RUFBQyxZQUFZLEVBQUUsSUFBSztDQUFHOztBQUN2RCxBQUFlLGNBQUQsQ0FBQyx3QkFBd0IsQ0FBQztFQUNwQyxPQUFPLEVBQUUsT0FBUTtFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLEtBQU07Q0FDMUQ7O0FBQ0QsQUFBdUMsd0JBQWYsQ0FBQyxjQUFjLEFBQUEsd0JBQXdCLENBQUM7RUFBQyxVQUFVLEVBQUUsY0FBZTtDQUFHOztBQUUvRixBQUFBLFlBQVksQ0FBQztFQUNULGFBQWEsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLE9BQU8sRUFBRSxvQkFBcUI7RUNua0cvRSxhQUFhLEVEb2tHUyxHQUFHO0VDbmtHekIscUJBQXFCLEVEbWtHQyxHQUFHO0VDbGtHekIsa0JBQWtCLEVEa2tHSSxHQUFHO0VDamtHekIsaUJBQWlCLEVEaWtHSyxHQUFHO0VDaGtHekIsZ0JBQWdCLEVEZ2tHTSxHQUFHO0NBSzVCOztBQVBELEFBR0ksWUFIUSxDQUdSLElBQUksQ0FBQztFQUNELGFBQWEsRUFBRSxJQUFLO0NBRXZCOztBQU5MLEFBR0ksWUFIUSxDQUdSLElBQUksQUFFQyxXQUFXLENBQUM7RUFBQyxhQUFhLEVBQUMsQ0FBRTtDQUFHOztBQUl6QyxBQUFBLGFBQWEsQ0FBQztFQUNWLFVBQVUsRUFBRSxNQUFPO0NBT3RCOztBQVJELEFBRUksYUFGUyxDQUVULE1BQU0sQ0FBQztFQUFDLFdBQVcsRUFBRSxDQUFFO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUFGcEQsQUFHSSxhQUhTLENBR1QsRUFBRSxDQUFDO0VBQUMsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUFIL0IsQUFJSSxhQUpTLENBSVQsQ0FBQyxDQUFDO0VBQ0UsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLE9BQVE7Q0FDOUQ7O0FBR0wsQUFFSSxlQUZXLENBRVgsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUM3akdoQixrQkFBa0IsRUQ4akdLLFVBQVU7RUM3akdqQyxlQUFlLEVENmpHUSxVQUFVO0VDNWpHakMsVUFBVSxFRDRqR2EsVUFBVTtDQU9oQzs7QUFYTCxBQUVJLGVBRlcsQ0FFWCxJQUFJLEFBR0MsYUFBYSxDQUFDO0VBQ1gsS0FBSyxFQUFFLE1BQU87Q0FDakI7O0FBUFQsQUFFSSxlQUZXLENBRVgsSUFBSSxBQU1DLGNBQWMsQ0FBQztFQUNaLEtBQUssRUFBRSxNQUFPO0VBQUUsT0FBTyxFQUFFLFVBQVc7Q0FDdkM7O0FBVlQsQUFZSSxlQVpXLENBWVgsYUFBYSxDQUFDO0VBQ1YsVUFBVSxFQUFFLE9BQVE7RUFBRSxhQUFhLEVBQUUsSUFBSztFQ2xtRzlDLGFBQWEsRURtbUdhLEdBQUc7RUNsbUc3QixxQkFBcUIsRURrbUdLLEdBQUc7RUNqbUc3QixrQkFBa0IsRURpbUdRLEdBQUc7RUNobUc3QixpQkFBaUIsRURnbUdTLEdBQUc7RUMvbEc3QixnQkFBZ0IsRUQrbEdVLEdBQUc7Q0ErRDVCOztBQTdFTCxBQWVRLGVBZk8sQ0FZWCxhQUFhLENBR1QsY0FBYyxDQUFDO0VBQ1gsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxTQUFVO0NBb0JuRDs7QUFwQ1QsQUFpQlksZUFqQkcsQ0FZWCxhQUFhLENBR1QsY0FBYyxDQUVWLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUMsY0FBZTtFQUNyRCxNQUFNLEVBQUMsZ0JBQWlCO0VDam1HcEMsVUFBVSxFRGttR3FCLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBSTtFQ2ptRy9DLGtCQUFrQixFRGltR2EsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0VDaG1HL0MsZUFBZSxFRGdtR2dCLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBSTtFQy9sRy9DLGNBQWMsRUQrbEdpQixDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7RUM5bEcvQyxhQUFhLEVEOGxHa0IsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0VDOWtHL0Msa0JBQWtCLEVEK2tHYSxVQUFVO0VDOWtHekMsZUFBZSxFRDhrR2dCLFVBQVU7RUM3a0d6QyxVQUFVLEVENmtHcUIsVUFBVTtFQzFtR3pDLGFBQWEsRUQybUdxQixHQUFHO0VDMW1HckMscUJBQXFCLEVEMG1HYSxHQUFHO0VDem1HckMsa0JBQWtCLEVEeW1HZ0IsR0FBRztFQ3htR3JDLGlCQUFpQixFRHdtR2lCLEdBQUc7RUN2bUdyQyxnQkFBZ0IsRUR1bUdrQixHQUFHO0NBSTVCOztBQTFCYixBQXVCZ0IsZUF2QkQsQ0FZWCxhQUFhLENBR1QsY0FBYyxDQUVWLE1BQU0sQ0FNRixHQUFHLENBQUM7RUM1bUdoQixhQUFhLEVENm1HeUIsR0FBRztFQzVtR3pDLHFCQUFxQixFRDRtR2lCLEdBQUc7RUMzbUd6QyxrQkFBa0IsRUQybUdvQixHQUFHO0VDMW1HekMsaUJBQWlCLEVEMG1HcUIsR0FBRztFQ3ptR3pDLGdCQUFnQixFRHltR3NCLEdBQUc7Q0FDNUI7O0FBekJqQixBQTJCWSxlQTNCRyxDQVlYLGFBQWEsQ0FHVCxjQUFjLENBWVYsQ0FBQyxDQUFDO0VBQUMsTUFBTSxFQUFFLENBQUU7RUFBQyxVQUFVLEVBQUUsTUFBTztDQUFHOztBQTNCaEQsQUE0QlksZUE1QkcsQ0FZWCxhQUFhLENBR1QsY0FBYyxDQWFWLEtBQUssQ0FBQztFQUNGLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQzlFOztBQS9CYixBQWdDWSxlQWhDRyxDQVlYLGFBQWEsQ0FHVCxjQUFjLENBaUJWLE1BQU0sQ0FBQztFQUNILFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLENBQUU7RUFDL0YsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQzNEOztBQW5DYixBQXFDUSxlQXJDTyxDQVlYLGFBQWEsQ0F5QlQsU0FBUyxDQUFDO0VBQ04sVUFBVSxFQUFFLE9BQVE7RUFBRSxPQUFPLEVBQUUsU0FBVTtFQUFFLEtBQUssRUFBRSxJQUFLO0VDM25HL0QsYUFBYSxFRDZuR2lCLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUc7RUM1bkd6QyxxQkFBcUIsRUQ0bkdTLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUc7RUMzbkd6QyxrQkFBa0IsRUQybkdZLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUc7RUMxbkd6QyxpQkFBaUIsRUQwbkdhLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUc7RUN6bkd6QyxnQkFBZ0IsRUR5bkdjLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUc7Q0FzQnBDOztBQTlEVCxBQXlDWSxlQXpDRyxDQVlYLGFBQWEsQ0F5QlQsU0FBUyxDQUlMLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsYUFBYztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQ3ZFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLFdBQVcsRUFBRSxDQUFFO0VBQUMsY0FBYyxFQUFFLE1BQU87RUN0bUduRCxrQkFBa0IsRUR1bUdhLFVBQVU7RUN0bUd6QyxlQUFlLEVEc21HZ0IsVUFBVTtFQ3JtR3pDLFVBQVUsRURxbUdxQixVQUFVO0NBS2hDOztBQWxEYixBQXlDWSxlQXpDRyxDQVlYLGFBQWEsQ0F5QlQsU0FBUyxDQUlMLElBQUksQUFLQyxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDaEYsVUFBVSxFQUFFLDJDQUFHLENBQXlDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUNsRjs7QUFqRGpCLEFBbURZLGVBbkRHLENBWVgsYUFBYSxDQXlCVCxTQUFTLENBY0wsTUFBTSxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxhQUFjO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDdkUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDN0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxLQUFNO0VDaG5HekUsa0JBQWtCLEVEaW5HYSxVQUFVO0VDaG5HekMsZUFBZSxFRGduR2dCLFVBQVU7RUMvbUd6QyxVQUFVLEVEK21HcUIsVUFBVTtDQU1oQzs7QUE3RGIsQUF3RGdCLGVBeERELENBWVgsYUFBYSxDQXlCVCxTQUFTLENBY0wsTUFBTSxDQUtGLE9BQU8sQ0FBQztFQUNKLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFDM0UsVUFBVSxFQUFFLHlDQUFHLENBQXVDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQUM3RSxNQUFNLEVBQUUsT0FBUTtDQUNuQjs7QUE1RGpCLEFBWUksZUFaVyxDQVlYLGFBQWEsQUFtRFIsSUFBSSxDQUFDO0VBQ0YsVUFBVSxFQUFFLE9BQVE7Q0FZdkI7O0FBNUVULEFBa0VnQixlQWxFRCxDQVlYLGFBQWEsQUFtRFIsSUFBSSxDQUVELGNBQWMsQ0FDVixLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztDQU9mOztBQTFFakIsQUFvRW9CLGVBcEVMLENBWVgsYUFBYSxBQW1EUixJQUFJLENBRUQsY0FBYyxDQUNWLEtBQUssQ0FFRCxhQUFhLENBQUM7RUFDVixPQUFPLEVBQUUsWUFBYTtFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFDakQsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDN0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLE9BQVE7RUFDOUUsT0FBTyxFQUFFLEtBQU07RUFBRSxjQUFjLEVBQUUsTUFBTztFQUFFLE1BQU0sRUFBRSxTQUFVO0NBQy9EOztBQXpFckIsQUE4RUksZUE5RVcsQ0E4RVgsWUFBWSxDQUFDO0VBQ1QsTUFBTSxFQUFDLGlCQUFrQjtFQ3BxRzdCLGFBQWEsRURxcUdhLEdBQUc7RUNwcUc3QixxQkFBcUIsRURvcUdLLEdBQUc7RUNucUc3QixrQkFBa0IsRURtcUdRLEdBQUc7RUNscUc3QixpQkFBaUIsRURrcUdTLEdBQUc7RUNqcUc3QixnQkFBZ0IsRURpcUdVLEdBQUc7Q0EwSDVCOztBQTFNTCxBQWlGUSxlQWpGTyxDQThFWCxZQUFZLENBR1IsYUFBYSxDQUFDO0VBQ1YsT0FBTyxFQUFFLElBQUs7Q0FDakI7O0FBbkZULEFBb0ZRLGVBcEZPLENBOEVYLFlBQVksQ0FNUixFQUFFLENBQUM7RUFDQyxNQUFNLEVBQUUsQ0FBRTtDQW9IYjs7QUF6TVQsQUFzRlksZUF0RkcsQ0E4RVgsWUFBWSxDQU1SLEVBQUUsQ0FFRSxFQUFFLENBQUM7RUFDQyxVQUFVLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxhQUFhLEVBQUUsaUJBQWtCO0NBaUhoRjs7QUF4TWIsQUF3RmdCLGVBeEZELENBOEVYLFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxDQUVFLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLG1CQUFvQjtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQ25FLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBUTVFOztBQW5HakIsQUE0Rm9CLGVBNUZMLENBOEVYLFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxDQUVFLENBQUMsQ0FJRyxLQUFLLENBQUM7RUFDRixRQUFRLEVBQUMsUUFBUztFQUFFLEdBQUcsRUFBRSxJQUFLO0VBQUUsSUFBSSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FDekY7O0FBOUZyQixBQXdGZ0IsZUF4RkQsQ0E4RVgsWUFBWSxDQU1SLEVBQUUsQ0FFRSxFQUFFLENBRUUsQ0FBQyxBQU9JLE1BQU0sRUEvRjNCLEFBd0ZnQixlQXhGRCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQ0FFRSxDQUFDLEFBUUksT0FBTyxDQUFDO0VBQ0wsS0FBSyxFQUFFLE9BQVE7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUN0Qzs7QUFsR3JCLEFBc0d3QixlQXRHVCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQUFjRyxhQUFhLENBQ1YsQ0FBQyxDQUNHLEtBQUssQ0FBQztFQUNGLFVBQVUsRUFBQyw2Q0FBRyxDQUEyQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDOUU7O0FBeEd6QixBQTZHd0IsZUE3R1QsQ0E4RVgsWUFBWSxDQU1SLEVBQUUsQ0FFRSxFQUFFLEFBcUJHLFdBQVcsQ0FDUixDQUFDLENBQ0csS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFDLGdEQUFHLENBQThDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQUNqRjs7QUEvR3pCLEFBb0h3QixlQXBIVCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQUE0QkcsUUFBUSxDQUNMLENBQUMsQ0FDRyxLQUFLLENBQUM7RUFDRixVQUFVLEVBQUMsNkNBQUcsQ0FBMkMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQzlFOztBQXRIekIsQUEySHdCLGVBM0hULENBOEVYLFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxBQW1DRyxVQUFVLENBQ1AsQ0FBQyxDQUNHLEtBQUssQ0FBQztFQUNGLFVBQVUsRUFBQywrQ0FBRyxDQUE2QyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDaEY7O0FBN0h6QixBQWtJd0IsZUFsSVQsQ0E4RVgsWUFBWSxDQU1SLEVBQUUsQ0FFRSxFQUFFLEFBMENHLFNBQVMsQ0FDTixDQUFDLENBQ0csS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFDLDhDQUFHLENBQTRDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQUMvRTs7QUFwSXpCLEFBeUl3QixlQXpJVCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQUFpREcsV0FBVyxDQUNSLENBQUMsQ0FDRyxLQUFLLENBQUM7RUFDRixVQUFVLEVBQUMsZ0RBQUcsQ0FBOEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQ2pGOztBQTNJekIsQUFnSndCLGVBaEpULENBOEVYLFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxBQXdERyxRQUFRLENBQ0wsQ0FBQyxDQUNHLEtBQUssQ0FBQztFQUNGLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxPQUFRO0VBQzlFLFVBQVUsRUFBQyw2Q0FBRyxDQUEyQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDOUU7O0FBcEp6QixBQXlKd0IsZUF6SlQsQ0E4RVgsWUFBWSxDQU1SLEVBQUUsQ0FFRSxFQUFFLEFBaUVHLFFBQVEsQ0FDTCxDQUFDLENBQ0csS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFDLDZDQUFHLENBQTJDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQUM5RTs7QUEzSnpCLEFBZ0t3QixlQWhLVCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQUF3RUcsVUFBVSxDQUNQLENBQUMsQ0FDRyxLQUFLLENBQUM7RUFDRixVQUFVLEVBQUMsK0NBQUcsQ0FBNkMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQ2hGOztBQWxLekIsQUF1S3dCLGVBdktULENBOEVYLFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxBQStFRyxTQUFTLENBQ04sQ0FBQyxDQUNHLEtBQUssQ0FBQztFQUNGLFVBQVUsRUFBQyw4Q0FBRyxDQUE0QyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDL0U7O0FBekt6QixBQThLd0IsZUE5S1QsQ0E4RVgsWUFBWSxDQU1SLEVBQUUsQ0FFRSxFQUFFLEFBc0ZHLE9BQU8sQ0FDSixDQUFDLENBQ0csS0FBSyxDQUFDO0VBQ0YsVUFBVSxFQUFDLG9DQUFHLENBQWtDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztDQUNyRTs7QUFoTHpCLEFBc0ZZLGVBdEZHLENBOEVYLFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxBQTZGRyxXQUFXLENBQUM7RUFDVCxhQUFhLEVBQUUsQ0FBRTtDQUNwQjs7QUFyTGpCLEFBc0xnQixlQXRMRCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQ0FnR0UsRUFBRSxDQUFDO0VBQ0MsVUFBVSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLGNBQWMsRUFBRSxJQUFLO0VBQzVELE9BQU8sRUFBRSxJQUFLO0NBWWpCOztBQXBNakIsQUF5TG9CLGVBekxMLENBOEVYLFlBQVksQ0FNUixFQUFFLENBRUUsRUFBRSxDQWdHRSxFQUFFLENBR0UsRUFBRSxDQUFDO0VBQ0MsTUFBTSxFQUFFLENBQUU7Q0FTYjs7QUFuTXJCLEFBMkx3QixlQTNMVCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQ0FnR0UsRUFBRSxDQUdFLEVBQUUsQ0FFRSxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsaUJBQWtCO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FNbkQ7O0FBbE16QixBQTJMd0IsZUEzTFQsQ0E4RVgsWUFBWSxDQU1SLEVBQUUsQ0FFRSxFQUFFLENBZ0dFLEVBQUUsQ0FHRSxFQUFFLENBRUUsQ0FBQyxBQUVJLE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQzNELFVBQVUsRUFBRSxJQUFLO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsSUFBSztFQ3B4R25FLGFBQWEsRURxeEdxQyxHQUFHO0VDcHhHckQscUJBQXFCLEVEb3hHNkIsR0FBRztFQ254R3JELGtCQUFrQixFRG14R2dDLEdBQUc7RUNseEdyRCxpQkFBaUIsRURreEdpQyxHQUFHO0VDanhHckQsZ0JBQWdCLEVEaXhHa0MsR0FBRztDQUM1Qjs7QUFqTTdCLEFBc01vQixlQXRNTCxDQThFWCxZQUFZLENBTVIsRUFBRSxDQUVFLEVBQUUsQUErR0csSUFBSSxDQUNELEVBQUUsQ0FBQztFQUFDLE9BQU8sRUFBRSxLQUFNO0NBQUc7O0FBdE0xQyxBQTRNUSxlQTVNTyxDQTJNWCxnQkFBZ0IsQ0FDWixjQUFjLENBQUM7RUFDWCxhQUFhLEVBQUUsSUFBSztDQXVDdkI7O0FBcFBULEFBK01ZLGVBL01HLENBMk1YLGdCQUFnQixDQUNaLGNBQWMsQ0FHVixLQUFLLENBQUM7RUFDRixPQUFPLEVBQUUsWUFBYTtFQUFFLE9BQU8sRUFBRSxTQUFVO0VBQzNDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQ3pEOztBQW5OYixBQW9OWSxlQXBORyxDQTJNWCxnQkFBZ0IsQ0FDWixjQUFjLENBUVYsVUFBVSxDQUFDO0VBQUMsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUFwTnhDLEFBcU5ZLGVBck5HLENBMk1YLGdCQUFnQixDQUNaLGNBQWMsQ0FTVixZQUFZLENBQUM7RUFDVCxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsWUFBWSxFQUFFLElBQUs7Q0FhdkU7O0FBbk9iLEFBdU5nQixlQXZORCxDQTJNWCxnQkFBZ0IsQ0FDWixjQUFjLENBU1YsWUFBWSxDQUVSLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxZQUFhO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsS0FBTTtFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFDakYsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxTQUFVO0VBQ3BELFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUNoekczRCxhQUFhLEVEaXpHeUIsR0FBRztFQ2h6R3pDLHFCQUFxQixFRGd6R2lCLEdBQUc7RUMveUd6QyxrQkFBa0IsRUQreUdvQixHQUFHO0VDOXlHekMsaUJBQWlCLEVEOHlHcUIsR0FBRztFQzd5R3pDLGdCQUFnQixFRDZ5R3NCLEdBQUc7RUN0eEd6QyxrQkFBa0IsRUR1eEdpQixVQUFVO0VDdHhHN0MsZUFBZSxFRHN4R29CLFVBQVU7RUNyeEc3QyxVQUFVLEVEcXhHeUIsVUFBVTtDQUtoQzs7QUFsT2pCLEFBOE5vQixlQTlOTCxDQTJNWCxnQkFBZ0IsQ0FDWixjQUFjLENBU1YsWUFBWSxDQUVSLENBQUMsQ0FPRyxJQUFJLENBQUM7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFFLFlBQVksRUFBRSxHQUFJO0NBQUc7O0FBOU54RSxBQXVOZ0IsZUF2TkQsQ0EyTVgsZ0JBQWdCLENBQ1osY0FBYyxDQVNWLFlBQVksQ0FFUixDQUFDLEFBUUksT0FBTyxDQUFDO0VBQ0wsWUFBWSxFQUFFLE9BQVE7RUFBRSxLQUFLLEVBQUUsT0FBUTtDQUMxQzs7QUFqT3JCLEFBb09ZLGVBcE9HLENBMk1YLGdCQUFnQixDQUNaLGNBQWMsQ0F3QlYsY0FBYyxDQUFDO0VBQ1gsS0FBSyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsSUFBSztDQWNoQzs7QUFuUGIsQUFzT2dCLGVBdE9ELENBMk1YLGdCQUFnQixDQUNaLGNBQWMsQ0F3QlYsY0FBYyxDQUVWLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQ2pELEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFDLElBQUs7RUFDbkYsUUFBUSxFQUFFLFFBQVM7RUM5ekduQyxhQUFhLEVEK3pHeUIsR0FBRztFQzl6R3pDLHFCQUFxQixFRDh6R2lCLEdBQUc7RUM3ekd6QyxrQkFBa0IsRUQ2ekdvQixHQUFHO0VDNXpHekMsaUJBQWlCLEVENHpHcUIsR0FBRztFQzN6R3pDLGdCQUFnQixFRDJ6R3NCLEdBQUc7Q0FRNUI7O0FBbFBqQixBQTJPb0IsZUEzT0wsQ0EyTVgsZ0JBQWdCLENBQ1osY0FBYyxDQXdCVixjQUFjLENBRVYsTUFBTSxDQUtGLEtBQUssQ0FBQztFQUNGLFNBQVMsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLGVBQWdCO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUMsSUFBSztDQUN6RTs7QUE3T3JCLEFBOE9vQixlQTlPTCxDQTJNWCxnQkFBZ0IsQ0FDWixjQUFjLENBd0JWLGNBQWMsQ0FFVixNQUFNLENBUUYsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxLQUFNO0VBQUUsTUFBTSxFQUFFLFVBQVc7RUFDL0QsVUFBVSxFQUFFLHdDQUFHLENBQXNDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUMvRTs7QUFqUHJCLEFBcVBRLGVBclBPLENBMk1YLGdCQUFnQixDQTBDWixjQUFjLENBQUM7RUFDWCxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGNBQWU7RUFBRSxRQUFRLEVBQUUsUUFBUztFQ3AwR3RGLFVBQVUsRURxMEdpQixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztFQ3AwRzdDLGtCQUFrQixFRG8wR1MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUNuMEc3QyxlQUFlLEVEbTBHWSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSztFQ2wwRzdDLGNBQWMsRURrMEdhLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLO0VDajBHN0MsYUFBYSxFRGkwR2MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUs7RUM1MEc3QyxhQUFhLEVENjBHaUIsR0FBRztFQzUwR2pDLHFCQUFxQixFRDQwR1MsR0FBRztFQzMwR2pDLGtCQUFrQixFRDIwR1ksR0FBRztFQzEwR2pDLGlCQUFpQixFRDAwR2EsR0FBRztFQ3owR2pDLGdCQUFnQixFRHkwR2MsR0FBRztFQ2x6R2pDLGtCQUFrQixFRG16R1MsVUFBVTtFQ2x6R3JDLGVBQWUsRURrekdZLFVBQVU7RUNqekdyQyxVQUFVLEVEaXpHaUIsVUFBVTtDQW1CaEM7O0FBNVFULEFDaGtHSSxlRGdrR1csQ0EyTVgsZ0JBQWdCLENBMENaLGNBQWMsQ0NyekdsQiwyQkFBMkIsQ0FBQztFRDB6R0MsS0FBSyxFQUFFLElBQUs7Q0MxekdGOztBRGdrRzNDLEFDL2pHSSxlRCtqR1csQ0EyTVgsZ0JBQWdCLENBMENaLGNBQWMsQ0NwekdsQixpQkFBaUIsQ0FBVztFRHl6R0MsS0FBSyxFQUFFLElBQUs7Q0N6ekdGOztBRCtqRzNDLEFDOWpHSSxlRDhqR1csQ0EyTVgsZ0JBQWdCLENBMENaLGNBQWMsQ0NuekdsQixrQkFBa0IsQ0FBVTtFRHd6R0MsS0FBSyxFQUFFLElBQUs7Q0N4ekdGOztBRDhqRzNDLEFDN2pHSSxlRDZqR1csQ0EyTVgsZ0JBQWdCLENBMENaLGNBQWMsQ0NsekdsQixzQkFBc0IsQ0FBTTtFRHV6R0MsS0FBSyxFQUFFLElBQUs7Q0N2ekdGOztBRDZqRzNDLEFBMlBZLGVBM1BHLENBMk1YLGdCQUFnQixDQTBDWixjQUFjLENBTVYsSUFBSSxDQUFDO0VBQUMsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUEzUGxDLEFBNFA2QixlQTVQZCxDQTJNWCxnQkFBZ0IsQ0EwQ1osY0FBYyxDQU9WLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVgsRUFBWTtFQUNkLE9BQU8sRUFBRSxLQUFNO0VBQ2YsVUFBVSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxhQUFjO0VBQ3ZHLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsT0FBUTtFQzF6R3JFLGtCQUFrQixFRDJ6R2EsVUFBVTtFQzF6R3pDLGVBQWUsRUQwekdnQixVQUFVO0VDenpHekMsVUFBVSxFRHl6R3FCLFVBQVU7Q0FDaEM7O0FBbFFiLEFBbVErQixlQW5RaEIsQ0EyTVgsZ0JBQWdCLENBMENaLGNBQWMsQ0FjVixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVBQWU7RUFDakIsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUFFLFdBQVcsRUFBRSxTQUFVO0VBQzdGLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUN6QyxVQUFVLEVBQUUsOENBQUcsQ0FBNEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VDejJHOUYsVUFBVSxFRDAyR3NCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3oyR3BELGtCQUFrQixFRHkyR2MsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDeDJHcEQsZUFBZSxFRHcyR2lCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3YyR3BELGNBQWMsRUR1MkdrQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN0MkdwRCxhQUFhLEVEczJHbUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBSTNDOztBQTNRYixBQW1RK0IsZUFuUWhCLENBMk1YLGdCQUFnQixDQTBDWixjQUFjLENBY1YsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUtELE1BQU0sQ0FBQTtFQUNILE9BQU8sRUFBQyxHQUFJO0NBQ2Y7O0FBMVFqQixBQTZRUSxlQTdRTyxDQTJNWCxnQkFBZ0IsQ0FrRVosVUFBVSxDQUFDO0VBQ1AsTUFBTSxFQUFFLGlCQUFrQjtFQUFFLE9BQU8sRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxLQUFNO0VBQ3hGLFVBQVUsRUFBRSxJQUFLO0VBQ2pCLG1DQUFtQztFQ3IyRzNDLGFBQWEsRURzMkdpQixHQUFHO0VDcjJHakMscUJBQXFCLEVEcTJHUyxHQUFHO0VDcDJHakMsa0JBQWtCLEVEbzJHWSxHQUFHO0VDbjJHakMsaUJBQWlCLEVEbTJHYSxHQUFHO0VDbDJHakMsZ0JBQWdCLEVEazJHYyxHQUFHO0NBcUM1Qjs7QUF0VFQsQUFrUlksZUFsUkcsQ0EyTVgsZ0JBQWdCLENBa0VaLFVBQVUsQ0FLTixZQUFZLENBQUM7RUFDVCxNQUFNLEVBQUMsa0JBQW1CO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQzlFLE1BQU0sRUFBRSxPQUFRO0VDejJHNUIsYUFBYSxFRDAyR3FCLEdBQUc7RUN6MkdyQyxxQkFBcUIsRUR5MkdhLEdBQUc7RUN4MkdyQyxrQkFBa0IsRUR3MkdnQixHQUFHO0VDdjJHckMsaUJBQWlCLEVEdTJHaUIsR0FBRztFQ3QyR3JDLGdCQUFnQixFRHMyR2tCLEdBQUc7RUMvMEdyQyxrQkFBa0IsRURnMUdhLFVBQVU7RUMvMEd6QyxlQUFlLEVEKzBHZ0IsVUFBVTtFQzkwR3pDLFVBQVUsRUQ4MEdxQixVQUFVO0NBYWhDOztBQW5TYixBQXVSZ0IsZUF2UkQsQ0EyTVgsZ0JBQWdCLENBa0VaLFVBQVUsQ0FLTixZQUFZLENBS1IsT0FBTyxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLGdCQUFpQjtFQUM1RSxHQUFHLEVBQUUsR0FBSTtFQUNULFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxHQUFJO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0VDcjFHMUYsa0JBQWtCLEVEczFHaUIsVUFBVTtFQ3IxRzdDLGVBQWUsRURxMUdvQixVQUFVO0VDcDFHN0MsVUFBVSxFRG8xR3lCLFVBQVU7RUN4M0c3QyxTQUFTLEVEeTNHMEIsa0JBQVM7RUN4M0c1QyxpQkFBaUIsRUR3M0drQixrQkFBUztFQ3YzRzVDLGNBQWMsRUR1M0dxQixrQkFBUztFQ3QzRzVDLGFBQWEsRURzM0dzQixrQkFBUztFQ3IzRzVDLFlBQVksRURxM0d1QixrQkFBUztDQUsvQjs7QUFsU2pCLEFBdVJnQixlQXZSRCxDQTJNWCxnQkFBZ0IsQ0FrRVosVUFBVSxDQUtOLFlBQVksQ0FLUixPQUFPLEFBT0YsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQ2hGLFVBQVUsRUFBRSwyQ0FBRyxDQUF5QyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDN0U7O0FBalNyQixBQTZRUSxlQTdRTyxDQTJNWCxnQkFBZ0IsQ0FrRVosVUFBVSxBQXVCTCxHQUFHLENBQUM7RUFDRCxNQUFNLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEtBQU07RUMvMUdwRCxrQkFBa0IsRURnMkdhLFVBQVU7RUMvMUd6QyxlQUFlLEVEKzFHZ0IsVUFBVTtFQzkxR3pDLFVBQVUsRUQ4MUdxQixVQUFVO0NBTWhDOztBQTVTYixBQXVTZ0IsZUF2U0QsQ0EyTVgsZ0JBQWdCLENBa0VaLFVBQVUsQUF1QkwsR0FBRyxDQUdBLFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUM3M0czQyxhQUFhLEVEODNHeUIsR0FBRztFQzczR3pDLHFCQUFxQixFRDYzR2lCLEdBQUc7RUM1M0d6QyxrQkFBa0IsRUQ0M0dvQixHQUFHO0VDMzNHekMsaUJBQWlCLEVEMjNHcUIsR0FBRztFQzEzR3pDLGdCQUFnQixFRDAzR3NCLEdBQUc7Q0FDNUI7O0FBMVNqQixBQTJTZ0IsZUEzU0QsQ0EyTVgsZ0JBQWdCLENBa0VaLFVBQVUsQUF1QkwsR0FBRyxDQU9BLE9BQU8sQ0FBQztFQUFDLEdBQUcsRUFBRSxHQUFJO0NBQUc7O0FBM1NyQyxBQTZRUSxlQTdRTyxDQTJNWCxnQkFBZ0IsQ0FrRVosVUFBVSxBQWdDTCxHQUFHLENBQUM7RUFDRCxVQUFVLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEtBQU07RUN4Mkd4RCxrQkFBa0IsRUR5MkdhLFVBQVU7RUN4Mkd6QyxlQUFlLEVEdzJHZ0IsVUFBVTtFQ3YyR3pDLFVBQVUsRUR1MkdxQixVQUFVO0NBTWhDOztBQXJUYixBQWdUZ0IsZUFoVEQsQ0EyTVgsZ0JBQWdCLENBa0VaLFVBQVUsQUFnQ0wsR0FBRyxDQUdBLFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUN0NEczQyxhQUFhLEVEdTRHeUIsR0FBRztFQ3Q0R3pDLHFCQUFxQixFRHM0R2lCLEdBQUc7RUNyNEd6QyxrQkFBa0IsRURxNEdvQixHQUFHO0VDcDRHekMsaUJBQWlCLEVEbzRHcUIsR0FBRztFQ240R3pDLGdCQUFnQixFRG00R3NCLEdBQUc7Q0FDNUI7O0FBblRqQixBQW9UZ0IsZUFwVEQsQ0EyTVgsZ0JBQWdCLENBa0VaLFVBQVUsQUFnQ0wsR0FBRyxDQU9BLE9BQU8sQ0FBQztFQUFDLEdBQUcsRUFBRSxHQUFJO0NBQUc7O0FBcFRyQyxBQXVUUSxlQXZUTyxDQTJNWCxnQkFBZ0IsQ0E0R1osWUFBWSxDQUFDO0VBQ1QsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUNoRixHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0NBMkJwQjs7QUFwVlQsQUEwVFksZUExVEcsQ0EyTVgsZ0JBQWdCLENBNEdaLFlBQVksQ0FHUixXQUFXLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0F3Qm5EOztBQW5WYixBQTRUZ0IsZUE1VEQsQ0EyTVgsZ0JBQWdCLENBNEdaLFlBQVksQ0FHUixXQUFXLENBRVAsV0FBVyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0NBS25EOztBQWxVakIsQUE4VG9CLGVBOVRMLENBMk1YLGdCQUFnQixDQTRHWixZQUFZLENBR1IsV0FBVyxDQUVQLFdBQVcsQ0FFUCxLQUFLLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxPQUFRO0VBQzVFLE9BQU8sRUFBRSxDQUFFO0NBQ2Q7O0FBalVyQixBQW9Vb0IsZUFwVUwsQ0EyTVgsZ0JBQWdCLENBNEdaLFlBQVksQ0FHUixXQUFXLENBU1AsU0FBUyxDQUNMLElBQUksQ0FBQztFQUNELFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQ25FLFFBQVEsRUFBRSxNQUFPO0NBV3BCOztBQWpWckIsQUF1VXdCLGVBdlVULENBMk1YLGdCQUFnQixDQTRHWixZQUFZLENBR1IsV0FBVyxDQVNQLFNBQVMsQ0FDTCxJQUFJLENBR0EsR0FBRyxDQUFDO0VBQ0EsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxPQUFRO0NBQ3BEOztBQXpVekIsQUEwVXdCLGVBMVVULENBMk1YLGdCQUFnQixDQTRHWixZQUFZLENBR1IsV0FBVyxDQVNQLFNBQVMsQ0FDTCxJQUFJLENBTUEsT0FBTyxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEdBQUk7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUMzRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFdBQVcsRUFBRSxTQUFVO0VBQ3BDLFVBQVUsRUFBQyxJQUFJLENBQUMsdUNBQUcsQ0FBcUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VDMzVHdkcsVUFBVSxFRDQ1R2lDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFFLElBQUcsQ0FBQyxJQUFJO0VDMzVHaEUsa0JBQWtCLEVEMjVHeUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUMxNUdoRSxlQUFlLEVEMDVHNEIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUN6NUdoRSxjQUFjLEVEeTVHNkIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUN4NUdoRSxhQUFhLEVEdzVHOEIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUNuNkdoRSxhQUFhLEVEbzZHaUMsR0FBRztFQ242R2pELHFCQUFxQixFRG02R3lCLEdBQUc7RUNsNkdqRCxrQkFBa0IsRURrNkc0QixHQUFHO0VDajZHakQsaUJBQWlCLEVEaTZHNkIsR0FBRztFQ2g2R2pELGdCQUFnQixFRGc2RzhCLEdBQUc7Q0FDNUI7O0FBaFZ6QixBQXFWUSxlQXJWTyxDQTJNWCxnQkFBZ0IsQ0EwSVosa0JBQWtCLENBQUM7RUFDZixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQ2hGLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7Q0EyQnBCOztBQWxYVCxBQXdWWSxlQXhWRyxDQTJNWCxnQkFBZ0IsQ0EwSVosa0JBQWtCLENBR2QsV0FBVyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0NBd0JuRDs7QUFqWGIsQUEwVmdCLGVBMVZELENBMk1YLGdCQUFnQixDQTBJWixrQkFBa0IsQ0FHZCxXQUFXLENBRVAsV0FBVyxDQUFDO0VBQ1IsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0NBS25EOztBQWhXakIsQUE0Vm9CLGVBNVZMLENBMk1YLGdCQUFnQixDQTBJWixrQkFBa0IsQ0FHZCxXQUFXLENBRVAsV0FBVyxDQUVQLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUFDNUUsT0FBTyxFQUFFLENBQUU7Q0FDZDs7QUEvVnJCLEFBa1dvQixlQWxXTCxDQTJNWCxnQkFBZ0IsQ0EwSVosa0JBQWtCLENBR2QsV0FBVyxDQVNQLFNBQVMsQ0FDTCxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUNuRSxRQUFRLEVBQUUsTUFBTztDQVdwQjs7QUEvV3JCLEFBcVd3QixlQXJXVCxDQTJNWCxnQkFBZ0IsQ0EwSVosa0JBQWtCLENBR2QsV0FBVyxDQVNQLFNBQVMsQ0FDTCxJQUFJLENBR0EsR0FBRyxDQUFDO0VBQ0EsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxPQUFRO0NBQ3BEOztBQXZXekIsQUF3V3dCLGVBeFdULENBMk1YLGdCQUFnQixDQTBJWixrQkFBa0IsQ0FHZCxXQUFXLENBU1AsU0FBUyxDQUNMLElBQUksQ0FNQSxPQUFPLENBQUM7RUFDSixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLEtBQUssRUFBRSxHQUFJO0VBQzNFLE9BQU8sRUFBRSxDQUFFO0VBQUUsV0FBVyxFQUFFLFNBQVU7RUFDcEMsVUFBVSxFQUFDLElBQUksQ0FBQyx1Q0FBRyxDQUFxQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07RUN6N0d2RyxVQUFVLEVEMDdHaUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUN6N0doRSxrQkFBa0IsRUR5N0d5QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQ3g3R2hFLGVBQWUsRUR3N0c0QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQ3Y3R2hFLGNBQWMsRUR1N0c2QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQ3Q3R2hFLGFBQWEsRURzN0c4QixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQ2o4R2hFLGFBQWEsRURrOEdpQyxHQUFHO0VDajhHakQscUJBQXFCLEVEaThHeUIsR0FBRztFQ2g4R2pELGtCQUFrQixFRGc4RzRCLEdBQUc7RUMvN0dqRCxpQkFBaUIsRUQrN0c2QixHQUFHO0VDOTdHakQsZ0JBQWdCLEVEODdHOEIsR0FBRztDQUM1Qjs7QUE5V3pCLEFBbVhRLGVBblhPLENBMk1YLGdCQUFnQixDQXdLWixVQUFVLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSztDQXVDZjs7QUEzWlQsQUFxWFksZUFyWEcsQ0EyTVgsZ0JBQWdCLENBd0taLFVBQVUsQ0FFTixFQUFFLENBQUM7RUFDQyxNQUFNLEVBQUUsaUJBQWtCO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsU0FBVTtFQUFFLFVBQVUsRUFBRSxVQUFXO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FFdEg7O0FBeFhiLEFBdVhnQixlQXZYRCxDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQUVOLEVBQUUsQ0FFRSxDQUFDLENBQUM7RUFBRSxPQUFPLEVBQUUsTUFBTztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFBRSxlQUFlLEVBQUUsSUFBSztDQUFJOztBQXZYNUosQUF5WFksZUF6WEcsQ0EyTVgsZ0JBQWdCLENBd0taLFVBQVUsQ0FNTixXQUFXLENBQUE7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFVBQVUsRUFBdUMsc0NBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsSUFBSztDQUFJOztBQXpYL0osQUEwWFksZUExWEcsQ0EyTVgsZ0JBQWdCLENBd0taLFVBQVUsQ0FPTixVQUFVLENBQUE7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFVBQVUsRUFBc0MscUNBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsSUFBSztDQUFJOztBQTFYN0osQUE0WGdCLGVBNVhELENBMk1YLGdCQUFnQixDQXdLWixVQUFVLENBUU4sRUFBRSxDQUNFLEVBQUUsQ0FBQTtFQUNFLGVBQWUsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLENBQUU7Q0FDckM7O0FBOVhqQixBQWlZd0IsZUFqWVQsQ0EyTVgsZ0JBQWdCLENBd0taLFVBQVUsQ0FRTixFQUFFLENBSUUsRUFBRSxDQUNFLEVBQUUsQ0FDRSxDQUFDLENBQUE7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLGVBQWUsRUFBRSxJQUFLO0VBQUcsT0FBTyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsTUFBTztFQUFFLFVBQVUsRUFBRSxTQUFVO0VBQUUsUUFBUSxFQUFFLFFBQVM7Q0FBSTs7QUFqWXZKLEFBcVl5QixlQXJZVixDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQWtCTixFQUFFLENBQUMsRUFBRSxBQUFBLE9BQU8sQ0FBQyxFQUFFLENBQUM7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxDQUFFO0NBQUk7O0FBcll2RSxBQXNZZSxlQXRZQSxDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQW1CTixFQUFFLENBQUMsRUFBRSxDQUFBO0VBQ0QsT0FBTyxFQUFFLElBQUs7Q0FFakI7O0FBelliLEFBd1lnQixlQXhZRCxDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQW1CTixFQUFFLENBQUMsRUFBRSxDQUVELEVBQUUsQ0FBQTtFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUk7O0FBeFkxQyxBQTBZc0IsZUExWVAsQ0EyTVgsZ0JBQWdCLENBd0taLFVBQVUsQ0F1Qk4sRUFBRSxBQUFBLE9BQU8sR0FBQyxFQUFFLENBQUM7RUFBRSxPQUFPLEVBQUUsS0FBTTtDQUFJOztBQTFZOUMsQUEyWStCLGVBM1loQixDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQXdCTixFQUFFLENBQUMsRUFBRSxBQUFBLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtFQUNoQixNQUFNLEVBQUUsaUJBQWtCO0VBQUcsYUFBYSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsU0FBVTtFQUFFLFVBQVUsRUFBRSxVQUFXO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztDQUMzSTs7QUE3WWIsQUE4WTRDLGVBOVk3QixDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQTJCTixFQUFFLENBQUMsRUFBRSxBQUFBLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFBLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtFQUM3QixLQUFLLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxNQUFPO0NBRXJDOztBQWpaYixBQThZNEMsZUE5WTdCLENBMk1YLGdCQUFnQixDQXdLWixVQUFVLENBMkJOLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEFBQUEsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxBQUU1QixNQUFNLENBQUE7RUFBRSxPQUFPLEVBQUMsSUFBSztDQUFJOztBQWhaMUMsQUFrWitCLGVBbFpoQixDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQStCTixXQUFXLEFBQUEsT0FBTyxDQUFDLEVBQUUsQUFDaEIsTUFBTSxFQW5adkIsQUFrWndELGVBbFp6QyxDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQStCaUIsV0FBVyxBQUFBLE9BQU8sR0FBRyxDQUFDLEFBQ3hDLE1BQU0sQ0FBQTtFQy8rR25CLFNBQVMsRUQrK0crQixTQUFNO0VDOStHOUMsaUJBQWlCLEVEOCtHdUIsU0FBTTtFQzcrRzlDLGNBQWMsRUQ2K0cwQixTQUFNO0VDNStHOUMsYUFBYSxFRDQrRzJCLFNBQU07RUMzK0c5QyxZQUFZLEVEMitHNEIsU0FBTTtFQ3QvRzlDLFVBQVUsRURzL0c4RCxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNyL0c1RixrQkFBa0IsRURxL0dzRCxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUNwL0c1RixlQUFlLEVEby9HeUQsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbi9HNUYsY0FBYyxFRG0vRzBELEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2wvRzVGLGFBQWEsRURrL0cyRCxHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7Q0FBSzs7QUFuWnJHLEFBcVp3QixlQXJaVCxDQTJNWCxnQkFBZ0IsQ0F3S1osVUFBVSxDQWtDTixXQUFXLENBQUMsRUFBRSxBQUNWLE1BQU0sRUF0WnRCLEFBcVoyQyxlQXJaNUIsQ0EyTVgsZ0JBQWdCLENBd0taLFVBQVUsQ0FrQ1UsV0FBVyxHQUFJLENBQUMsQUFDNUIsTUFBTSxDQUFBO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQTJDLDBDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFBRSxHQUFHLEVBQUUsSUFBSztFQ2wvR25LLFNBQVMsRURtL0cwQixjQUFNO0VDbC9HekMsaUJBQWlCLEVEay9Ha0IsY0FBTTtFQ2ovR3pDLGNBQWMsRURpL0dxQixjQUFNO0VDaC9HekMsYUFBYSxFRGcvR3NCLGNBQU07RUMvK0d6QyxZQUFZLEVEKytHdUIsY0FBTTtFQzEvR3pDLFVBQVUsRUQyL0cwQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUMxL0d4RCxrQkFBa0IsRUQwL0drQixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7RUN6L0d4RCxlQUFlLEVEeS9HcUIsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDeC9HeEQsY0FBYyxFRHcvR3NCLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3YvR3hELGFBQWEsRUR1L0d1QixHQUFHLENBQUMsS0FBSSxDQUFDLFdBQVc7Q0FDM0M7O0FBelpqQixBQThaUSxlQTlaTyxDQTZaWCwwQkFBMEIsQ0FDdEIsUUFBUSxDQUFBO0VBQ0osYUFBYSxFQUFFLGlCQUFrQjtFQUFFLGNBQWMsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLFVBQVc7RUFBRSxhQUFhLEVBQUUsSUFBSztDQWMxRzs7QUE3YVQsQUFpYVksZUFqYUcsQ0E2WlgsMEJBQTBCLENBQ3RCLFFBQVEsQ0FHSixXQUFXLENBQUE7RUFBRSxTQUFTLEVBQUUsSUFBSztDQUFJOztBQWphN0MsQUFrYVksZUFsYUcsQ0E2WlgsMEJBQTBCLENBQ3RCLFFBQVEsQ0FJSixJQUFJLENBQUE7RUFDQSxLQUFLLEVBQUUsR0FBSTtDQUVkOztBQXJhYixBQW9hZ0IsZUFwYUQsQ0E2WlgsMEJBQTBCLENBQ3RCLFFBQVEsQ0FJSixJQUFJLENBRUEsTUFBTSxDQUFBO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsR0FBSTtDQUFHOztBQXBhaEUsQUFzYVksZUF0YUcsQ0E2WlgsMEJBQTBCLENBQ3RCLFFBQVEsQ0FRSixXQUFXLENBQUE7RUFDUCxNQUFNLEVBQUUsaUJBQWtCO0VBQUUsTUFBTSxFQUFFLElBQUs7RUM1L0dyRCxhQUFhLEVENC9HZ0UsR0FBRztFQzMvR2hGLHFCQUFxQixFRDIvR3dELEdBQUc7RUMxL0doRixrQkFBa0IsRUQwL0cyRCxHQUFHO0VDei9HaEYsaUJBQWlCLEVEeS9HNEQsR0FBRztFQ3gvR2hGLGdCQUFnQixFRHcvRzZELEdBQUc7Q0FFdkU7O0FBemFiLEFBd2FnQixlQXhhRCxDQTZaWCwwQkFBMEIsQ0FDdEIsUUFBUSxDQVFKLFdBQVcsQ0FFUCxNQUFNLENBQUE7RUFBRSxLQUFLLEVBQUUsSUFBSztFQ2wrR2hDLGtCQUFrQixFRGsrR21DLFVBQVU7RUNqK0cvRCxlQUFlLEVEaStHc0MsVUFBVTtFQ2grRy9ELFVBQVUsRURnK0cyQyxVQUFVO0VBQUksTUFBTSxFQUFFLElBQUs7RUM3L0doRixhQUFhLEVENi9HMkYsR0FBRztFQzUvRzNHLHFCQUFxQixFRDQvR21GLEdBQUc7RUMzL0czRyxrQkFBa0IsRUQyL0dzRixHQUFHO0VDMS9HM0csaUJBQWlCLEVEMC9HdUYsR0FBRztFQ3ovRzNHLGdCQUFnQixFRHkvR3dGLEdBQUc7RUFBRyxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBd0MsdUNBQUMsQ0FBQSxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU07Q0FBSTs7QUF4YS9QLEFBMGFZLGVBMWFHLENBNlpYLDBCQUEwQixDQUN0QixRQUFRLENBWUosWUFBWSxDQUFBO0VBQ1IsTUFBTSxFQUFFLENBQUU7RUFBQyxPQUFPLEVBQUUsQ0FBRTtDQUN6Qjs7QUE1YWIsQUE4YVEsZUE5YU8sQ0E2WlgsMEJBQTBCLENBaUJ0QixZQUFZLEFBRVAsT0FBTyxDQUFBO0VBQUUsT0FBTyxFQUFDLElBQUs7Q0FBSTs7QUFoYnZDLEFBaWJZLGVBamJHLENBNlpYLDBCQUEwQixDQWlCdEIsWUFBWSxDQUdSLElBQUksQUFDQyxVQUFXLENBQUEsQUFBQSxDQUFDLEVBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtDQUFFOztBQWxiNUMsQUFpYlksZUFqYkcsQ0E2WlgsMEJBQTBCLENBaUJ0QixZQUFZLENBR1IsSUFBSSxBQUVDLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBQztFQUFDLEtBQUssRUFBRSxHQUFJO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQW5iaEYsQUFvYmdCLGVBcGJELENBNlpYLDBCQUEwQixDQWlCdEIsWUFBWSxDQUdSLElBQUksQ0FHQSxNQUFNLENBQUE7RUFBRSxXQUFXLEVBQUUsTUFBTztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsTUFBTSxFQUFFLGlCQUFrQjtFQUFFLEtBQUssRUFBRSxXQUFZO0VBQUUsYUFBYSxFQUFFLEdBQUk7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFFLE9BQU8sRUFBRSxRQUFTO0VBQUUsVUFBVSxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsS0FBTTtDQUFJOztBQXBialIsQUFxYmdCLGVBcmJELENBNlpYLDBCQUEwQixDQWlCdEIsWUFBWSxDQUdSLElBQUksQ0FJQSxXQUFXLENBQUE7RUFDUCxRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxJQUFLO0NBTXJDOztBQTViakIsQUF1Ym9CLGVBdmJMLENBNlpYLDBCQUEwQixDQWlCdEIsWUFBWSxDQUdSLElBQUksQ0FJQSxXQUFXLENBRVAsVUFBVSxDQUFBO0VBQUUsV0FBVyxFQUFFLE1BQU87RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFBRSxNQUFNLEVBQUUsaUJBQWtCO0VBQUUsYUFBYSxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsUUFBUztFQUFFLFVBQVUsRUFBRSxVQUFXO0NBQUk7O0FBdmI3TSxBQXlid0IsZUF6YlQsQ0E2WlgsMEJBQTBCLENBaUJ0QixZQUFZLENBR1IsSUFBSSxDQUlBLFdBQVcsQ0FHUCxTQUFTLENBQ0wsS0FBSyxDQUFBO0VBQUUsVUFBVSxFQUFxQyxvQ0FBQyxDQUFDLFNBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFFLEdBQUcsRUFBRSxDQUFFO0NBQUk7O0FBemJ2SyxBQTBid0IsZUExYlQsQ0E2WlgsMEJBQTBCLENBaUJ0QixZQUFZLENBR1IsSUFBSSxDQUlBLFdBQVcsQ0FHUCxTQUFTLENBRUwsT0FBTyxDQUFBO0VBQUUsVUFBVSxFQUE2Qyw0Q0FBQyxDQUFDLFNBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFFLEdBQUcsRUFBRSxDQUFFO0NBQUk7O0FBMWJqTCxBQWljWSxlQWpjRyxDQTZaWCwwQkFBMEIsQ0FrQ3RCLFdBQVcsQ0FFUCxXQUFXLENBQUE7RUFBRSxLQUFLLEVBQUUsR0FBSTtDQUFJOztBQWpjeEMsQUFrYzBCLGVBbGNYLENBNlpYLDBCQUEwQixDQWtDdEIsV0FBVyxDQUdQLGFBQWEsQ0FBQyxLQUFLLENBQUE7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFJOztBQWxjdkQsQUFvY1EsZUFwY08sQ0E2WlgsMEJBQTBCLENBdUN0QixZQUFZLENBQUE7RUFDUixPQUFPLEVBQUUsSUFBSztDQWNqQjs7QUFuZFQsQUF3Y29CLGVBeGNMLENBNlpYLDBCQUEwQixDQXVDdEIsWUFBWSxDQUVSLGFBQWEsQUFDUixHQUFHLENBQ0EsS0FBSyxDQUFBO0VBQ0QsU0FBUyxFQUFFLEtBQU07Q0FFcEI7O0FBM2NyQixBQTBjd0IsZUExY1QsQ0E2WlgsMEJBQTBCLENBdUN0QixZQUFZLENBRVIsYUFBYSxBQUNSLEdBQUcsQ0FDQSxLQUFLLENBRUQsS0FBSyxDQUFBO0VBQUUsT0FBTyxFQUFFLEdBQUk7Q0FBSTs7QUExY2hELEFBOGNZLGVBOWNHLENBNlpYLDBCQUEwQixDQXVDdEIsWUFBWSxDQVVSLFlBQVksQ0FBQTtFQUNSLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxTQUFVO0VBQUMsVUFBVSxFQUFDLDJDQUFHLENBQXlDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSTtFQUN4TCxZQUFZLEVBQUUsT0FBUTtFQUN0QixlQUFlLEVBQUUsU0FBVTtFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtDQUN6Rjs7QUFsZGIsQUFzZGdCLGVBdGRELENBNlpYLDBCQUEwQixDQXVEdEIsY0FBYyxDQUNWLGFBQWEsQ0FDVCxjQUFjLENBQUE7RUFBRSxLQUFLLEVBQUUsR0FBSTtDQUFJOztBQXRkL0MsQUEwZHVCLGVBMWRSLENBNlpYLDBCQUEwQixDQXVEdEIsY0FBYyxDQUlWLEtBQUssQ0FDRCxLQUFLLENBQ0QsRUFBRSxDQUFDLEVBQUUsQUFDQSxTQUFTLENBQUE7RUFBRSxPQUFPLEVBQUUsUUFBUztDQUFJOztBQTNkMUQsQUEwZHVCLGVBMWRSLENBNlpYLDBCQUEwQixDQXVEdEIsY0FBYyxDQUlWLEtBQUssQ0FDRCxLQUFLLENBQ0QsRUFBRSxDQUFDLEVBQUUsQUFFQSxTQUFTLENBQUE7RUFDTixPQUFPLEVBQUUsUUFBUztDQUVyQjs7QUEvZHpCLEFBOGQ0QixlQTlkYixDQTZaWCwwQkFBMEIsQ0F1RHRCLGNBQWMsQ0FJVixLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQ0FBQyxFQUFFLEFBRUEsU0FBUyxDQUVOLElBQUksQ0FBQTtFQUFFLE9BQU8sRUFBRSxZQUFhO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFBQyxVQUFVLEVBQUUsR0FBSTtDQUFHOztBQTlkN0YsQUEwZHVCLGVBMWRSLENBNlpYLDBCQUEwQixDQXVEdEIsY0FBYyxDQUlWLEtBQUssQ0FDRCxLQUFLLENBQ0QsRUFBRSxDQUFDLEVBQUUsQUFNQSxZQUFZLENBQUE7RUFBRSxPQUFPLEVBQUUsUUFBUztFQUFFLGFBQWEsRUFBRSxJQUFLO0NBQUk7O0FBaGVuRixBQW9ldUIsZUFwZVIsQ0E2WlgsMEJBQTBCLENBdUR0QixjQUFjLENBSVYsS0FBSyxDQVdELEtBQUssQ0FDRCxFQUFFLENBQUMsRUFBRSxBQUNBLGVBQWUsQ0FBQTtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBQUk7O0FBcmVsRSxBQTBlUSxlQTFlTyxDQTZaWCwwQkFBMEIsQ0E2RXRCLE9BQU8sQ0FBQTtFQUFFLE9BQU8sRUFBRSxNQUFPO0VBQUUsV0FBVyxFQUFFLENBQUc7Q0FBRTs7QUFHckQsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxPQUFPLEVBQUUsbUJBQW9CO0VDbmtIeEQsYUFBYSxFRG9rSFMsR0FBRztFQ25rSHpCLHFCQUFxQixFRG1rSEMsR0FBRztFQ2xrSHpCLGtCQUFrQixFRGtrSEksR0FBRztFQ2prSHpCLGlCQUFpQixFRGlrSEssR0FBRztFQ2hrSHpCLGdCQUFnQixFRGdrSE0sR0FBRztFQ3ppSHpCLGtCQUFrQixFRDBpSEMsVUFBVTtFQ3ppSDdCLGVBQWUsRUR5aUhJLFVBQVU7RUN4aUg3QixVQUFVLEVEd2lIUyxVQUFVO0NBeUJoQzs7QUE1QkQsQUFJSSxpQkFKYSxDQUliLE1BQU0sQ0FBQztFQUNILE1BQU0sRUFBRSxVQUFXO0VBQUUsVUFBVSxFQUFFLE1BQU87Q0FXM0M7O0FBaEJMLEFBTVEsaUJBTlMsQ0FJYixNQUFNLENBRUYsTUFBTSxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxjQUFlO0VBQ25ELE1BQU0sRUFBQyxnQkFBaUI7RUNua0hoQyxVQUFVLEVEb2tIaUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFJO0VDbmtIM0Msa0JBQWtCLEVEbWtIUyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7RUNsa0gzQyxlQUFlLEVEa2tIWSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7RUNqa0gzQyxjQUFjLEVEaWtIYSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7RUNoa0gzQyxhQUFhLEVEZ2tIYyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQUk7RUNoakgzQyxrQkFBa0IsRURpakhTLFVBQVU7RUNoakhyQyxlQUFlLEVEZ2pIWSxVQUFVO0VDL2lIckMsVUFBVSxFRCtpSGlCLFVBQVU7RUM1a0hyQyxhQUFhLEVENmtIaUIsR0FBRztFQzVrSGpDLHFCQUFxQixFRDRrSFMsR0FBRztFQzNrSGpDLGtCQUFrQixFRDJrSFksR0FBRztFQzFrSGpDLGlCQUFpQixFRDBrSGEsR0FBRztFQ3prSGpDLGdCQUFnQixFRHlrSGMsR0FBRztDQUk1Qjs7QUFmVCxBQVlZLGlCQVpLLENBSWIsTUFBTSxDQUVGLE1BQU0sQ0FNRixHQUFHLENBQUM7RUM5a0haLGFBQWEsRUQra0hxQixHQUFHO0VDOWtIckMscUJBQXFCLEVEOGtIYSxHQUFHO0VDN2tIckMsa0JBQWtCLEVENmtIZ0IsR0FBRztFQzVrSHJDLGlCQUFpQixFRDRrSGlCLEdBQUc7RUMza0hyQyxnQkFBZ0IsRUQya0hrQixHQUFHO0NBQzVCOztBQWRiLEFBaUJJLGlCQWpCYSxDQWlCYixJQUFJLENBQUM7RUFDRCxhQUFhLEVBQUUsaUJBQWtCO0VBQUUsT0FBTyxFQUFFLElBQUs7Q0FTcEQ7O0FBM0JMLEFBb0JRLGlCQXBCUyxDQWlCYixJQUFJLENBR0EsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFDOUQsT0FBTyxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsSUFBSztFQzdqSDFDLGtCQUFrQixFRDhqSFMsVUFBVTtFQzdqSHJDLGVBQWUsRUQ2akhZLFVBQVU7RUM1akhyQyxVQUFVLEVENGpIaUIsVUFBVTtDQUVoQzs7QUF6QlQsQUFvQlEsaUJBcEJTLENBaUJiLElBQUksQ0FHQSxJQUFJLEFBSUMsVUFBVyxDQUFBLElBQUksRUFBRTtFQUFDLEtBQUssRUFBQyxHQUFJO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUFHOztBQXhCaEYsQUFpQkksaUJBakJhLENBaUJiLElBQUksQUFTQyxXQUFXLENBQUM7RUFBQyxhQUFhLEVBQUUsQ0FBRTtDQUFHOztBQUcxQyxBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLE1BQU0sRUFBRSxVQUFXO0NBMkR0Qjs7QUE1REQsQUFJUSxxQkFKYSxDQUVqQixXQUFXLENBRVAsV0FBVyxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsSUFBSztDQUFHOztBQUpwRCxBQUtRLHFCQUxhLENBRWpCLFdBQVcsQ0FHUCxTQUFTLENBQUM7RUFDTixLQUFLLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBb0Q3Qjs7QUExRFQsQUFPWSxxQkFQUyxDQUVqQixXQUFXLENBR1AsU0FBUyxDQUVMLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLGlCQUFrQjtFQUN4QyxLQUFLLEVBQUUsT0FBUTtFQUFDLE9BQU8sRUFBRSxJQUFLO0VBQUMsTUFBTSxFQUFFLGNBQWU7RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUN0RSxRQUFRLEVBQUUsTUFBTztFQzlrSDdCLGtCQUFrQixFRCtrSGEsVUFBVTtFQzlrSHpDLGVBQWUsRUQ4a0hnQixVQUFVO0VDN2tIekMsVUFBVSxFRDZrSHFCLFVBQVU7Q0FnQmhDOztBQTNCYixBQVlnQixxQkFaSyxDQUVqQixXQUFXLENBR1AsU0FBUyxDQUVMLElBQUksQ0FLQSxNQUFNLENBQUM7RUFDSCxNQUFNLEVBQUUsa0JBQW1CO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxRQUFTO0VDamxIN0Ysa0JBQWtCLEVEa2xIaUIsVUFBVTtFQ2psSDdDLGVBQWUsRURpbEhvQixVQUFVO0VDaGxIN0MsVUFBVSxFRGdsSHlCLFVBQVU7Q0FDaEM7O0FBZmpCLEFBZ0JnQixxQkFoQkssQ0FFakIsV0FBVyxDQUdQLFNBQVMsQ0FFTCxJQUFJLENBU0EsT0FBTyxDQUFDO0VBQ0osUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLEdBQUk7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUMzRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFdBQVcsRUFBRSxTQUFVO0VBQ3BDLFVBQVUsRUFBQyxJQUFJLENBQUMsdUNBQUcsQ0FBcUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VDM21IL0YsVUFBVSxFRDRtSHlCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFFLElBQUcsQ0FBQyxJQUFJO0VDM21IeEQsa0JBQWtCLEVEMm1IaUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUMxbUh4RCxlQUFlLEVEMG1Ib0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUN6bUh4RCxjQUFjLEVEeW1IcUIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUN4bUh4RCxhQUFhLEVEd21Ic0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUNubkh4RCxhQUFhLEVEb25IeUIsR0FBRztFQ25uSHpDLHFCQUFxQixFRG1uSGlCLEdBQUc7RUNsbkh6QyxrQkFBa0IsRURrbkhvQixHQUFHO0VDam5IekMsaUJBQWlCLEVEaW5IcUIsR0FBRztFQ2huSHpDLGdCQUFnQixFRGduSHNCLEdBQUc7Q0FDNUI7O0FBdEJqQixBQXVCZ0IscUJBdkJLLENBRWpCLFdBQVcsQ0FHUCxTQUFTLENBRUwsSUFBSSxDQWdCQSxHQUFHLENBQUM7RUFDQSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE9BQVE7Q0FDcEQ7O0FBekJqQixBQU9ZLHFCQVBTLENBRWpCLFdBQVcsQ0FHUCxTQUFTLENBRUwsSUFBSSxBQW1CQyxVQUFXLENBQUEsSUFBSSxFQUFFO0VBQUMsWUFBWSxFQUFFLENBQUU7Q0FBRzs7QUExQnRELEFBNEJZLHFCQTVCUyxDQUVqQixXQUFXLENBR1AsU0FBUyxDQXVCTCxPQUFPLENBQUM7RUFDSixLQUFLLEVBQUUsSUFBSztFQUFDLE1BQU0sRUFBRSxpQkFBa0I7RUFBQyxLQUFLLEVBQUUsS0FBTTtFQUFDLE1BQU0sRUFBRSxLQUFNO0VBQ3BFLFVBQVUsRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQzduSC9ELGFBQWEsRUQ4bkhxQixHQUFHO0VDN25IckMscUJBQXFCLEVENm5IYSxHQUFHO0VDNW5IckMsa0JBQWtCLEVENG5IZ0IsR0FBRztFQzNuSHJDLGlCQUFpQixFRDJuSGlCLEdBQUc7RUMxbkhyQyxnQkFBZ0IsRUQwbkhrQixHQUFHO0VDbm1IckMsa0JBQWtCLEVEb21IYSxVQUFVO0VDbm1IekMsZUFBZSxFRG1tSGdCLFVBQVU7RUNsbUh6QyxVQUFVLEVEa21IcUIsVUFBVTtDQXlCaEM7O0FBekRiLEFBaUNnQixxQkFqQ0ssQ0FFakIsV0FBVyxDQUdQLFNBQVMsQ0F1QkwsT0FBTyxDQUtILEdBQUcsQ0FBQztFQUNBLE9BQU8sRUFBRSxLQUFNO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQ2pFLE1BQU0sRUFBRSxrQkFBbUI7RUNsb0gzQyxhQUFhLEVEbW9IeUIsR0FBRztFQ2xvSHpDLHFCQUFxQixFRGtvSGlCLEdBQUc7RUNqb0h6QyxrQkFBa0IsRURpb0hvQixHQUFHO0VDaG9IekMsaUJBQWlCLEVEZ29IcUIsR0FBRztFQy9uSHpDLGdCQUFnQixFRCtuSHNCLEdBQUc7RUN4bUh6QyxrQkFBa0IsRUR5bUhpQixVQUFVO0VDeG1IN0MsZUFBZSxFRHdtSG9CLFVBQVU7RUN2bUg3QyxVQUFVLEVEdW1IeUIsVUFBVTtDQUNoQzs7QUF0Q2pCLEFBdUNnQixxQkF2Q0ssQ0FFakIsV0FBVyxDQUdQLFNBQVMsQ0F1QkwsT0FBTyxDQVdILFFBQVEsQ0FBQztFQUNMLFFBQVEsRUFBRSxRQUFTO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFBQyxNQUFNLEVBQUUsSUFBSztFQUFDLE9BQU8sRUFBRSxnQkFBaUI7RUFDekUsR0FBRyxFQUFFLEdBQUk7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUN6RixXQUFXLEVBQUUsR0FBSTtFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsSUFBSztFQzltSDFGLGtCQUFrQixFRCttSGlCLFVBQVU7RUM5bUg3QyxlQUFlLEVEOG1Ib0IsVUFBVTtFQzdtSDdDLFVBQVUsRUQ2bUh5QixVQUFVO0VDanBIN0MsU0FBUyxFRGtwSDBCLGtCQUFTO0VDanBINUMsaUJBQWlCLEVEaXBIa0Isa0JBQVM7RUNocEg1QyxjQUFjLEVEZ3BIcUIsa0JBQVM7RUMvb0g1QyxhQUFhLEVEK29Ic0Isa0JBQVM7RUM5b0g1QyxZQUFZLEVEOG9IdUIsa0JBQVM7Q0FPL0I7O0FBbkRqQixBQXVDZ0IscUJBdkNLLENBRWpCLFdBQVcsQ0FHUCxTQUFTLENBdUJMLE9BQU8sQ0FXSCxRQUFRLEFBTUgsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUMsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsR0FBSTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQ2pGLE1BQU0sRUFBRSxJQUFLO0VBQ2IsVUFBVSxFQUFFLGlDQUFHLENBQStCLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQ3RwSHpGLFNBQVMsRUR1cEg4QixrQkFBUztFQ3RwSGhELGlCQUFpQixFRHNwSHNCLGtCQUFTO0VDcnBIaEQsY0FBYyxFRHFwSHlCLGtCQUFTO0VDcHBIaEQsYUFBYSxFRG9wSDBCLGtCQUFTO0VDbnBIaEQsWUFBWSxFRG1wSDJCLGtCQUFTO0NBQy9COztBQWxEckIsQUFvRHFCLHFCQXBEQSxDQUVqQixXQUFXLENBR1AsU0FBUyxDQXVCTCxPQUFPLENBd0JILEtBQUssQUFBQSxPQUFPLENBQUM7RUFDVCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQy9FLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsT0FBUTtDQUV0Qzs7QUF4RGpCLEFBb0RxQixxQkFwREEsQ0FFakIsV0FBVyxDQUdQLFNBQVMsQ0F1QkwsT0FBTyxDQXdCSCxLQUFLLEFBQUEsT0FBTyxBQUdQLE1BQU0sQ0FBQTtFQy9vSHZCLFVBQVUsRUQrb0hpQyxJQUFJO0VDOW9IL0Msa0JBQWtCLEVEOG9IeUIsSUFBSTtFQzdvSC9DLGVBQWUsRUQ2b0g0QixJQUFJO0VDNW9IL0MsY0FBYyxFRDRvSDZCLElBQUk7RUMzb0gvQyxhQUFhLEVEMm9IOEIsSUFBSTtDQUFHOztBQU10RCxBQUFBLGVBQWUsQ0FBQztFQUNaLE9BQU8sRUFBRSxVQUFXO0NBS3ZCOztBQU5ELEFBRUksZUFGVyxDQUVYLFNBQVMsQ0FBQztFQUNOLE9BQU8sRUFBRSxZQUFhO0NBRXpCOztBQUxMLEFBSVEsZUFKTyxDQUVYLFNBQVMsQ0FFTCxLQUFLLENBQUM7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUFHOztBQUc5QixBQUNJLGdCQURZLENBQ1osSUFBSSxDQUFDO0VBQ0QsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsU0FBVTtFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQzlELE1BQU0sRUFBRSxpQkFBa0I7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQ3BySGhELFVBQVUsRURxckhjLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ3BySDVDLGtCQUFrQixFRG9ySE0sR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbnJINUMsZUFBZSxFRG1ySFMsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDbHJINUMsY0FBYyxFRGtySFUsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDanJINUMsYUFBYSxFRGlySFcsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDdnFINUMsYUFBYSxFRHdxSGEsR0FBRztFQ3ZxSDdCLHFCQUFxQixFRHVxSEssR0FBRztFQ3RxSDdCLGtCQUFrQixFRHNxSFEsR0FBRztFQ3JxSDdCLGlCQUFpQixFRHFxSFMsR0FBRztFQ3BxSDdCLGdCQUFnQixFRG9xSFUsR0FBRztDQStFNUI7O0FBcEZMLEFBQ0ksZ0JBRFksQ0FDWixJQUFJLEFBTUMsTUFBTSxDQUFDO0VBQ0osWUFBWSxFQUFFLE9BQVE7Q0FDekI7O0FBVFQsQUFVUSxnQkFWUSxDQUNaLElBQUksQ0FTQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsYUFBYSxFQUFFLElBQUs7RUNucEh2RCxrQkFBa0IsRURvcEhTLFVBQVU7RUNucEhyQyxlQUFlLEVEbXBIWSxVQUFVO0VDbHBIckMsVUFBVSxFRGtwSGlCLFVBQVU7Q0E4Q2hDOztBQTFEVCxBQVVRLGdCQVZRLENBQ1osSUFBSSxDQVNBLElBQUksQUFHQyxVQUFVLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLENBQUU7RUFDaEYsT0FBTyxFQUFDLGdCQUFpQjtDQUU1Qjs7QUFqQmIsQUFnQmdCLGdCQWhCQSxDQUNaLElBQUksQ0FTQSxJQUFJLEFBR0MsVUFBVSxDQUdQLElBQUksQ0FBQztFQUFDLFFBQVEsRUFBRSxRQUFTO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUFoQjNELEFBa0JZLGdCQWxCSSxDQUNaLElBQUksQ0FTQSxJQUFJLENBUUEsRUFBRSxDQUFDO0VBQUMsTUFBTSxFQUFFLFNBQVU7Q0FBRzs7QUFsQnJDLEFBbUJZLGdCQW5CSSxDQUNaLElBQUksQ0FTQSxJQUFJLENBU0EsV0FBVyxDQUFDO0VBQ1IsS0FBSyxFQUFFLE9BQVE7RUFBQyxNQUFNLEVBQUUsU0FBVTtFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFDekUsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztDQUMzQzs7QUF0QmIsQUF1QlksZ0JBdkJJLENBQ1osSUFBSSxDQVNBLElBQUksQ0FhQSxRQUFRLENBQUM7RUFDTCxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsSUFBSztFQUFDLE1BQU0sRUFBRSxPQUFRO0NBQ3RDOztBQTFCYixBQTJCWSxnQkEzQkksQ0FDWixJQUFJLENBU0EsSUFBSSxDQWlCQSxhQUFhLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLENBQUU7RUFDdkMsTUFBTSxFQUFFLGlCQUFrQjtFQUFFLE9BQU8sRUFBRSxPQUFRO0VBQzdDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLFdBQVcsRUFBRSxHQUFJO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxPQUFRO0VDbHNIekYsYUFBYSxFRG1zSHFCLEdBQUc7RUNsc0hyQyxxQkFBcUIsRURrc0hhLEdBQUc7RUNqc0hyQyxrQkFBa0IsRURpc0hnQixHQUFHO0VDaHNIckMsaUJBQWlCLEVEZ3NIaUIsR0FBRztFQy9ySHJDLGdCQUFnQixFRCtySGtCLEdBQUc7Q0FDNUI7O0FBakNiLEFBa0NZLGdCQWxDSSxDQUNaLElBQUksQ0FTQSxJQUFJLENBd0JBLFNBQVMsQ0FBQztFQUNOLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLE9BQVE7RUFDOUUsVUFBVSxFQUFFLEtBQU07RUM1cUg5QixrQkFBa0IsRUQ2cUhhLFVBQVU7RUM1cUh6QyxlQUFlLEVENHFIZ0IsVUFBVTtFQzNxSHpDLFVBQVUsRUQycUhxQixVQUFVO0NBb0JoQzs7QUF6RGIsQUFzQ2dCLGdCQXRDQSxDQUNaLElBQUksQ0FTQSxJQUFJLENBd0JBLFNBQVMsQ0FJTCxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsWUFBYTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLFNBQVU7Q0FpQm5FOztBQXhEakIsQUFzQ2dCLGdCQXRDQSxDQUNaLElBQUksQ0FTQSxJQUFJLENBd0JBLFNBQVMsQ0FJTCxDQUFDLEFBRUksS0FBSyxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxRQUFTO0NBTXREOztBQS9DckIsQUFzQ2dCLGdCQXRDQSxDQUNaLElBQUksQ0FTQSxJQUFJLENBd0JBLFNBQVMsQ0FJTCxDQUFDLEFBRUksS0FBSyxBQUVELE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUNoRixVQUFVLEVBQUMseUNBQUcsQ0FBdUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VBQzVFLGVBQWUsRUFBRSxTQUFVO0NBQzlCOztBQTlDekIsQUFzQ2dCLGdCQXRDQSxDQUNaLElBQUksQ0FTQSxJQUFJLENBd0JBLFNBQVMsQ0FJTCxDQUFDLEFBVUksT0FBTyxDQUFDO0VBQ0wsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxRQUFTO0NBTXREOztBQXZEckIsQUFzQ2dCLGdCQXRDQSxDQUNaLElBQUksQ0FTQSxJQUFJLENBd0JBLFNBQVMsQ0FJTCxDQUFDLEFBVUksT0FBTyxBQUVILE9BQU8sQ0FBQztFQUNMLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUNoRixVQUFVLEVBQUMsMkNBQUcsQ0FBeUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VBQzlFLGVBQWUsRUFBRSxTQUFVO0NBQzlCOztBQXREekIsQUFDSSxnQkFEWSxDQUNaLElBQUksQUEwREMsUUFBUSxDQUFDO0VBQ04sT0FBTyxFQUFFLENBQUU7Q0F1QmQ7O0FBbkZULEFBQ0ksZ0JBRFksQ0FDWixJQUFJLEFBMERDLFFBQVEsQUFFSixNQUFNLENBQUM7RUFBQyxZQUFZLEVBQUMsT0FBUTtDQUFHOztBQTdEN0MsQUE4RFksZ0JBOURJLENBQ1osSUFBSSxBQTBEQyxRQUFRLENBR0wsQ0FBQyxDQUFDO0VBQ0UsT0FBTyxFQUFFLEtBQU07RUFBRSxPQUFPLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxNQUFPO0NBbUJ2RDs7QUFsRmIsQUFnRWdCLGdCQWhFQSxDQUNaLElBQUksQUEwREMsUUFBUSxDQUdMLENBQUMsQ0FFRyxDQUFDLENBQUM7RUFDRSxPQUFPLEVBQUUsS0FBTTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsa0JBQW1CO0VBQ3ZFLFVBQVUsRUFBRSxNQUFPO0VBQUUsT0FBTyxFQUFFLElBQUs7RUMxc0huRCxrQkFBa0IsRUQyc0hpQixVQUFVO0VDMXNIN0MsZUFBZSxFRDBzSG9CLFVBQVU7RUN6c0g3QyxVQUFVLEVEeXNIeUIsVUFBVTtFQ3R1SDdDLGFBQWEsRUR1dUh5QixHQUFHO0VDdHVIekMscUJBQXFCLEVEc3VIaUIsR0FBRztFQ3J1SHpDLGtCQUFrQixFRHF1SG9CLEdBQUc7RUNwdUh6QyxpQkFBaUIsRURvdUhxQixHQUFHO0VDbnVIekMsZ0JBQWdCLEVEbXVIc0IsR0FBRztDQUM1Qjs7QUFyRWpCLEFBc0VnQixnQkF0RUEsQ0FDWixJQUFJLEFBMERDLFFBQVEsQ0FHTCxDQUFDLENBUUcsSUFBSSxDQUFDO0VBQ0QsVUFBVSxFQUFFLE1BQU87RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxZQUFhO0VBQ2hFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxHQUFJO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQzFFLE9BQU8sRUFBRSxVQUFXO0NBT3ZCOztBQWpGakIsQUFzRWdCLGdCQXRFQSxDQUNaLElBQUksQUEwREMsUUFBUSxDQUdMLENBQUMsQ0FRRyxJQUFJLEFBS0MsT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFDN0QsSUFBSSxFQUFFLEdBQUk7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUNuQixVQUFVLEVBQUMseUNBQUcsQ0FBdUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0VDeHZIdEYsU0FBUyxFRHl2SDhCLGtCQUFTO0VDeHZIaEQsaUJBQWlCLEVEd3ZIc0Isa0JBQVM7RUN2dkhoRCxjQUFjLEVEdXZIeUIsa0JBQVM7RUN0dkhoRCxhQUFhLEVEc3ZIMEIsa0JBQVM7RUNydkhoRCxZQUFZLEVEcXZIMkIsa0JBQVM7Q0FDL0I7O0FBaEZyQixBQXNGUSxnQkF0RlEsQUFxRlgsR0FBRyxDQUNBLElBQUksQ0FBQztFQUNELE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLENBQUU7Q0FtQjFCOztBQTFHVCxBQXdGWSxnQkF4RkksQUFxRlgsR0FBRyxDQUNBLElBQUksQ0FFQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsR0FBSTtFQUFFLGFBQWEsRUFBRSxLQUFNO0VBQ2xDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBYzVFOztBQXpHYixBQXdGWSxnQkF4RkksQUFxRlgsR0FBRyxDQUNBLElBQUksQ0FFQSxJQUFJLEFBSUMsVUFBVSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsQ0FBRTtFQUFFLFFBQVEsRUFBRSxRQUFTO0NBQUc7O0FBNUY3RSxBQTZGZ0IsZ0JBN0ZBLEFBcUZYLEdBQUcsQ0FDQSxJQUFJLENBRUEsSUFBSSxDQUtBLE1BQU0sQ0FBQztFQUFDLE1BQU0sRUFBRSxTQUFVO0NBQUc7O0FBN0Y3QyxBQThGZ0IsZ0JBOUZBLEFBcUZYLEdBQUcsQ0FDQSxJQUFJLENBRUEsSUFBSSxDQU1BLFdBQVcsQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUE5RmxFLEFBK0ZnQixnQkEvRkEsQUFxRlgsR0FBRyxDQUNBLElBQUksQ0FFQSxJQUFJLENBT0EsYUFBYSxDQUFDO0VBQ1YsS0FBSyxFQUFFLE9BQVE7RUFDZixNQUFNLEVBQUUsVUFBVztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUNoRixXQUFXLEVBQUUsSUFBSztDQUNyQjs7QUFuR2pCLEFBcUdvQixnQkFyR0osQUFxRlgsR0FBRyxDQUNBLElBQUksQ0FFQSxJQUFJLENBWUEsUUFBUSxDQUNKLENBQUMsQ0FBQztFQUNFLFlBQVksRUFBRSxHQUFJO0NBQ3JCOztBQU9yQixBQUFBLGNBQWMsQ0FBQztFQUNYLGNBQWMsRUFBRSxHQUFJO0NBYXZCOztBQWRELEFBRUksY0FGVSxDQUVWLElBQUksQ0FBQztFQUNELE1BQU0sRUFBRSxpQkFBa0I7RUFBRSxVQUFVLEVBQUUsT0FBUTtFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQ3RFLE9BQU8sRUFBRSxvQkFBcUI7RUNyeEhsQyxhQUFhLEVEc3hIYSxHQUFHO0VDcnhIN0IscUJBQXFCLEVEcXhISyxHQUFHO0VDcHhIN0Isa0JBQWtCLEVEb3hIUSxHQUFHO0VDbnhIN0IsaUJBQWlCLEVEbXhIUyxHQUFHO0VDbHhIN0IsZ0JBQWdCLEVEa3hIVSxHQUFHO0NBUTVCOztBQWJMLEFBTVEsY0FOTSxDQUVWLElBQUksQ0FJQSxLQUFLLENBQUM7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUFHOztBQU45QixBQU9RLGNBUE0sQ0FFVixJQUFJLENBS0EsRUFBRSxDQUFDO0VBQUMsTUFBTSxFQUFFLFNBQVU7Q0FBRzs7QUFQakMsQUFRUSxjQVJNLENBRVYsSUFBSSxDQU1BLGNBQWMsQ0FBQztFQUNYLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQy9FLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQ3pFLE1BQU0sRUFBRSxDQUFFO0NBQ2I7O0FBSVQsQUFBQSxTQUFTLENBQUM7RUFDTixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUM3RSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztFQUN6RSxhQUFhLEVBQUUsR0FBSTtDQUV0Qjs7QUFMRCxBQUFBLFNBQVMsQUFJSixNQUFNLENBQUM7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUFHOztBQUU1QixBQUFBLFdBQVcsQ0FBQztFQUNSLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQzVFOztBQUNELEFBQUEsV0FBVyxDQUFDO0VBQ1IsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDN0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FDNUU7O0FBQ0QsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FxQjdCOztBQXRCRCxBQUVJLGtCQUZjLENBRWQsS0FBSyxDQUFDO0VBQ0YsT0FBTyxFQUFFLEtBQU07RUFBRSxhQUFhLEVBQUUsR0FBSTtFQUNwQyxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUM1RTs7QUFOTCxBQU9JLGtCQVBjLENBT2QsVUFBVSxDQUFDO0VBQ1AsT0FBTyxFQUFFLEtBQU07RUFBRSxLQUFLLEVBQUUsSUFBSztFQUM3QixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUM3RSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLEtBQU07RUFBQyxLQUFLLEVBQUUsT0FBUTtDQU9oRjs7QUFqQkwsQUFXUSxrQkFYVSxDQU9kLFVBQVUsQ0FJTixNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsVUFBVztFQUFFLGNBQWMsRUFBRSxHQUFJO0NBQzdDOztBQWJULEFBY1Esa0JBZFUsQ0FPZCxVQUFVLENBT04sU0FBUyxDQUFDO0VBQ04sVUFBVSxFQUFFLElBQUs7RUFBQyxPQUFPLEVBQUUsVUFBVztFQUFFLGNBQWMsRUFBRSxHQUFJO0NBQy9EOztBQWhCVCxBQW1CUSxrQkFuQlUsQUFrQmIsR0FBRyxDQUNBLEtBQUssQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBbkI5QixBQW9CUSxrQkFwQlUsQUFrQmIsR0FBRyxDQUVBLFVBQVUsQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBR25DLEFBQUEsV0FBVyxDQUFBO0VBQ1AsS0FBSyxFQUFFLEtBQU07Q0FhaEI7O0FBZEQsQUFFSSxXQUZPLENBRVAsS0FBSyxDQUFDO0VBQ0YsT0FBTyxFQUFFLEtBQU07RUFBRSxhQUFhLEVBQUUsR0FBSTtFQUNwQyxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLEtBQU07RUFBQyxLQUFLLEVBQUUsSUFBSztDQUM3RTs7QUFOTCxBQU9JLFdBUE8sQ0FPUCxJQUFJLENBQUE7RUFDQSxPQUFPLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQzdCLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLFdBQVcsRUFBRSxJQUFLO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsS0FBTTtDQUdoRTs7QUFiTCxBQU9JLFdBUE8sQ0FPUCxJQUFJLEFBSUMsU0FBUyxDQUFBO0VBQUMsS0FBSyxFQUFFLE9BQVE7Q0FBRzs7QUFYckMsQUFPSSxXQVBPLENBT1AsSUFBSSxBQUtDLFdBQVcsQ0FBQTtFQUFDLEtBQUssRUFBRSxPQUFRO0NBQUc7O0FBR3ZDLEFBQUEsV0FBVyxDQUFBO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUk7O0FBQ3hFLEFBQUEsY0FBYyxDQUFDO0VBQ1gsY0FBYyxFQUFFLElBQUs7Q0FvSXhCOztBQXJJRCxBQUVJLGNBRlUsQ0FFVixJQUFJLENBQUM7RUFDRCxVQUFVLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBRSxpQkFBa0I7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUN0RSxRQUFRLEVBQUUsUUFBUztFQzExSHZCLGFBQWEsRUQyMUhhLEdBQUc7RUMxMUg3QixxQkFBcUIsRUQwMUhLLEdBQUc7RUN6MUg3QixrQkFBa0IsRUR5MUhRLEdBQUc7RUN4MUg3QixpQkFBaUIsRUR3MUhTLEdBQUc7RUN2MUg3QixnQkFBZ0IsRUR1MUhVLEdBQUc7Q0F3RDVCOztBQTdETCxBQUVJLGNBRlUsQ0FFVixJQUFJLEFBS0MsVUFBVyxDQUFBLEFBQUEsSUFBSSxFQUFDO0VBQUMsVUFBVSxFQUFFLElBQUs7Q0FBRzs7QUFQOUMsQUFRUSxjQVJNLENBRVYsSUFBSSxDQU1BLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFNBQVU7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxJQUFLO0VDcDBIN0Usa0JBQWtCLEVEcTBIUyxVQUFVO0VDcDBIckMsZUFBZSxFRG8wSFksVUFBVTtFQ24wSHJDLFVBQVUsRURtMEhpQixVQUFVO0NBa0RoQzs7QUE1RFQsQUFRUSxjQVJNLENBRVYsSUFBSSxDQU1BLElBQUksQUFHQyxLQUFLLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtDQUFHOztBQVhsQyxBQVFRLGNBUk0sQ0FFVixJQUFJLENBTUEsSUFBSSxBQUlDLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztDQUFHOztBQVo5RSxBQWFZLGNBYkUsQ0FFVixJQUFJLENBTUEsSUFBSSxDQUtBLFdBQVcsQ0FBQztFQUNSLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUN6RixXQUFXLEVBQUUsaUJBQWtCO0NBNENsQzs7QUEzRGIsQUFnQmdCLGNBaEJGLENBRVYsSUFBSSxDQU1BLElBQUksQ0FLQSxXQUFXLENBR1AsV0FBVyxDQUFBO0VBQ1AsTUFBTSxFQUFFLElBQUs7Q0FFaEI7O0FBbkJqQixBQWtCb0IsY0FsQk4sQ0FFVixJQUFJLENBTUEsSUFBSSxDQUtBLFdBQVcsQ0FHUCxXQUFXLENBRVAsTUFBTSxDQUFBO0VBQUUsS0FBSyxFQUFFLElBQUs7RUM3MEhwQyxrQkFBa0IsRUQ2MEh1QyxVQUFVO0VDNTBIbkUsZUFBZSxFRDQwSDBDLFVBQVU7RUMzMEhuRSxVQUFVLEVEMjBIK0MsVUFBVTtFQUFJLE1BQU0sRUFBRSxJQUFLO0VDeDJIcEYsYUFBYSxFRHcySCtGLEdBQUc7RUN2MkgvRyxxQkFBcUIsRUR1Mkh1RixHQUFHO0VDdDJIL0csa0JBQWtCLEVEczJIMEYsR0FBRztFQ3IySC9HLGlCQUFpQixFRHEySDJGLEdBQUc7RUNwMkgvRyxnQkFBZ0IsRURvMkg0RixHQUFHO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxJQUFLO0VBQUUsVUFBVSxFQUF3Qyx1Q0FBQyxDQUFBLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTTtFQUFFLFlBQVksRUFBRSxJQUFLO0NBQUk7O0FBbEJuUSxBQW9CZ0IsY0FwQkYsQ0FFVixJQUFJLENBTUEsSUFBSSxDQUtBLFdBQVcsQ0FPUCxJQUFJLENBQUM7RUFDRCxRQUFRLEVBQUUsUUFBUztFQUFFLE1BQU0sRUFBRSxHQUFJO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxHQUFJO0VDbDNIcEYsU0FBUyxFRG0zSDBCLGtCQUFTO0VDbDNINUMsaUJBQWlCLEVEazNIa0Isa0JBQVM7RUNqM0g1QyxjQUFjLEVEaTNIcUIsa0JBQVM7RUNoM0g1QyxhQUFhLEVEZzNIc0Isa0JBQVM7RUMvMkg1QyxZQUFZLEVEKzJIdUIsa0JBQVM7Q0FDL0I7O0FBdkJqQixBQXdCZ0IsY0F4QkYsQ0FFVixJQUFJLENBTUEsSUFBSSxDQUtBLFdBQVcsQ0FXUCxPQUFPLENBQUM7RUFDSixPQUFPLEVBQUUsWUFBYTtFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLEdBQUk7RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VBQzVFLFdBQVcsRUFBRSxTQUFVO0VBQUUsY0FBYyxFQUFFLEdBQUk7RUFBRSxNQUFNLEVBQUUsS0FBTTtFQ2gzSDdFLGFBQWEsRURpM0h5QixHQUFHO0VDaDNIekMscUJBQXFCLEVEZzNIaUIsR0FBRztFQy8ySHpDLGtCQUFrQixFRCsySG9CLEdBQUc7RUM5Mkh6QyxpQkFBaUIsRUQ4MkhxQixHQUFHO0VDNzJIekMsZ0JBQWdCLEVENjJIc0IsR0FBRztFQ3QxSHpDLGtCQUFrQixFRHUxSGlCLFVBQVU7RUN0MUg3QyxlQUFlLEVEczFIb0IsVUFBVTtFQ3IxSDdDLFVBQVUsRURxMUh5QixVQUFVO0NBQ2hDOztBQTdCakIsQUE4QitELGNBOUJqRCxDQUVWLElBQUksQ0FNQSxJQUFJLENBS0EsV0FBVyxDQWlCUCxnQkFBZ0IsRUFBQyxBQUFBLFdBQUMsQ0FBWSxpQkFBaUIsQUFBN0IsRUFBK0I7RUFDN0MsUUFBUSxFQUFFLFFBQVM7RUFBQyxHQUFHLEVBQUUsR0FBSTtFQUFFLFNBQVMsRUFBRSxnQkFBVTtFQUFRLFdBQVcsRUFBRSxDQUFFO0NBQzlFOztBQWhDakIsQUFpQ2dCLGNBakNGLENBRVYsSUFBSSxDQU1BLElBQUksQ0FLQSxXQUFXLENBb0JQLGdCQUFnQixDQUFBO0VBQ1gsVUFBVSxFQUFFLElBQUs7Q0F3QnJCOztBQTFEakIsQUFtQ29CLGNBbkNOLENBRVYsSUFBSSxDQU1BLElBQUksQ0FLQSxXQUFXLENBb0JQLGdCQUFnQixDQUVaLHFCQUFxQixDQUFDO0VBQ2xCLFVBQVUsRUFBRSxDQUFFO0VBQUUsUUFBUSxFQUFFLE1BQU87RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRyxVQUFVLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUcsT0FBTyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsS0FBTTtDQWN4Sjs7QUFsRHJCLEFBcUN3QixjQXJDVixDQUVWLElBQUksQ0FNQSxJQUFJLENBS0EsV0FBVyxDQW9CUCxnQkFBZ0IsQ0FFWixxQkFBcUIsQ0FFakIsRUFBRSxDQUFBO0VBQ0UsT0FBTyxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsYUFBYSxFQUFFLGlCQUFrQjtDQVdoRjs7QUFqRHpCLEFBcUN3QixjQXJDVixDQUVWLElBQUksQ0FNQSxJQUFJLENBS0EsV0FBVyxDQW9CUCxnQkFBZ0IsQ0FFWixxQkFBcUIsQ0FFakIsRUFBRSxBQUVHLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBQztFQUFFLE1BQU0sRUFBRSxDQUFFO0NBQUk7O0FBdkMxRCxBQXdDNEIsY0F4Q2QsQ0FFVixJQUFJLENBTUEsSUFBSSxDQUtBLFdBQVcsQ0FvQlAsZ0JBQWdCLENBRVoscUJBQXFCLENBRWpCLEVBQUUsQ0FHRSxDQUFDLENBQUE7RUFDRyxPQUFPLEVBQUUsS0FBTTtFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsWUFBWSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsVUFBVztFQUFFLEtBQUssRUFBRSxJQUFLO0NBTzFKOztBQWhEN0IsQUEwQ2dDLGNBMUNsQixDQUVWLElBQUksQ0FNQSxJQUFJLENBS0EsV0FBVyxDQW9CUCxnQkFBZ0IsQ0FFWixxQkFBcUIsQ0FFakIsRUFBRSxDQUdFLENBQUMsQ0FFRyxJQUFJLENBQUE7RUFDQSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLElBQUs7Q0FJdkY7O0FBL0NqQyxBQTBDZ0MsY0ExQ2xCLENBRVYsSUFBSSxDQU1BLElBQUksQ0FLQSxXQUFXLENBb0JQLGdCQUFnQixDQUVaLHFCQUFxQixDQUVqQixFQUFFLENBR0UsQ0FBQyxDQUVHLElBQUksQUFFQyxPQUFPLENBQUE7RUFBRSxVQUFVLEVBQUUscUNBQUcsQ0FBbUMsU0FBUztDQUFLOztBQTVDOUcsQUEwQ2dDLGNBMUNsQixDQUVWLElBQUksQ0FNQSxJQUFJLENBS0EsV0FBVyxDQW9CUCxnQkFBZ0IsQ0FFWixxQkFBcUIsQ0FFakIsRUFBRSxDQUdFLENBQUMsQ0FFRyxJQUFJLEFBR0MsS0FBSyxDQUFBO0VBQUUsVUFBVSxFQUFFLDRDQUFHLENBQTBDLFNBQVM7Q0FBSzs7QUE3Q25ILEFBMENnQyxjQTFDbEIsQ0FFVixJQUFJLENBTUEsSUFBSSxDQUtBLFdBQVcsQ0FvQlAsZ0JBQWdCLENBRVoscUJBQXFCLENBRWpCLEVBQUUsQ0FHRSxDQUFDLENBRUcsSUFBSSxBQUlDLE1BQU0sQ0FBQTtFQUFFLFVBQVUsRUFBRSx3Q0FBRyxDQUFzQyxTQUFTO0NBQUs7O0FBOUNoSCxBQW1Eb0IsY0FuRE4sQ0FFVixJQUFJLENBTUEsSUFBSSxDQUtBLFdBQVcsQ0FvQlAsZ0JBQWdCLENBa0JaLEtBQUssQ0FBQTtFQUNELE9BQU8sRUFBRSxLQUFNO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFBRSxNQUFNLEVBQUUsaUJBQWtCO0VBQUUsT0FBTyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsR0FBSTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLElBQUksRUFBRSxNQUFPO0NBRTNLOztBQXREckIsQUF1RG9CLGNBdkROLENBRVYsSUFBSSxDQU1BLElBQUksQ0FLQSxXQUFXLENBb0JQLGdCQUFnQixDQXNCWixLQUFLLENBQUE7RUFDRCxVQUFVLEVBQUUsQ0FBRTtDQUNqQjs7QUF6RHJCLEFBZ0VZLGNBaEVFLEFBOERULFVBQVUsQ0FDUCxJQUFJLENBQ0EsSUFBSSxBQUNDLEtBQUssQ0FBQTtFQUFFLEtBQUssRUFBRSxHQUFJO0NBQUk7O0FBakV2QyxBQWdFWSxjQWhFRSxBQThEVCxVQUFVLENBQ1AsSUFBSSxDQUNBLElBQUksQUFFQyxNQUFNLENBQUE7RUFBRSxLQUFLLEVBQUUsR0FBSTtDQUFJOztBQWxFeEMsQUFzRVksY0F0RUUsQUE4RFQsVUFBVSxDQU9QLGFBQWEsQ0FDVCxLQUFLLENBQUE7RUFDRCxNQUFNLEVBQUUsTUFBTztDQUNsQjs7QUF4RWIsQUE0RVEsY0E1RU0sQUEyRVQsS0FBSyxDQUNGLElBQUksQUFDQyxNQUFNLENBQUM7RUFDSixhQUFhLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxLQUFNO0NBWTNDOztBQTFGYixBQStFZ0IsY0EvRUYsQUEyRVQsS0FBSyxDQUNGLElBQUksQUFDQyxNQUFNLENBRUgsV0FBVyxDQUFDO0VBQ1IsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDN0UsV0FBVyxFQUFFLEdBQUk7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxPQUFRO0NBSTVEOztBQXJGakIsQUErRWdCLGNBL0VGLEFBMkVULEtBQUssQ0FDRixJQUFJLEFBQ0MsTUFBTSxDQUVILFdBQVcsQUFHTixNQUFNLENBQUM7RUFDSixLQUFLLEVBQUUsT0FBUTtDQUNsQjs7QUFwRnJCLEFBc0ZnQixjQXRGRixBQTJFVCxLQUFLLENBQ0YsSUFBSSxBQUNDLE1BQU0sQ0FTSCxTQUFTLENBQUM7RUFDTixNQUFNLEVBQUUsVUFBVztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUN2RSxLQUFLLEVBQUUsT0FBUTtDQUNsQjs7QUF6RmpCLEFBQUEsY0FBYyxBQTZGVCxRQUFRLENBQUE7RUFDTCxPQUFPLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxVQUFXO0NBc0MxQzs7QUFwSUwsQUFnR1ksY0FoR0UsQUE2RlQsUUFBUSxDQUVMLElBQUksQ0FDQSxJQUFJLEFBQ0MsTUFBTSxDQUFBO0VBQUUsS0FBSyxFQUFFLEdBQUk7Q0FBSTs7QUFqR3hDLEFBZ0dZLGNBaEdFLEFBNkZULFFBQVEsQ0FFTCxJQUFJLENBQ0EsSUFBSSxBQUVDLEtBQUssQ0FBQTtFQUFFLEtBQUssRUFBRSxHQUFJO0NBQUk7O0FBbEd2QyxBQW1HZ0IsY0FuR0YsQUE2RlQsUUFBUSxDQUVMLElBQUksQ0FDQSxJQUFJLENBR0EsV0FBVyxDQUFBO0VBQ1AsTUFBTSxFQUFFLElBQUs7Q0FFaEI7O0FBdEdqQixBQXFHb0IsY0FyR04sQUE2RlQsUUFBUSxDQUVMLElBQUksQ0FDQSxJQUFJLENBR0EsV0FBVyxDQUVQLEVBQUUsQ0FBQTtFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFJOztBQXJHakYsQUF3R29CLGNBeEdOLEFBNkZULFFBQVEsQ0FFTCxJQUFJLENBQ0EsSUFBSSxDQU9BLFdBQVcsQ0FDUCxLQUFLLENBQUE7RUFBRSxXQUFXLEVBQUUsR0FBSztDQUFFOztBQXhHL0MsQUE0R1EsY0E1R00sQUE2RlQsUUFBUSxDQWVMLEtBQUssQ0FBQTtFQUFFLEtBQUssRUFBRSxHQUFJO0NBQUk7O0FBNUc5QixBQTZHUSxjQTdHTSxBQTZGVCxRQUFRLENBZ0JMLE1BQU0sQ0FBQTtFQUFFLEtBQUssRUFBRSxHQUFJO0NBQUk7O0FBN0cvQixBQThHUSxjQTlHTSxBQTZGVCxRQUFRLENBaUJMLGFBQWEsQ0FBQztFQUNWLEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEtBQU07Q0FvQmhDOztBQW5JVCxBQWlIZ0IsY0FqSEYsQUE2RlQsUUFBUSxDQWlCTCxhQUFhLEFBRVIsV0FBVyxDQUNSLElBQUksQ0FBQTtFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FBSTs7QUFqSDdELEFBbUhZLGNBbkhFLEFBNkZULFFBQVEsQ0FpQkwsYUFBYSxDQUtULFdBQVcsQ0FBQztFQUNSLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFBRSxRQUFRLEVBQUUsUUFBUztFQUNwRSxLQUFLLEVBQUUsR0FBSTtFQUFDLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtFQUFDLFlBQVksRUFBRSxJQUFLO0VDMzhIcEYsYUFBYSxFRDQ4SHFCLEdBQUc7RUMzOEhyQyxxQkFBcUIsRUQyOEhhLEdBQUc7RUMxOEhyQyxrQkFBa0IsRUQwOEhnQixHQUFHO0VDejhIckMsaUJBQWlCLEVEeThIaUIsR0FBRztFQ3g4SHJDLGdCQUFnQixFRHc4SGtCLEdBQUc7Q0FPNUI7O0FBN0hiLEFBdUhnQixjQXZIRixBQTZGVCxRQUFRLENBaUJMLGFBQWEsQ0FLVCxXQUFXLENBSVAsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLEdBQUk7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUNwRixVQUFVLEVBQUUsTUFBTztFQ3A3SG5DLGtCQUFrQixFRHE3SGlCLFVBQVU7RUNwN0g3QyxlQUFlLEVEbzdIb0IsVUFBVTtFQ243SDdDLFVBQVUsRURtN0h5QixVQUFVO0NBRWhDOztBQTVIakIsQUEySG9CLGNBM0hOLEFBNkZULFFBQVEsQ0FpQkwsYUFBYSxDQUtULFdBQVcsQ0FJUCxNQUFNLENBSUYsR0FBRyxDQUFDO0VBQUMsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUEzSHpDLEFBOEhZLGNBOUhFLEFBNkZULFFBQVEsQ0FpQkwsYUFBYSxDQWdCVCxjQUFjLENBQUM7RUFDWCxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUN2RixLQUFLLEVBQUUsR0FBSTtFQzM3SHZCLGtCQUFrQixFRDQ3SGEsVUFBVTtFQzM3SHpDLGVBQWUsRUQyN0hnQixVQUFVO0VDMTdIekMsVUFBVSxFRDA3SHFCLFVBQVU7Q0FDaEM7O0FBS2IsQUFBQSxhQUFhLENBQUM7RUFDVixNQUFNLEVBQUMsaUJBQWtCO0VDOTlIekIsYUFBYSxFRCs5SFMsR0FBRztFQzk5SHpCLHFCQUFxQixFRDg5SEMsR0FBRztFQzc5SHpCLGtCQUFrQixFRDY5SEksR0FBRztFQzU5SHpCLGlCQUFpQixFRDQ5SEssR0FBRztFQzM5SHpCLGdCQUFnQixFRDI5SE0sR0FBRztDQTJCNUI7O0FBN0JELEFBR0ksYUFIUyxDQUdULFNBQVMsQ0FBQztFQUNOLE9BQU8sRUFBRSxTQUFVO0VBQUUsVUFBVSxFQUFFLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztFQ2orSDNELGFBQWEsRURtK0hhLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7RUNsK0hyQyxxQkFBcUIsRURrK0hLLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7RUNqK0hyQyxrQkFBa0IsRURpK0hRLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7RUNoK0hyQyxpQkFBaUIsRURnK0hTLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7RUMvOUhyQyxnQkFBZ0IsRUQrOUhVLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FnQnBDOztBQXRCTCxBQU9RLGFBUEssQ0FHVCxTQUFTLENBSUwsSUFBSSxDQUFDO0VDejhIVCxrQkFBa0IsRUQwOEhTLFVBQVU7RUN6OEhyQyxlQUFlLEVEeThIWSxVQUFVO0VDeDhIckMsVUFBVSxFRHc4SGlCLFVBQVU7Q0FNaEM7O0FBZFQsQUFPUSxhQVBLLENBR1QsU0FBUyxDQUlMLElBQUksQUFFQyxLQUFLLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxVQUFXO0NBQUc7O0FBVHhELEFBT1EsYUFQSyxDQUdULFNBQVMsQ0FJTCxJQUFJLEFBR0MsTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUFWbkMsQUFXWSxhQVhDLENBR1QsU0FBUyxDQUlMLElBQUksQ0FJQSxTQUFTLENBQUE7RUFDTCxPQUFPLEVBQUUsWUFBYTtFQUFFLFlBQVksRUFBRSxLQUFNO0NBQy9DOztBQWJiLEFBZVEsYUFmSyxDQUdULFNBQVMsQ0FZTCxhQUFhLENBQUE7RUFDVCxPQUFPLEVBQUUsS0FBTTtDQUtsQjs7QUFyQlQsQUFpQlksYUFqQkMsQ0FHVCxTQUFTLENBWUwsYUFBYSxDQUVULFNBQVMsQ0FBQTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBakJ0QyxBQWtCWSxhQWxCQyxDQUdULFNBQVMsQ0FZTCxhQUFhLENBR1QsS0FBSyxDQUFBO0VBQ0QsTUFBTSxFQUFFLE1BQU87Q0FDbEI7O0FBcEJiLEFBdUJJLGFBdkJTLENBdUJULFFBQVEsQ0FBQztFQUNMLE9BQU8sRUFBRSxtQkFBb0I7Q0FJaEM7O0FBNUJMLEFBdUJJLGFBdkJTLENBdUJULFFBQVEsQUFFSCxVQUFVLENBQUM7RUFDUixPQUFPLEVBQUUsbUJBQW9CO0NBQ2hDOztBQUlULEFBQUEsZ0JBQWdCLENBQUM7RUFDYixVQUFVLEVBQUUsT0FBUTtFQUFFLE9BQU8sRUFBRSxtQkFBb0I7RUFBRSxhQUFhLEVBQUUsSUFBSztFQzcvSHpFLGFBQWEsRUQ4L0hTLEdBQUc7RUM3L0h6QixxQkFBcUIsRUQ2L0hDLEdBQUc7RUM1L0h6QixrQkFBa0IsRUQ0L0hJLEdBQUc7RUMzL0h6QixpQkFBaUIsRUQyL0hLLEdBQUc7RUMxL0h6QixnQkFBZ0IsRUQwL0hNLEdBQUc7Q0F5QjVCOztBQTNCRCxBQU1ZLGdCQU5JLENBR1osSUFBSSxDQUVBLElBQUksQ0FDQSxNQUFNLENBQUM7RUFDSCxLQUFLLEVBQUUsSUFBSztFQUFFLFlBQVksRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUM1RSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUM3RSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQU81RTs7QUFoQmIsQUFNWSxnQkFOSSxDQUdaLElBQUksQ0FFQSxJQUFJLENBQ0EsTUFBTSxBQUlELE1BQU0sQ0FBQztFQUNKLFFBQVEsRUFBQyxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFBRSxLQUFLLEVBQUUsQ0FBRTtFQUNuRixVQUFVLEVBQUUsOENBQUcsQ0FBNEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VBQ2xGLGVBQWUsRUFBRSxTQUFVO0VDaGhJM0MsU0FBUyxFRGloSTBCLGtCQUFTO0VDaGhJNUMsaUJBQWlCLEVEZ2hJa0Isa0JBQVM7RUMvZ0k1QyxjQUFjLEVEK2dJcUIsa0JBQVM7RUM5Z0k1QyxhQUFhLEVEOGdJc0Isa0JBQVM7RUM3Z0k1QyxZQUFZLEVENmdJdUIsa0JBQVM7Q0FDL0I7O0FBZmpCLEFBaUJZLGdCQWpCSSxDQUdaLElBQUksQ0FFQSxJQUFJLENBWUEsV0FBVyxDQUFDO0VBQ1IsS0FBSyxFQUFFLElBQUs7RUFDWixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxHQUFJO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUM1RSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLEtBQU07RUFBQyxLQUFLLEVBQUUsSUFBSztDQUM3RTs7QUFyQmIsQUFzQlksZ0JBdEJJLENBR1osSUFBSSxDQUVBLElBQUksQ0FpQkEsQ0FBQyxDQUFDO0VBQ0UsTUFBTSxFQUFFLFVBQVc7Q0FDdEI7O0FBS2IsQUFBQSxlQUFlLENBQUM7RUFDWixPQUFPLEVBQUUsU0FBVTtFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztDQWtCdkY7O0FBbkJELEFBRUksZUFGVyxDQUVYLEtBQUssQ0FBQztFQUNGLE9BQU8sRUFBRSxZQUFhO0VBQUMsY0FBYyxFQUFFLE1BQU87RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxVQUFXO0VBQ3ZGLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUN6RDs7QUFOTCxBQU9JLGVBUFcsQ0FPWCxLQUFLLENBQUM7RUFDRixPQUFPLEVBQUUsWUFBYTtFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBQyxVQUFXO0VBQ3BHLE1BQU0sRUFBRSxjQUFlO0VBQUUsT0FBTyxFQUFFLE1BQU87RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEtBQU07RUN2Z0k1RixrQkFBa0IsRUR3Z0lLLFVBQVU7RUN2Z0lqQyxlQUFlLEVEdWdJUSxVQUFVO0VDdGdJakMsVUFBVSxFRHNnSWEsVUFBVTtFQ2pqSWpDLFVBQVUsRURrakljLEdBQUcsQ0FBQyxLQUFJLENBQUMsV0FBVztFQ2pqSTVDLGtCQUFrQixFRGlqSU0sR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDaGpJNUMsZUFBZSxFRGdqSVMsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDL2lJNUMsY0FBYyxFRCtpSVUsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0VDOWlJNUMsYUFBYSxFRDhpSVcsR0FBRyxDQUFDLEtBQUksQ0FBQyxXQUFXO0NBSTNDOztBQWZMLEFBT0ksZUFQVyxDQU9YLEtBQUssQUFLQSxNQUFNLENBQUM7RUM5aElaLFVBQVUsRUQraElpQixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsc0JBQUk7RUM5aEkvQyxrQkFBa0IsRUQ4aElTLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQzdoSS9DLGVBQWUsRUQ2aElZLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQzVoSS9DLGNBQWMsRUQ0aElhLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtFQzNoSS9DLGFBQWEsRUQyaEljLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxzQkFBSTtDQUMxQzs7QUFkVCxBQWdCSSxlQWhCVyxDQWdCWCxNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsWUFBYTtFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxPQUFRO0NBQ25HOztBQUVMLEFBR1EsWUFISSxDQUNSLElBQUksQ0FFQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxTQUFVO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxNQUFNLEVBQUUsaUJBQWtCO0VDdGhJeEYsa0JBQWtCLEVEdWhJUyxVQUFVO0VDdGhJckMsZUFBZSxFRHNoSVksVUFBVTtFQ3JoSXJDLFVBQVUsRURxaElpQixVQUFVO0NBdUNoQzs7QUE1Q1QsQUFHUSxZQUhJLENBQ1IsSUFBSSxDQUVBLElBQUksQUFHQyxVQUFXLENBQUEsSUFBSSxFQUFFO0VBQUMsTUFBTSxFQUFFLE9BQVE7Q0FBRzs7QUFObEQsQUFPWSxZQVBBLENBQ1IsSUFBSSxDQUVBLElBQUksQ0FJQSxZQUFZLENBQUM7RUFDVCxLQUFLLEVBQUUsS0FBTTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxHQUFHLEVBQUUsQ0FBRTtFQUFFLElBQUksRUFBRSxDQUFFO0VBQ3BFLFVBQVUsRUFBRSwwQ0FBRyxDQUF3QyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU07RUFDN0UsZUFBZSxFQUFFLElBQUs7Q0FrQnpCOztBQTVCYixBQVdnQixZQVhKLENBQ1IsSUFBSSxDQUVBLElBQUksQ0FJQSxZQUFZLENBSVIsSUFBSSxDQUFDO0VBQ0QsUUFBUSxFQUFFLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLE9BQU8sRUFBRSxNQUFPO0VBQ3ZGLFVBQVUsRUFBRSxNQUFPO0VBQUUsS0FBSyxFQUFFLElBQUs7RUMvaElqRCxrQkFBa0IsRURnaUlpQixVQUFVO0VDL2hJN0MsZUFBZSxFRCtoSW9CLFVBQVU7RUM5aEk3QyxVQUFVLEVEOGhJeUIsVUFBVTtFQ2xrSTdDLFNBQVMsRURta0kwQixrQkFBUztFQ2xrSTVDLGlCQUFpQixFRGtrSWtCLGtCQUFTO0VDamtJNUMsY0FBYyxFRGlrSXFCLGtCQUFTO0VDaGtJNUMsYUFBYSxFRGdrSXNCLGtCQUFTO0VDL2pJNUMsWUFBWSxFRCtqSXVCLGtCQUFTO0NBWS9COztBQTNCakIsQUFnQm9CLFlBaEJSLENBQ1IsSUFBSSxDQUVBLElBQUksQ0FJQSxZQUFZLENBSVIsSUFBSSxDQUtBLElBQUksQ0FBQztFQUNELE9BQU8sRUFBRSxLQUFNO0NBU2xCOztBQTFCckIsQUFnQm9CLFlBaEJSLENBQ1IsSUFBSSxDQUVBLElBQUksQ0FJQSxZQUFZLENBSVIsSUFBSSxDQUtBLElBQUksQUFFQyxNQUFNLENBQUM7RUFDSixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUM3RSxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7Q0FDakU7O0FBckJ6QixBQWdCb0IsWUFoQlIsQ0FDUixJQUFJLENBRUEsSUFBSSxDQUlBLFlBQVksQ0FJUixJQUFJLENBS0EsSUFBSSxBQU1DLFdBQVcsQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQzdFLFdBQVcsRUFBRSxHQUFJO0NBQ3BCOztBQXpCekIsQUE2QlksWUE3QkEsQ0FDUixJQUFJLENBRUEsSUFBSSxDQTBCQSxLQUFLLENBQUM7RUFDRixPQUFPLEVBQUUsb0JBQXFCO0NBYWpDOztBQTNDYixBQStCZ0IsWUEvQkosQ0FDUixJQUFJLENBRUEsSUFBSSxDQTBCQSxLQUFLLENBRUQsS0FBSyxDQUFDO0VBQ0YsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLEdBQUk7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFVBQVc7Q0FDOUU7O0FBbENqQixBQW1DZ0IsWUFuQ0osQ0FDUixJQUFJLENBRUEsSUFBSSxDQTBCQSxLQUFLLENBTUQsUUFBUSxDQUFDO0VBQ0wsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFDekUsTUFBTSxFQUFDLFVBQVc7Q0FDckI7O0FBdkNqQixBQXdDZ0IsWUF4Q0osQ0FDUixJQUFJLENBRUEsSUFBSSxDQTBCQSxLQUFLLENBV0QsU0FBUyxDQUFDO0VBQ04sVUFBVSxFQUFFLEtBQU07Q0FDckI7O0FBTWpCLEFBQUEsY0FBYyxDQUFDO0VBQ1gsYUFBYSxFQUFFLElBQUs7Q0FzQnZCOztBQXZCRCxBQUVJLGNBRlUsQ0FFVixLQUFLLENBQUM7RUFDRixhQUFhLEVBQUUsaUJBQWtCO0NBbUJwQzs7QUF0QkwsQUFJUSxjQUpNLENBRVYsS0FBSyxDQUVELENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLE1BQU87Q0FnQnBDOztBQXJCVCxBQU1ZLGNBTkUsQ0FFVixLQUFLLENBRUQsQ0FBQyxDQUVHLEVBQUUsQ0FBQztFQUNDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDaEcsS0FBSyxFQUFFLE9BQVE7RUFBRSxhQUFhLEVBQUUsSUFBSztDQUN4Qzs7QUFUYixBQVVZLGNBVkUsQ0FFVixLQUFLLENBRUQsQ0FBQyxDQU1HLENBQUMsQ0FBQztFQUNFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsQ0FBRTtDQUMzQjs7QUFiYixBQUlRLGNBSk0sQ0FFVixLQUFLLENBRUQsQ0FBQyxBQVVJLFlBQWEsQ0FBRTtFQUFDLFVBQVUsRUFBRSxpQkFBa0I7Q0FBRzs7QUFkOUQsQUFJUSxjQUpNLENBRVYsS0FBSyxDQUVELENBQUMsQUFXSSxNQUFNLENBQUM7RUFDSixPQUFPLEVBQUUsbUJBQW9CO0VBQzdCLFVBQVUsRUFBRSxPQUFRO0NBR3ZCOztBQXBCYixBQWtCZ0IsY0FsQkYsQ0FFVixLQUFLLENBRUQsQ0FBQyxBQVdJLE1BQU0sQ0FHSCxFQUFFLENBQUM7RUFBQyxLQUFLLEVBQUUsT0FBUTtDQUFHOztBQWxCdEMsQUFtQmdCLGNBbkJGLENBRVYsS0FBSyxDQUVELENBQUMsQUFXSSxNQUFNLENBSUgsQ0FBQyxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFLbEMsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLE9BQU8sRUFBRSxtQkFBb0I7RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQ3RuSW5HLGFBQWEsRUR1bklTLEdBQUc7RUN0bkl6QixxQkFBcUIsRURzbklDLEdBQUc7RUNybkl6QixrQkFBa0IsRURxbklJLEdBQUc7RUNwbkl6QixpQkFBaUIsRURvbklLLEdBQUc7RUNubkl6QixnQkFBZ0IsRURtbklNLEdBQUc7RUM1bEl6QixrQkFBa0IsRUQ2bElDLFVBQVU7RUM1bEk3QixlQUFlLEVENGxJSSxVQUFVO0VDM2xJN0IsVUFBVSxFRDJsSVMsVUFBVTtDQUVoQzs7QUFDRCxBQUFBLFNBQVMsQ0FBQztFQUNOLGFBQWEsRUFBRSxJQUFLO0VBQ3BCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLGNBQWMsRUFBRSxLQUFNO0NBNkJ6Qjs7QUFoQ0QsQUFJSSxTQUpLLENBSUwsV0FBVyxDQUFDO0VBQ1IsVUFBVSxFQUFFLE1BQU87RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VBQUUsT0FBTyxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQ3BGLE1BQU0sRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VDam9JdkUsYUFBYSxFRGtvSWEsR0FBRztFQ2pvSTdCLHFCQUFxQixFRGlvSUssR0FBRztFQ2hvSTdCLGtCQUFrQixFRGdvSVEsR0FBRztFQy9uSTdCLGlCQUFpQixFRCtuSVMsR0FBRztFQzluSTdCLGdCQUFnQixFRDhuSVUsR0FBRztFQ3ZtSTdCLGtCQUFrQixFRHdtSUssVUFBVTtFQ3ZtSWpDLGVBQWUsRUR1bUlRLFVBQVU7RUN0bUlqQyxVQUFVLEVEc21JYSxVQUFVO0NBZWhDOztBQXZCTCxBQVNRLFNBVEMsQ0FJTCxXQUFXLENBS1AsSUFBSSxDQUFDO0VBQ0QsTUFBTSxFQUFDLGtCQUFtQjtFQUFFLE9BQU8sRUFBRSxNQUFPO0VDcm9JcEQsYUFBYSxFRHNvSWlCLEdBQUc7RUNyb0lqQyxxQkFBcUIsRURxb0lTLEdBQUc7RUNwb0lqQyxrQkFBa0IsRURvb0lZLEdBQUc7RUNub0lqQyxpQkFBaUIsRURtb0lhLEdBQUc7RUNsb0lqQyxnQkFBZ0IsRURrb0ljLEdBQUc7Q0FDNUI7O0FBWlQsQUFhUSxTQWJDLENBSUwsV0FBVyxDQVNQLFFBQVEsQ0FBQztFQUNMLE9BQU8sRUFBRSxZQUFhO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsVUFBVztFQUNqRSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsR0FBSTtFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsSUFBSztDQU03RTs7QUF0QlQsQUFhUSxTQWJDLENBSUwsV0FBVyxDQVNQLFFBQVEsQUFJSCxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxHQUFJO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDbEYsVUFBVSxFQUFFLHFDQUFHLENBQW1DLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQ3JwSXJGLFNBQVMsRURzcElzQixlQUFTO0VDcnBJeEMsaUJBQWlCLEVEcXBJYyxlQUFTO0VDcHBJeEMsY0FBYyxFRG9wSWlCLGVBQVM7RUNucEl4QyxhQUFhLEVEbXBJa0IsZUFBUztFQ2xwSXhDLFlBQVksRURrcEltQixlQUFTO0NBQy9COztBQXJCYixBQXdCSSxTQXhCSyxDQXdCTCxXQUFXLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLElBQUksRUFBRSxHQUFJO0VBQzNFLE9BQU8sRUFBRSxDQUFFO0VBQUUsV0FBVyxFQUFFLFNBQVU7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUN0RCxVQUFVLEVBQUMsSUFBSSxDQUFDLHVDQUFHLENBQXFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQy9vSW5GLFVBQVUsRURncElhLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFFLElBQUcsQ0FBQyxJQUFJO0VDL29JNUMsa0JBQWtCLEVEK29JSyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQzlvSTVDLGVBQWUsRUQ4b0lRLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFFLElBQUcsQ0FBQyxJQUFJO0VDN29JNUMsY0FBYyxFRDZvSVMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUM1b0k1QyxhQUFhLEVENG9JVSxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQ3ZwSTVDLGFBQWEsRUR3cElhLEdBQUc7RUN2cEk3QixxQkFBcUIsRUR1cElLLEdBQUc7RUN0cEk3QixrQkFBa0IsRURzcElRLEdBQUc7RUNycEk3QixpQkFBaUIsRURxcElTLEdBQUc7RUNwcEk3QixnQkFBZ0IsRURvcElVLEdBQUc7RUMvcEk3QixTQUFTLEVEZ3FJYyxlQUFTO0VDL3BJaEMsaUJBQWlCLEVEK3BJTSxlQUFTO0VDOXBJaEMsY0FBYyxFRDhwSVMsZUFBUztFQzdwSWhDLGFBQWEsRUQ2cElVLGVBQVM7RUM1cEloQyxZQUFZLEVENHBJVyxlQUFTO0NBQy9COztBQUdMLEFBQUEsV0FBVyxDQUFDO0VBQ1IsYUFBYSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLGNBQWMsRUFBRSxLQUFNO0NBdUNwRTs7QUF4Q0QsQUFFSSxXQUZPLENBRVAsZUFBZSxDQUFDO0VBQ1osT0FBTyxFQUFFLG1CQUFvQjtFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxhQUFhLEVBQUUsSUFBSztFQUFFLFFBQVEsRUFBRSxRQUFTO0VDaHFJdkcsYUFBYSxFRGlxSWEsR0FBRztFQ2hxSTdCLHFCQUFxQixFRGdxSUssR0FBRztFQy9wSTdCLGtCQUFrQixFRCtwSVEsR0FBRztFQzlwSTdCLGlCQUFpQixFRDhwSVMsR0FBRztFQzdwSTdCLGdCQUFnQixFRDZwSVUsR0FBRztDQUU1Qjs7QUFOTCxBQU9JLFdBUE8sQ0FPUCxhQUFhLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUztFQUFHLGNBQWMsRUFBRSxJQUFLO0VDcnFJL0MsYUFBYSxFRHNxSWEsR0FBRztFQ3JxSTdCLHFCQUFxQixFRHFxSUssR0FBRztFQ3BxSTdCLGtCQUFrQixFRG9xSVEsR0FBRztFQ25xSTdCLGlCQUFpQixFRG1xSVMsR0FBRztFQ2xxSTdCLGdCQUFnQixFRGtxSVUsR0FBRztDQUU1Qjs7QUFYTCxBQVlJLFdBWk8sQ0FZUCxhQUFhLENBQUM7RUFDVixVQUFVLEVBQUUsTUFBTztFQUFFLE1BQU0sRUFBQyxpQkFBa0I7RUFBRSxPQUFPLEVBQUUsSUFBSztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFDcEYsTUFBTSxFQUFFLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxLQUFNO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUMzcUl2RSxhQUFhLEVENHFJYSxHQUFHO0VDM3FJN0IscUJBQXFCLEVEMnFJSyxHQUFHO0VDMXFJN0Isa0JBQWtCLEVEMHFJUSxHQUFHO0VDenFJN0IsaUJBQWlCLEVEeXFJUyxHQUFHO0VDeHFJN0IsZ0JBQWdCLEVEd3FJVSxHQUFHO0VDanBJN0Isa0JBQWtCLEVEa3BJSyxVQUFVO0VDanBJakMsZUFBZSxFRGlwSVEsVUFBVTtFQ2hwSWpDLFVBQVUsRURncElhLFVBQVU7Q0FlaEM7O0FBL0JMLEFBaUJRLFdBakJHLENBWVAsYUFBYSxDQUtULElBQUksQ0FBQztFQUNELE1BQU0sRUFBQyxrQkFBbUI7RUFBRSxPQUFPLEVBQUUsTUFBTztFQy9xSXBELGFBQWEsRURncklpQixHQUFHO0VDL3FJakMscUJBQXFCLEVEK3FJUyxHQUFHO0VDOXFJakMsa0JBQWtCLEVEOHFJWSxHQUFHO0VDN3FJakMsaUJBQWlCLEVENnFJYSxHQUFHO0VDNXFJakMsZ0JBQWdCLEVENHFJYyxHQUFHO0NBQzVCOztBQXBCVCxBQXFCUSxXQXJCRyxDQVlQLGFBQWEsQ0FTVCxRQUFRLENBQUM7RUFDTCxPQUFPLEVBQUUsWUFBYTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFDakUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDL0UsV0FBVyxFQUFFLEdBQUk7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FNN0U7O0FBOUJULEFBcUJRLFdBckJHLENBWVAsYUFBYSxDQVNULFFBQVEsQUFJSCxPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsRUFBRztFQUFFLElBQUksRUFBRSxHQUFJO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDbEYsVUFBVSxFQUFFLHFDQUFHLENBQW1DLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQy9ySXJGLFNBQVMsRURnc0lzQixlQUFTO0VDL3JJeEMsaUJBQWlCLEVEK3JJYyxlQUFTO0VDOXJJeEMsY0FBYyxFRDhySWlCLGVBQVM7RUM3ckl4QyxhQUFhLEVENnJJa0IsZUFBUztFQzVySXhDLFlBQVksRUQ0ckltQixlQUFTO0NBQy9COztBQTdCYixBQWdDSSxXQWhDTyxDQWdDUCxhQUFhLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLElBQUksRUFBRSxHQUFJO0VBQzNFLE9BQU8sRUFBRSxDQUFFO0VBQUUsV0FBVyxFQUFFLFNBQVU7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUN0RCxVQUFVLEVBQUMsSUFBSSxDQUFDLHVDQUFHLENBQXFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtFQ3pySW5GLFVBQVUsRUQwcklhLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFFLElBQUcsQ0FBQyxJQUFJO0VDenJJNUMsa0JBQWtCLEVEeXJJSyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQ3hySTVDLGVBQWUsRUR3cklRLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFFLElBQUcsQ0FBQyxJQUFJO0VDdnJJNUMsY0FBYyxFRHVySVMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLElBQUk7RUN0ckk1QyxhQUFhLEVEc3JJVSxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsSUFBSTtFQ2pzSTVDLGFBQWEsRURrc0lhLEdBQUc7RUNqc0k3QixxQkFBcUIsRURpc0lLLEdBQUc7RUNoc0k3QixrQkFBa0IsRURnc0lRLEdBQUc7RUMvckk3QixpQkFBaUIsRUQrcklTLEdBQUc7RUM5ckk3QixnQkFBZ0IsRUQ4cklVLEdBQUc7RUN6c0k3QixTQUFTLEVEMHNJYyxlQUFTO0VDenNJaEMsaUJBQWlCLEVEeXNJTSxlQUFTO0VDeHNJaEMsY0FBYyxFRHdzSVMsZUFBUztFQ3ZzSWhDLGFBQWEsRUR1c0lVLGVBQVM7RUN0c0loQyxZQUFZLEVEc3NJVyxlQUFTO0NBQy9COztBQUlMLEFBQWdDLGlCQUFmLENBQUMsYUFBYSxDQUFDLGlCQUFpQjtBQUNqRCxBQUFrQixpQkFBRCxDQUFDLGlCQUFpQixDQUFDO0VDenNJaEMsYUFBYSxFRHlzSTBDLENBQUM7RUN4c0l4RCxxQkFBcUIsRUR3c0lrQyxDQUFDO0VDdnNJeEQsa0JBQWtCLEVEdXNJcUMsQ0FBQztFQ3RzSXhELGlCQUFpQixFRHNzSXNDLENBQUM7RUNyc0l4RCxnQkFBZ0IsRURxc0l1QyxDQUFDO0NBQUk7O0FBQ2hFLEFBQWUsWUFBSCxHQUFHLGVBQWUsQ0FBQztFQUFDLFlBQVksRUFBRSxJQUFLO0NBQUc7O0FBQ3RELEFBQWtCLGlCQUFELENBQUMsaUJBQWlCLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxPQUFRO0NBQUc7O0FBQ3pFLEFBQWdDLGlCQUFmLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBRSxVQUFVLEVBQUUsSUFBSztDQUFHOztBQUNwRixBQUF1QyxpQkFBdEIsQ0FBQyxhQUFhLEFBQUEsT0FBTyxDQUFDLGlCQUFpQjtBQUN4RCxBQUFvRCxpQkFBbkMsQ0FBQyxhQUFhLEFBQUEsb0JBQW9CLENBQUMsaUJBQWlCO0FBQ3JFLEFBQXNDLGlCQUFyQixDQUFDLGFBQWEsQUFBQSxNQUFNLENBQUMsaUJBQWlCLENBQUM7RUFDcEQsZ0JBQWdCLEVBQUUsSUFBSztFQUN2QixNQUFNLEVBQUUsa0JBQW1CO0VBQUUsVUFBVSxFQUFFLGtCQUFtQjtDQUMvRDs7QUFHRCxBQUFlLGNBQUQsQ0FBQyxxQkFBcUIsQ0FBQztFQUNqQyxjQUFjLEVBQUUsR0FBSTtDQUN2Qjs7QUFDRCxBQUFVLFVBQUEsQUFBQSxrQkFBa0IsQ0FBQztFQUN6QixPQUFPLEVBQUUsYUFBYztDQUMxQjs7QUFDRCxBQUFxQixjQUFQLENBQUMsTUFBTSxBQUFBLG9CQUFvQixFQUFFLEFBQXFCLGNBQVAsQ0FBQyxNQUFNLEFBQUEsbUJBQW1CLENBQUM7RUFDaEYsT0FBTyxFQUFFLEdBQUk7Q0FDaEI7O0FBQ0QsQUFBZSxjQUFELENBQUMsbUJBQW1CLEVBQUUsQUFBZSxjQUFELENBQUMsbUJBQW1CLENBQUM7RUFDbkUsR0FBRyxFQUFFLEdBQUk7Q0FDWjs7QUFFRCxBQUFBLFNBQVMsQ0FBQztFQUNOLGFBQWEsRUFBRSxJQUFLO0NBYXZCOztBQWRELEFBR0ksU0FISyxDQUdMLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEtBQU07RUFBRSxNQUFNLEVBQUUsVUFBVztDQUduRDs7QUFQTCxBQUdJLFNBSEssQ0FHTCxJQUFJLEFBRUMsV0FBVyxDQUFDO0VBQUMsWUFBWSxFQUFDLENBQUU7Q0FBRzs7QUFMeEMsQUFNUSxTQU5DLENBR0wsSUFBSSxDQUdBLEVBQUUsQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE1BQU87RUFBRSxNQUFNLEVBQUUsVUFBVztDQUFHOztBQU5yRSxBQVNRLFNBVEMsQUFRSixPQUFPLENBQ0osSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLEtBQU07Q0FFaEI7O0FBWlQsQUFTUSxTQVRDLEFBUUosT0FBTyxDQUNKLElBQUksQUFFQyxXQUFXLENBQUM7RUFBQyxLQUFLLEVBQUMsR0FBSTtDQUFHOztBQUl2QyxBQUFBLFNBQVMsQ0FBQztFQUNOLE1BQU0sRUFBRSxJQUFLO0VDdnRJYixrQkFBa0IsRUR3dElDLFVBQVU7RUN2dEk3QixlQUFlLEVEdXRJSSxVQUFVO0VDdHRJN0IsVUFBVSxFRHN0SVMsVUFBVTtDQTRDaEM7O0FBOUNELEFBQUEsU0FBUyxBQUlKLEtBQUssQ0FBQztFQUNILFVBQVUsRUFBRSxPQUFRO0VBQUUsYUFBYSxFQUFFLGtCQUFtQjtDQUMzRDs7QUFOTCxBQUFBLFNBQVMsQUFPSixNQUFNLENBQUM7RUFDSixVQUFVLEVBQUUsT0FBUTtFQUFFLGFBQWEsRUFBRSxrQkFBbUI7Q0FDM0Q7O0FBVEwsQUFBQSxTQUFTLEFBVUosSUFBSSxDQUFDO0VBQ0YsVUFBVSxFQUFFLE9BQVE7RUFBRSxhQUFhLEVBQUUsa0JBQW1CO0NBQzNEOztBQVpMLEFBYUksU0FiSyxDQWFMLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsS0FBTTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFlBQWE7RUFDakYsUUFBUSxFQUFFLFFBQVM7Q0FjdEI7O0FBN0JMLEFBYUksU0FiSyxDQWFMLElBQUksQUFHQyxJQUFJLENBQUM7RUFDRixVQUFVLEVBQUUsMENBQUcsQ0FBd0MsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0VBQzlFLGVBQWUsRUFBRSxTQUFVO0NBQzlCOztBQW5CVCxBQWFJLFNBYkssQ0FhTCxJQUFJLEFBT0MsT0FBTyxDQUFDO0VBQ0wsVUFBVSxFQUFDLElBQUksQ0FBQyxvQ0FBRyxDQUFrQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07RUFBRSxVQUFVLEVBQUUsR0FBSTtFQUM5RixlQUFlLEVBQUUsU0FBVTtFQ3Z3SW5DLGFBQWEsRUR3d0lpQixHQUFHO0VDdndJakMscUJBQXFCLEVEdXdJUyxHQUFHO0VDdHdJakMsa0JBQWtCLEVEc3dJWSxHQUFHO0VDcndJakMsaUJBQWlCLEVEcXdJYSxHQUFHO0VDcHdJakMsZ0JBQWdCLEVEb3dJYyxHQUFHO0NBQzVCOztBQXhCVCxBQXlCUSxTQXpCQyxDQWFMLElBQUksQ0FZQSxJQUFJLENBQUM7RUFDRCxPQUFPLEVBQUUsS0FBTTtFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQ3hGLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztDQUNuRzs7QUE1QlQsQUE4QkksU0E5QkssQ0E4QkwsSUFBSSxDQUFDO0VBQ0QsT0FBTyxFQUFFLGdCQUFpQjtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsS0FBTTtFQUNoRixLQUFLLEVBQUUsSUFBSztDQWFmOztBQTdDTCxBQWtDUSxTQWxDQyxDQThCTCxJQUFJLENBSUEsSUFBSSxDQUFDO0VBQ0QsT0FBTyxFQUFFLEtBQU07RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxTQUFVO0NBQ3hEOztBQXBDVCxBQXFDUSxTQXJDQyxDQThCTCxJQUFJLENBT0EsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLEtBQU07RUFBRSxTQUFTLEVBQUUsSUFBSztDQUNwQzs7QUF2Q1QsQUF3Q1EsU0F4Q0MsQ0E4QkwsSUFBSSxDQVVBLEdBQUcsQ0FBQztFQUNBLEtBQUssRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLEdBQUk7RUFBRSxPQUFPLEVBQUUsVUFBVztFQy92SXZELGtCQUFrQixFRGd3SVMsVUFBVTtFQy92SXJDLGVBQWUsRUQrdklZLFVBQVU7RUM5dklyQyxVQUFVLEVEOHZJaUIsVUFBVTtDQUVoQzs7QUE1Q1QsQUF3Q1EsU0F4Q0MsQ0E4QkwsSUFBSSxDQVVBLEdBQUcsQUFHRSxVQUFXLENBQUEsSUFBSSxFQUFFO0VBQUMsT0FBTyxFQUFDLFVBQVc7Q0FBRzs7QUFLckQsQUFFSSxXQUZPLENBRVAsSUFBSSxDQUFDO0VBQ0QsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxRQUFTO0NBRS9DOztBQUxMLEFBRUksV0FGTyxDQUVQLElBQUksQUFFQyxXQUFXLENBQUM7RUFBQyxZQUFZLEVBQUMsQ0FBRTtDQUFHOztBQUl4QyxBQUFBLG1CQUFtQixDQUFDO0VBQUMsT0FBTyxFQUFFLElBQUs7Q0FBRzs7QUFDdEMsQUFBQSxnQkFBZ0I7QUFDaEIsQUFBQSxpQkFBaUIsQ0FBQztFQUFDLE9BQU8sRUFBRSxJQUFLO0NBQUc7O0FBRXBDLEFBQUEsWUFBWSxDQUFDO0VBQ1QsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBSWxEOztBQUxELEFBRUksWUFGUSxDQUVSLEVBQUUsQ0FBQztFQUNDLFVBQVUsRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxTQUFVO0NBQzVFOztBQUVMLEFBQUEsV0FBVyxDQUFDO0VBQ1IsT0FBTyxFQUFDLFNBQVU7Q0FDckI7O0FBQ0QsQUFBQSxjQUFjLENBQUM7RUFDWCxNQUFNLEVBQUMsaUJBQWtCO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FJbEQ7O0FBTEQsQUFFSSxjQUZVLENBRVYsRUFBRSxDQUFDO0VBQ0MsVUFBVSxFQUFFLE9BQVE7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFNBQVU7Q0FDNUU7O0FBRUwsQUFBQSxhQUFhLENBQUM7RUFDVixPQUFPLEVBQUUsYUFBYztDQUMxQjs7QUFDRCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsTUFBTSxFQUFDLGlCQUFrQjtFQUFFLGFBQWEsRUFBRSxJQUFLO0NBSWxEOztBQUxELEFBRUksZ0JBRlksQ0FFWixFQUFFLENBQUM7RUFDQyxVQUFVLEVBQUUsT0FBUTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsU0FBVTtDQUM1RTs7QUFFTCxBQUFBLGVBQWUsQ0FBQztFQUNaLE9BQU8sRUFBRSxhQUFjO0NBQzFCOztBQUNELEFBQUEsVUFBVSxDQUFBO0VBQUUsTUFBTSxFQUFFLFlBQWE7Q0FBSTs7QUFDckMsQUFBQSxhQUFhLENBQUE7RUFDVCxRQUFRLEVBQUUsUUFBUztFQUFFLFVBQVUsRUFBRSxLQUFNO0NBNkIxQzs7QUE5QkQsQUFFSSxhQUZTLENBRVQsS0FBSyxDQUFBO0VBQ0QsT0FBTyxFQUFFLEtBQU07RUFBQyxVQUFVLEVBQUMsS0FBTTtFQUFDLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFDLElBQUs7RUFBQyxLQUFLLEVBQUMsT0FBUTtFQUFFLFdBQVcsRUFBRSxJQUFLO0NBSzFHOztBQVJMLEFBSVEsYUFKSyxDQUVULEtBQUssQ0FFRCxJQUFJLENBQUE7RUFBQyxPQUFPLEVBQUUsS0FBTTtDQUFHOztBQUovQixBQUVJLGFBRlMsQ0FFVCxLQUFLLEFBR0EsWUFBWSxDQUFBO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsS0FBTTtFQUFDLFdBQVcsRUFBQyxHQUFJO0NBRXZFOztBQVBULEFBTVksYUFOQyxDQUVULEtBQUssQUFHQSxZQUFZLENBQ1QsSUFBSSxDQUFBO0VBQUMsS0FBSyxFQUFDLE9BQVE7Q0FBRzs7QUFObEMsQUFTSSxhQVRTLENBU1QsVUFBVSxDQUFBO0VBQ04sUUFBUSxFQUFFLFFBQVM7RUFBQyxZQUFZLEVBQUMsSUFBSztDQU16Qzs7QUFoQkwsQUFXd0IsYUFYWCxDQVNULFVBQVUsQ0FFTixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsS0FBQyxBQUFBLEVBQVc7RUFDYixVQUFVLEVBQXNDLHFDQUFDO0VBQUMsS0FBSyxFQUFDLElBQUs7RUFBQyxNQUFNLEVBQUMsSUFBSztFQUFDLEtBQUssRUFBQyxJQUFLO0VBQUMsTUFBTSxFQUFDLElBQUs7RUFBQyxRQUFRLEVBQUMsUUFBUztFQUN0SCxHQUFHLEVBQUMsSUFBSztFQUFDLElBQUksRUFBQyxDQUFFO0NBRXBCOztBQWZULEFBV3dCLGFBWFgsQ0FTVCxVQUFVLENBRU4sS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFELEtBQUMsQUFBQSxDQUdELFFBQVEsQ0FBQTtFQUFDLG1CQUFtQixFQUFFLGFBQWM7Q0FBRzs7QUFkNUQsQUFpQkksYUFqQlMsQ0FpQlQsTUFBTSxDQUFBO0VBQ0YsT0FBTyxFQUFFLFlBQWE7Q0FHekI7O0FBckJMLEFBbUJpQixhQW5CSixDQWlCVCxNQUFNLEFBRUQsT0FBTyxDQUFDLFFBQVEsQ0FBQTtFQUFDLFVBQVUsRUFBQyxPQUFRO0NBQUc7O0FBbkJoRCxBQW9Cb0IsYUFwQlAsQ0FpQlQsTUFBTSxDQUdGLFdBQVcsQ0FBQyxRQUFRLENBQUE7RUFBQyxNQUFNLEVBQUUsT0FBUTtDQUFHOztBQXBCaEQsQUFzQkksYUF0QlMsQ0FzQlQsVUFBVSxDQUFDO0VBQ1AsT0FBTyxFQUFFLEtBQU07RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFlBQVksRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUFFLG1CQUFtQixFQUFFLElBQUs7RUFBRSxnQkFBZ0IsRUFBRSxJQUFLO0VBQUUsZUFBZSxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUVyTTs7QUF6QkwsQUF3QlEsYUF4QkssQ0FzQlQsVUFBVSxDQUVOLEtBQUssQ0FBQztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLENBQUU7Q0FBSTs7QUF4QjdGLEFBMEJJLGFBMUJTLENBMEJULFVBQVUsQ0FBQztFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxnQkFBZ0IsRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsaUJBQWtCO0NBQUk7O0FBMUJuSyxBQTJCK0IsYUEzQmxCLENBMkJULFVBQVUsQ0FBQyxLQUFLLEFBQUEsUUFBUSxHQUFHLFVBQVUsQ0FBQztFQUFFLE9BQU8sRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLFVBQVc7RUFBRSxZQUFZLEVBQUUsT0FBUTtDQUFJOztBQTNCL0csQUE0QmMsYUE1QkQsQ0E0QlQsVUFBVSxBQUFBLE1BQU0sQ0FBQztFQUFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxPQUFPLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxnQkFBZ0IsRUFBRSxPQUFRO0VBQUUsR0FBRyxFQUFDLEdBQUk7RUFBRSxJQUFJLEVBQUUsR0FBSTtFQUFFLFNBQVMsRUFBRSxxQkFBUztFQUFjLGFBQWEsRUFBRSxJQUFNO0NBQUU7O0FBNUJsTixBQTZCeUMsYUE3QjVCLENBNkJULFVBQVUsQ0FBQyxLQUFLLEFBQUEsUUFBUSxHQUFHLFVBQVUsQUFBQSxNQUFNLENBQUM7RUFBRSxPQUFPLEVBQUUsS0FBTTtDQUFJOztBQUVyRSxBQUVRLFdBRkcsQ0FDUCxFQUFFLENBQ0UsRUFBRSxDQUFBO0VBQ0UsU0FBUyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQUUsWUFBWSxFQUFFLE1BQU87RUFBRSxXQUFXLEVBQUUsSUFBSztFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsVUFBVSxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxHQUFJO0VBQUUsT0FBTyxFQUFFLFlBQWE7RUFBRSxXQUFXLEVBQUUsQ0FBRTtFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxVQUFVLEVBQUUsVUFBVztFQUM3UixRQUFRLEVBQUMsTUFBTztFQUFFLFdBQVcsRUFBRSxNQUFPO0VBQUUsYUFBYSxFQUFFLFFBQVM7RUFBRSxTQUFTLEVBQUUsR0FBSTtDQU1wRjs7QUFWVCxBQUVRLFdBRkcsQ0FDUCxFQUFFLENBQ0UsRUFBRSxBQUdHLE1BQU0sQ0FBQTtFQUFFLFFBQVEsRUFBQyxRQUFTO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxVQUFVLEVBQTJDLDBDQUFDO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLEdBQUk7Q0FBSTs7QUFMcEssQUFFUSxXQUZHLENBQ1AsRUFBRSxDQUNFLEVBQUUsQUFJRyxXQUFXLEFBQ1AsTUFBTSxDQUFBO0VBQUUsT0FBTyxFQUFDLElBQUs7Q0FBSTs7QUFQMUMsQUFTWSxXQVRELENBQ1AsRUFBRSxDQUNFLEVBQUUsQ0FPRSxDQUFDLENBQUE7RUFBRSxLQUFLLEVBQUUsT0FBUTtDQUFJOztBQUlsQyxBQUFBLFFBQVEsQ0FBQztFQUNMLFFBQVEsRUFBRSxLQUFNO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0NBSzlEOztBQU5ELEFBRUksUUFGSSxDQUVKLENBQUMsQ0FBQztFQUNFLE9BQU8sRUFBRSxZQUFhO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQ3gzSXZELGFBQWEsRUR3M0lrRSxHQUFHO0VDdjNJbEYscUJBQXFCLEVEdTNJMEQsR0FBRztFQ3QzSWxGLGtCQUFrQixFRHMzSTZELEdBQUc7RUNyM0lsRixpQkFBaUIsRURxM0k4RCxHQUFHO0VDcDNJbEYsZ0JBQWdCLEVEbzNJK0QsR0FBRztFQUFHLFNBQVMsRUFBRSxDQUFFO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FFckg7O0FBTEwsQUFFSSxRQUZJLENBRUosQ0FBQyxBQUVJLEdBQUcsQ0FBQztFQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsb0NBQUcsQ0FBaUMsU0FBUyxDQUFDLE1BQU07Q0FBRzs7QUFHekY7Z0dBQ2dHO0FBQ2hHLEFBQUEsTUFBTSxDQUFDO0VBQ0gsVUFBVSxFQUFFLGlCQUFrQjtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsT0FBTyxFQUFFLENBQUU7RUFBRSxVQUFVLEVBQUUsSUFBSztDQThGdEY7O0FBL0ZELEFBRUksTUFGRSxDQUVGLFNBQVMsQ0FBQztFQUNOLFVBQVUsRUFBRSxpQkFBa0I7RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQUUsT0FBTyxFQUFFLGFBQWM7RUFDN0YsVUFBVSxFQUFFLDBDQUFHLENBQXdDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztFQ3YySXZFLGtCQUFrQixFRHcySUssVUFBVTtFQ3YySWpDLGVBQWUsRUR1MklRLFVBQVU7RUN0MklqQyxVQUFVLEVEczJJYSxVQUFVO0NBbUVoQzs7QUF4RUwsQUFRWSxNQVJOLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLENBQUM7RUFDRCxLQUFLLEVBQUUsSUFBSztDQTZEZjs7QUF0RWIsQUFVZ0IsTUFWVixDQUVGLFNBQVMsQ0FJTCxJQUFJLENBRUEsSUFBSSxDQUVBLEVBQUUsQ0FBQztFQUNDLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbkcsY0FBYyxFQUFFLEtBQU07RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBQ3hEOztBQWJqQixBQWNnQixNQWRWLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLENBTUEsRUFBRSxDQUFDO0VBQ0MsTUFBTSxFQUFFLFVBQVc7Q0FXdEI7O0FBMUJqQixBQWlCd0IsTUFqQmxCLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLENBTUEsRUFBRSxDQUVFLEVBQUUsQ0FDRSxDQUFDLENBQUM7RUFDRSxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUMvRSxXQUFXLEVBQUUsSUFBSztFQUFDLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztFQUN6RSxPQUFPLEVBQUUsS0FBTTtFQUFFLE9BQU8sRUFBRSxLQUFNO0NBSW5DOztBQXhCekIsQUFpQndCLE1BakJsQixDQUVGLFNBQVMsQ0FJTCxJQUFJLENBRUEsSUFBSSxDQU1BLEVBQUUsQ0FFRSxFQUFFLENBQ0UsQ0FBQyxBQUlJLE1BQU0sQ0FBQztFQUNKLEtBQUssRUFBQyxPQUFRO0NBQ2pCOztBQXZCN0IsQUFRWSxNQVJOLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBbUJDLE1BQU0sQ0FBQztFQUNKLEtBQUssRUFBRSxLQUFNO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FDdEM7O0FBN0JqQixBQVFZLE1BUk4sQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQUFDO0VBQ0osS0FBSyxFQUFFLEtBQU07RUFBRSxLQUFLLEVBQUUsS0FBTTtDQXNDL0I7O0FBckVqQixBQWdDb0IsTUFoQ2QsQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQUVILFdBQVcsQ0FBQztFQUNSLFVBQVUsRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FvQjFDOztBQXJEckIsQUFrQ3dCLE1BbENsQixDQUVGLFNBQVMsQ0FJTCxJQUFJLENBRUEsSUFBSSxBQXNCQyxNQUFNLENBRUgsV0FBVyxDQUVQLE1BQU0sQ0FBQztFQUNILE1BQU0sRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLE9BQVE7RUFBRSxRQUFRLEVBQUUsUUFBUztFQ2o2SWhGLGFBQWEsRURrNklpQyxHQUFHO0VDajZJakQscUJBQXFCLEVEaTZJeUIsR0FBRztFQ2g2SWpELGtCQUFrQixFRGc2STRCLEdBQUc7RUMvNUlqRCxpQkFBaUIsRUQrNUk2QixHQUFHO0VDOTVJakQsZ0JBQWdCLEVEODVJOEIsR0FBRztDQWdCNUI7O0FBcER6QixBQ3oySUksTUR5MklFLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0FFSCxXQUFXLENBRVAsTUFBTSxDQzM0STFCLDJCQUEyQixDQUFDO0VEODRJaUIsS0FBSyxFQUFFLE9BQVE7Q0M5NElyQjs7QUR5MkkzQyxBQ3gySUksTUR3MklFLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0FFSCxXQUFXLENBRVAsTUFBTSxDQzE0STFCLGlCQUFpQixDQUFXO0VENjRJaUIsS0FBSyxFQUFFLE9BQVE7Q0M3NElyQjs7QUR3MkkzQyxBQ3YySUksTUR1MklFLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0FFSCxXQUFXLENBRVAsTUFBTSxDQ3o0STFCLGtCQUFrQixDQUFVO0VENDRJaUIsS0FBSyxFQUFFLE9BQVE7Q0M1NElyQjs7QUR1MkkzQyxBQ3QySUksTURzMklFLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0FFSCxXQUFXLENBRVAsTUFBTSxDQ3g0STFCLHNCQUFzQixDQUFNO0VEMjRJaUIsS0FBSyxFQUFFLE9BQVE7Q0MzNElyQjs7QURzMkkzQyxBQXNDNkMsTUF0Q3ZDLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0FFSCxXQUFXLENBRVAsTUFBTSxDQUlGLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVgsRUFBYTtFQUNmLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxVQUFVLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsT0FBTyxFQUFFLGFBQWM7RUFDbkYsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUMsS0FBSyxFQUFFLE9BQVE7RUFDNUUsVUFBVSxFQUFFLE1BQU87RUM1NEkvQyxrQkFBa0IsRUQ2NEk2QixVQUFVO0VDNTRJekQsZUFBZSxFRDQ0SWdDLFVBQVU7RUMzNEl6RCxVQUFVLEVEMjRJcUMsVUFBVTtDQUNoQzs7QUEzQzdCLEFBNEMrQyxNQTVDekMsQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQUVILFdBQVcsQ0FFUCxNQUFNLENBVUYsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixFQUFlO0VBQ2pCLFFBQVEsRUFBRSxRQUFTO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsSUFBSztFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsS0FBSyxFQUFFLENBQUU7RUFDcEUsVUFBVSxFQUFFLElBQUs7RUFBRSxPQUFPLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLE9BQVE7RUFDbEUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFDN0UsV0FBVyxFQUFFLElBQUs7RUFBQyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQzVELEtBQUssRUFBRSxPQUFRO0VDcDVJM0Msa0JBQWtCLEVEcTVJNkIsVUFBVTtFQ3A1SXpELGVBQWUsRURvNUlnQyxVQUFVO0VDbjVJekQsVUFBVSxFRG01SXFDLFVBQVU7Q0FDaEM7O0FBbkQ3QixBQXNEb0IsTUF0RGQsQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQXdCSCxLQUFLLENBQUM7RUFDRixTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQUMsVUFBVSxFQUFFLElBQUs7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUNyRTs7QUF4RHJCLEFBeURvQixNQXpEZCxDQUVGLFNBQVMsQ0FJTCxJQUFJLENBRUEsSUFBSSxBQXNCQyxNQUFNLENBMkJILGdCQUFnQixDQUFDO0VBQ2IsVUFBVSxFQUFFLElBQUs7Q0FVcEI7O0FBcEVyQixBQTREd0IsTUE1RGxCLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0EyQkgsZ0JBQWdCLENBR1osQ0FBQyxDQUFDO0VBQ0UsS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLFNBQVU7RUFBRSxNQUFNLEVBQUUsVUFBVztDQU0xRjs7QUFuRXpCLEFBNER3QixNQTVEbEIsQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQTJCSCxnQkFBZ0IsQ0FHWixDQUFDLEFBRUksTUFBTSxDQUFDO0VBQUMsVUFBVSxFQUFFLG9DQUFHLENBQWtDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUFHOztBQTlEaEgsQUE0RHdCLE1BNURsQixDQUVGLFNBQVMsQ0FJTCxJQUFJLENBRUEsSUFBSSxBQXNCQyxNQUFNLENBMkJILGdCQUFnQixDQUdaLENBQUMsQUFHSSxNQUFNLENBQUM7RUFBQyxVQUFVLEVBQUUsb0NBQUcsQ0FBa0MsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNO0NBQUc7O0FBL0RoSCxBQTREd0IsTUE1RGxCLENBRUYsU0FBUyxDQUlMLElBQUksQ0FFQSxJQUFJLEFBc0JDLE1BQU0sQ0EyQkgsZ0JBQWdCLENBR1osQ0FBQyxBQUlJLE1BQU0sQ0FBQztFQUFDLFVBQVUsRUFBRSxvQ0FBRyxDQUFrQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07Q0FBRzs7QUFoRWhILEFBNER3QixNQTVEbEIsQ0FFRixTQUFTLENBSUwsSUFBSSxDQUVBLElBQUksQUFzQkMsTUFBTSxDQTJCSCxnQkFBZ0IsQ0FHWixDQUFDLEFBS0ksTUFBTSxDQUFDO0VBQUMsVUFBVSxFQUFFLG9DQUFHLENBQWtDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTtDQUFHOztBQWpFaEgsQUE0RHdCLE1BNURsQixDQUVGLFNBQVMsQ0FJTCxJQUFJLENBRUEsSUFBSSxBQXNCQyxNQUFNLENBMkJILGdCQUFnQixDQUdaLENBQUMsQUFNSSxXQUFXLENBQUM7RUFBQyxZQUFZLEVBQUUsQ0FBRTtDQUFHOztBQWxFN0QsQUF5RUksTUF6RUUsQ0F5RUYsWUFBWSxDQUFDO0VBQ1QsT0FBTyxFQUFFLGFBQWM7Q0FvQjFCOztBQTlGTCxBQTJFUSxNQTNFRixDQXlFRixZQUFZLENBRVIsVUFBVSxDQUFDO0VBQ1AsVUFBVSxFQUFFLE1BQU87RUFBRSxhQUFhLEVBQUMsR0FBSTtDQVUxQzs7QUF0RlQsQUE4RWdCLE1BOUVWLENBeUVGLFlBQVksQ0FFUixVQUFVLENBRU4sRUFBRSxDQUNFLEVBQUUsQ0FBQztFQUNDLE9BQU8sRUFBRSxZQUFhO0VBQUUsTUFBTSxFQUFFLFVBQVc7Q0FLOUM7O0FBcEZqQixBQWdGb0IsTUFoRmQsQ0F5RUYsWUFBWSxDQUVSLFVBQVUsQ0FFTixFQUFFLENBQ0UsRUFBRSxDQUVFLENBQUMsQ0FBQztFQUNFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxPQUFRO0NBRXZFOztBQW5GckIsQUFnRm9CLE1BaEZkLENBeUVGLFlBQVksQ0FFUixVQUFVLENBRU4sRUFBRSxDQUNFLEVBQUUsQ0FFRSxDQUFDLEFBRUksTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFDLElBQUs7Q0FBRzs7QUFsRi9DLEFBdUZRLE1BdkZGLENBeUVGLFlBQVksQ0FjUixVQUFVLENBQUM7RUFDUCxVQUFVLEVBQUUsTUFBTztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUt6RTs7QUE3RlQsQUF5RlksTUF6Rk4sQ0F5RUYsWUFBWSxDQWNSLFVBQVUsQ0FFTixDQUFDLENBQUM7RUFDRSxLQUFLLEVBQUUsSUFBSztDQUVmOztBQTVGYixBQXlGWSxNQXpGTixDQXlFRixZQUFZLENBY1IsVUFBVSxDQUVOLENBQUMsQUFFSSxNQUFNLENBQUM7RUFBQyxLQUFLLEVBQUMsSUFBSztDQUFHOztBQU12QyxBQUNJLGFBRFMsQ0FDVCxXQUFXLENBQUM7RUFDUixhQUFhLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxTQUFVO0VBQ3pDLFVBQVUsRUFBRSxPQUFRO0VDbCtJeEIsYUFBYSxFRG0rSWEsR0FBRztFQ2wrSTdCLHFCQUFxQixFRGsrSUssR0FBRztFQ2orSTdCLGtCQUFrQixFRGkrSVEsR0FBRztFQ2grSTdCLGlCQUFpQixFRGcrSVMsR0FBRztFQy85STdCLGdCQUFnQixFRCs5SVUsR0FBRztDQTBCNUI7O0FBOUJMLEFBTVEsYUFOSyxDQUNULFdBQVcsQ0FLUCxNQUFNLENBQUM7RUFDSCxLQUFLLEVBQUUsSUFBSztFQUFFLFVBQVUsRUFBRSxJQUFLO0VBQUUsWUFBWSxFQUFFLElBQUs7RUN0K0k1RCxhQUFhLEVEdStJaUIsR0FBRztFQ3QrSWpDLHFCQUFxQixFRHMrSVMsR0FBRztFQ3IrSWpDLGtCQUFrQixFRHErSVksR0FBRztFQ3ArSWpDLGlCQUFpQixFRG8rSWEsR0FBRztFQ24rSWpDLGdCQUFnQixFRG0rSWMsR0FBRztDQUM1Qjs7QUFUVCxBQVVRLGFBVkssQ0FDVCxXQUFXLENBU1AsVUFBVSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUs7RUFBRSxZQUFZLEVBQUUsSUFBSztFQUFFLE9BQU8sRUFBRSxTQUFVO0NBVXpEOztBQXJCVCxBQVlZLGFBWkMsQ0FDVCxXQUFXLENBU1AsVUFBVSxDQUVOLElBQUksQ0FBQztFQUNELE9BQU8sRUFBRSxLQUFNO0NBT2xCOztBQXBCYixBQVlZLGFBWkMsQ0FDVCxXQUFXLENBU1AsVUFBVSxDQUVOLElBQUksQUFFQyxNQUFNLENBQUM7RUFDSixLQUFLLEVBQUUsSUFBSztFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFNBQVU7Q0FDdEQ7O0FBaEJqQixBQVlZLGFBWkMsQ0FDVCxXQUFXLENBU1AsVUFBVSxDQUVOLElBQUksQUFLQyxTQUFTLENBQUM7RUFDUCxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FDckQ7O0FBbkJqQixBQXNCUSxhQXRCSyxDQUNULFdBQVcsQ0FxQlAsU0FBUyxDQUFDO0VBQ04sS0FBSyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLFlBQWE7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUM1RixPQUFPLEVBQUUsVUFBVztFQUFFLFdBQVcsRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLFVBQVc7Q0FLaEU7O0FBN0JULEFBc0JRLGFBdEJLLENBQ1QsV0FBVyxDQXFCUCxTQUFTLEFBR0osT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQ2hGLFVBQVUsRUFBRSxxQ0FBRyxDQUFtQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDbEU7O0FBNUJiLEFBZ0NRLGFBaENLLENBK0JULElBQUksQ0FDQSxXQUFXLENBQUM7RUFDUixPQUFPLEVBQUUsYUFBYztFQUFFLE1BQU0sRUFBRSxVQUFXO0VBQUUsYUFBYSxFQUFFLGtCQUFtQjtFQUNoRixRQUFRLEVBQUUsUUFBUztDQWV0Qjs7QUFqRFQsQUFnQ1EsYUFoQ0ssQ0ErQlQsSUFBSSxDQUNBLFdBQVcsQUFHTixPQUFPLENBQUM7RUFDTCxRQUFRLEVBQUMsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUMsaUJBQWtCO0VBQzFFLE9BQU8sRUFBRSxFQUFHO0VBQUUsSUFBSSxFQUFFLENBQUU7RUFBRSxHQUFHLEVBQUUsSUFBSztFQ3BnSjlDLGFBQWEsRURxZ0pxQixHQUFHO0VDcGdKckMscUJBQXFCLEVEb2dKYSxHQUFHO0VDbmdKckMsa0JBQWtCLEVEbWdKZ0IsR0FBRztFQ2xnSnJDLGlCQUFpQixFRGtnSmlCLEdBQUc7RUNqZ0pyQyxnQkFBZ0IsRURpZ0prQixHQUFHO0VDMStJckMsa0JBQWtCLEVEMitJYSxVQUFVO0VDMStJekMsZUFBZSxFRDArSWdCLFVBQVU7RUN6K0l6QyxVQUFVLEVEeStJcUIsVUFBVTtDQUNoQzs7QUF4Q2IsQUF5Q1ksYUF6Q0MsQ0ErQlQsSUFBSSxDQUNBLFdBQVcsQ0FTUCxLQUFLLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLEdBQUk7Q0FBRzs7QUF6Q3pFLEFBMENZLGFBMUNDLENBK0JULElBQUksQ0FDQSxXQUFXLENBVVAsSUFBSSxDQUFDO0VBQ0QsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztDQUNqQzs7QUE1Q2IsQUFnQ1EsYUFoQ0ssQ0ErQlQsSUFBSSxDQUNBLFdBQVcsQUFhTixRQUFRLEFBQ0osT0FBTyxDQUFDO0VBQUMsWUFBWSxFQUFDLE9BQVE7Q0FBRzs7QUE5Q2xELEFBZ0NRLGFBaENLLENBK0JULElBQUksQ0FDQSxXQUFXLEFBZ0JOLFdBQVcsQ0FBQztFQUFDLGFBQWEsRUFBRSxDQUFFO0VBQUUsYUFBYSxFQUFFLENBQUU7Q0FBRzs7QUFJakUsQUFDSSxZQURRLENBQ1IsUUFBUSxDQUFDO0VBQUMsYUFBYSxFQUFFLENBQUU7RUFBRSxhQUFhLEVBQUUsQ0FBRTtDQUFHOztBQURyRCxBQUVJLFlBRlEsQ0FFUixLQUFLLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxhQUFjO0VBQUUsYUFBYSxFQUFFLGtCQUFtQjtFQUNoRixhQUFhLEVBQUUsSUFBSztDQWlCdkI7O0FBckJMLEFBTVEsWUFOSSxDQUVSLEtBQUssQ0FJRCxJQUFJLEFBQ0MsWUFBWSxDQUFDO0VBQ1YsS0FBSyxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLElBQUksRUFBRSxDQUFFO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsSUFBSztFQ2hnSmhGLGtCQUFrQixFRGlnSmEsVUFBVTtFQ2hnSnpDLGVBQWUsRURnZ0pnQixVQUFVO0VDLy9JekMsVUFBVSxFRCsvSXFCLFVBQVU7Q0FDaEM7O0FBVmIsQUFNUSxZQU5JLENBRVIsS0FBSyxDQUlELElBQUksQUFLQyxjQUFjLENBQUM7RUFDWixLQUFLLEVBQUUsSUFBSztDQUdmOztBQWZiLEFBYWdCLFlBYkosQ0FFUixLQUFLLENBSUQsSUFBSSxBQUtDLGNBQWMsQ0FFWCxDQUFDLENBQUM7RUFBQyxNQUFNLEVBQUUsT0FBUTtDQUFHOztBQWJ0QyxBQWNnQixZQWRKLENBRVIsS0FBSyxDQUlELElBQUksQUFLQyxjQUFjLENBR1gsUUFBUSxDQUFDO0VBQUMsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxHQUFJO0NBQUc7O0FBZGhGLEFBaUJRLFlBakJJLENBRVIsS0FBSyxDQWVELFNBQVMsQ0FBQztFQUFDLGFBQWEsRUFBRSxJQUFLO0NBQUc7O0FBakIxQyxBQUVJLFlBRlEsQ0FFUixLQUFLLEFBZ0JBLFdBQVcsQ0FBQztFQUNULGFBQWEsRUFBRSxDQUFFO0VBQUUsY0FBYyxFQUFFLENBQUU7RUFBRSxhQUFhLEVBQUUsQ0FBRTtDQUMzRDs7QUFwQlQsQUFzQkksWUF0QlEsQ0FzQlIsWUFBWSxDQUFDO0VBQ1QsWUFBWSxFQUFFLElBQUs7Q0FDdEI7O0FBSUwsQUFBQSxXQUFXLENBQUM7RUFDUixPQUFPLEVBQUUsSUFBSztFQUNkLFVBQVUsRUFBRSxrQkFBSTtFQUNoQixRQUFRLEVBQUUsS0FBTTtFQUNoQixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLO0VBQ2IsT0FBTyxFQUFFLE1BQU87RUFDaEIsR0FBRyxFQUFFLENBQUU7RUFDUCxJQUFJLEVBQUUsQ0FBRTtFQUNSLFVBQVUsRUFBRSxJQUFLO0NBZXBCOztBQXhCRCxBQVVJLFdBVk8sQ0FVUCxVQUFVLENBQUM7RUFDUCxPQUFPLEVBQUUsS0FBTTtFQUNmLE1BQU0sRUFBRSxJQUFLO0VBQ2IsS0FBSyxFQUFFLElBQUs7RUFDWixRQUFRLEVBQUUsUUFBUztDQUt0Qjs7QUFuQkwsQUFlUSxXQWZHLENBVVAsVUFBVSxDQUtOLFdBQVcsQ0FBQztFQUNSLE9BQU8sRUFBRSxVQUFXO0VBQ3BCLGNBQWMsRUFBRSxNQUFPO0NBQzFCOztBQWxCVCxBQW9CSSxXQXBCTyxDQW9CUCxjQUFjLENBQUM7RUFDWCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFDaEQsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQUUsTUFBTSxFQUFFLENBQUU7Q0FDOUM7O0FBRUwsQUFBQSxPQUFPLENBQUM7RUFDSixTQUFTLEVBQUUsS0FBTTtFQUNqQixTQUFTLEVBQUUsS0FBTTtFQUNqQixVQUFVLEVBQUUsS0FBTTtFQUNsQixNQUFNLEVBQUUsZ0JBQWlCO0VBQ3pCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLE9BQU8sRUFBRSxFQUFHO0VBQ1osVUFBVSxFQUFFLElBQUs7RUFDakIsT0FBTyxFQUFFLFNBQVU7RUNobEpuQixhQUFhLEVEaWxKUyxJQUFJO0VDaGxKMUIscUJBQXFCLEVEZ2xKQyxJQUFJO0VDL2tKMUIsa0JBQWtCLEVEK2tKSSxJQUFJO0VDOWtKMUIsaUJBQWlCLEVEOGtKSyxJQUFJO0VDN2tKMUIsZ0JBQWdCLEVENmtKTSxJQUFJO0VDdGpKMUIsa0JBQWtCLEVEdWpKQyxVQUFVO0VDdGpKN0IsZUFBZSxFRHNqSkksVUFBVTtFQ3JqSjdCLFVBQVUsRURxakpTLFVBQVU7Q0E4Q2hDOztBQXhERCxBQVdJLE9BWEcsQ0FXSCxVQUFVLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUztFQUNuQixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLO0VBQ2IsS0FBSyxFQUFFLElBQUs7RUFDWixHQUFHLEVBQUUsSUFBSztFQUNWLE1BQU0sRUFBRSxPQUFRO0VBQ2hCLE9BQU8sRUFBRSxDQUFFO0NBU2Q7O0FBM0JMLEFBbUJRLE9BbkJELENBV0gsVUFBVSxDQVFOLElBQUksQ0FBQztFQUNELE9BQU8sRUFBRSxLQUFNO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsR0FBSTtFQUFFLFVBQVUsRUFBRSxPQUFRO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFDdEYsR0FBRyxFQUFFLEdBQUk7RUFBRSxJQUFJLEVBQUUsR0FBSTtFQUFFLE1BQU0sRUFBRSxjQUFlO0VDcG1KdEQsU0FBUyxFRHFtSmtCLGFBQU07RUNwbUpqQyxpQkFBaUIsRURvbUpVLGFBQU07RUNubUpqQyxjQUFjLEVEbW1KYSxhQUFNO0VDbG1KakMsYUFBYSxFRGttSmMsYUFBTTtFQ2ptSmpDLFlBQVksRURpbUplLGFBQU07Q0FJNUI7O0FBMUJULEFBbUJRLE9BbkJELENBV0gsVUFBVSxDQVFOLElBQUksQUFJQyxXQUFXLENBQUM7RUN0bUpyQixTQUFTLEVEdW1Kc0IsY0FBTTtFQ3RtSnJDLGlCQUFpQixFRHNtSmMsY0FBTTtFQ3JtSnJDLGNBQWMsRURxbUppQixjQUFNO0VDcG1KckMsYUFBYSxFRG9tSmtCLGNBQU07RUNubUpyQyxZQUFZLEVEbW1KbUIsY0FBTTtDQUM1Qjs7QUF6QmIsQUE0QkksT0E1QkcsQ0E0QkgsWUFBWSxDQUFDO0VBQ1QsVUFBVSxFQUFFLElBQUs7RUFBQyxRQUFRLEVBQUUsUUFBUztFQUFFLFNBQVMsRUFBRSxJQUFLO0NBYTFEOztBQTFDTCxBQThCUSxPQTlCRCxDQTRCSCxZQUFZLENBRVIsU0FBUyxDQUFDO0VBQ04sUUFBUSxFQUFFLFFBQVM7RUFDbkIsS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVBQUUsQ0FBRTtFQUNWLGNBQWMsRUFBRSxNQUFPO0NBRTFCOztBQXBDVCxBQW1DWSxPQW5DTCxDQTRCSCxZQUFZLENBRVIsU0FBUyxDQUtMLE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxlQUFnQjtFQUFFLE1BQU0sRUFBRSxlQUFnQjtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFBRSxJQUFJLEVBQUUsQ0FBRTtDQUFHOztBQW5DaEgsQUFxQ1EsT0FyQ0QsQ0E0QkgsWUFBWSxDQVNSLEdBQUcsQ0FBQztFQUFDLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FBRzs7QUFyQzNDLEFBc0NRLE9BdENELENBNEJILFlBQVksQ0FVUixJQUFJLENBQUM7RUFDRCxVQUFVLEVBQUUsTUFBTztDQUV0Qjs7QUF6Q1QsQUF3Q1ksT0F4Q0wsQ0E0QkgsWUFBWSxDQVVSLElBQUksQ0FFQSxHQUFHLENBQUM7RUFBQyxVQUFVLEVBQUUsT0FBUTtFQUFFLE1BQU0sRUFBRSxJQUFLO0NBQUc7O0FBeEN2RCxBQUFBLE9BQU8sQUEyQ0YsTUFBTSxDQUFDO0VBQ0osU0FBUyxFQUFFLEtBQU07RUFBRSxTQUFTLEVBQUUsS0FBTTtDQUN2Qzs7QUE3Q0wsQUE4Q0ksT0E5Q0csQ0E4Q0gsUUFBUSxDQUFBO0VBQ0osT0FBTyxFQUFFLE1BQU87RUFBRSxVQUFVLEVBQUUsVUFBVztDQVE1Qzs7QUF2REwsQUFnRFEsT0FoREQsQ0E4Q0gsUUFBUSxDQUVKLElBQUksQUFDQyxJQUFJLEVBakRqQixBQWdEUSxPQWhERCxDQThDSCxRQUFRLENBRUosSUFBSSxBQUNRLEtBQUssQ0FBQTtFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLENBQUU7RUFBRSxPQUFPLEVBQUUsTUFBTztFQUFFLFVBQVUsRUFBRSxVQUFXO0NBQUk7O0FBakRqRyxBQW1EUSxPQW5ERCxDQThDSCxRQUFRLENBS0osQ0FBQyxDQUFBO0VBQ0csS0FBSyxFQUFFLE9BQVE7Q0FDbEI7O0FBckRULEFBc0RRLE9BdERELENBOENILFFBQVEsQ0FRSixTQUFTLENBQUE7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLFNBQVMsRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FBSTs7QUFHNUUsQUFDSSxVQURNLENBQ04sT0FBTyxDQUFBO0VBQ0gsT0FBTyxFQUFFLE1BQU87RUFBRSxLQUFLLEVBQUUsS0FBTTtFQUFHLFNBQVMsRUFBRSxLQUFNO0NBRXREOztBQUpMLEFBR1EsVUFIRSxDQUNOLE9BQU8sQ0FFSCxRQUFRLENBQUE7RUFBRSxPQUFPLEVBQUUsTUFBTztDQUFJOztBQUh0QyxBQU1RLFVBTkUsQ0FLTixjQUFjLENBQ1YsV0FBVyxDQUFBO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FBSTs7QUFOdEMsQUFVb0IsVUFWVixDQUtOLGNBQWMsQUFFVCxRQUFRLENBQ0wsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLEFBQ0csWUFBWSxDQUFBO0VBQUUsWUFBWSxFQUFDLElBQUs7RUFBRSxhQUFhLEVBQUUsQ0FBRTtDQUFJOztBQVhoRixBQVVvQixVQVZWLENBS04sY0FBYyxBQUVULFFBQVEsQ0FDTCxLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQUFFRyxVQUFVLENBQUE7RUFBRSxLQUFLLEVBQUUsR0FBSTtDQUFJOztBQVpwRCxBQVVvQixVQVZWLENBS04sY0FBYyxBQUVULFFBQVEsQ0FDTCxLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQUFHRyxRQUFRLENBQUE7RUFBRSxLQUFLLEVBQUUsR0FBSTtDQUFJOztBQWJsRCxBQVVvQixVQVZWLENBS04sY0FBYyxBQUVULFFBQVEsQ0FDTCxLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQUFJRyxXQUFXLENBQUE7RUFBRSxLQUFLLEVBQUUsR0FBSTtDQUFJOztBQWRyRCxBQW1Cd0IsVUFuQmQsQ0FLTixjQUFjLEFBRVQsUUFBUSxDQUNMLEtBQUssQ0FTRCxLQUFLLENBQ0QsRUFBRSxDQUNFLGFBQWEsQ0FBQTtFQUFFLEtBQUssRUFBRSxJQUFLO0NBQUk7O0FBbkJ2RCxBQXdCUSxVQXhCRSxDQUtOLGNBQWMsQ0FtQlYsS0FBSyxDQUFBO0VBQUUsVUFBVSxFQUFFLElBQUs7Q0FBSTs7QUF4QnBDLEFBeUJRLFVBekJFLENBS04sY0FBYyxDQW9CVixPQUFPLENBQUE7RUFBRSxVQUFVLEVBQUUsTUFBTztFQUFFLFVBQVUsRUFBRSxJQUFLO0NBQUk7O0FBRzNELEFBQUEsV0FBVyxDQUFDO0VBQ1IsT0FBTyxFQUFFLEVBQUc7RUFDWixLQUFLLEVBQUUsT0FBUTtDQWVsQjs7QUFqQkQsQUFHSSxXQUhPLENBR1AsRUFBRSxDQUFDO0VBQ0QsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQ3BELFdBQVcsRUFBRSxJQUFLO0VBQ2xCLFVBQVUsRUFBRSxNQUFPO0VBQ25CLFlBQVksRUFBRSxNQUFPO0VBQ3JCLFdBQVcsRUFBRSxJQUFLO0NBQ25COztBQVRMLEFBVUksV0FWTyxDQVVQLEVBQUUsQ0FBQTtFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsV0FBVyxFQUFFLE1BQU87RUFBRSxTQUFTLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUs7O0FBVnhGLEFBV0ksV0FYTyxDQVdQLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxPQUFRO0NBQ3BCOztBQU9MLEFBQUEsZ0JBQWdCLENBQUE7RUFDWixhQUFhLEVBQUUsSUFBSztDQVl2Qjs7QUFiRCxBQUdJLGdCQUhZLENBR1osRUFBRSxDQUFBO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FBSTs7QUFIeEIsQUFJSSxnQkFKWSxDQUlaLENBQUMsQ0FBQTtFQUFFLEtBQUssRUFBRSxLQUFNO0VBQUUsVUFBVSxFQUFFLElBQUs7Q0FBSTs7QUFKM0MsQUFLSSxnQkFMWSxDQUtaLE1BQU0sQ0FBQTtFQUNGLEtBQUssRUFBRSxHQUFJO0NBTWQ7O0FBWkwsQUFLSSxnQkFMWSxDQUtaLE1BQU0sQUFFRCxJQUFJLENBQUM7RUFDRixLQUFLLEVBQUUsSUFBSztFQUFFLFlBQVksRUFBRSxJQUFLO0NBR3BDOztBQVhULEFBU1ksZ0JBVEksQ0FLWixNQUFNLEFBRUQsSUFBSSxDQUVELGdCQUFnQixDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FBRzs7QUFUN0MsQUFVWSxnQkFWSSxDQUtaLE1BQU0sQUFFRCxJQUFJLENBR0QsTUFBTSxDQUFDO0VBQUMsS0FBSyxFQUFFLElBQUs7RUFBRSxhQUFhLEVBQUUsSUFBSztDQUFHOztBQUt6RCxBQUFBLGdCQUFnQixDQUFBO0VBQ1osS0FBSyxFQUFFLEtBQU07RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLFVBQVUsRUFBRSxJQUFLO0NBZ0J4RDs7QUFqQkQsQUFBQSxnQkFBZ0IsQUFFWCxZQUFZLENBQUE7RUFDVCxLQUFLLEVBQUMsR0FBSTtFQUFFLFlBQVksRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FFaEQ7O0FBTEwsQUFJUSxnQkFKUSxBQUVYLFlBQVksQ0FFVCxNQUFNLENBQUE7RUFBRyxLQUFLLEVBQUUsR0FBSTtDQUFJOztBQUpoQyxBQU1JLGdCQU5ZLENBTVosTUFBTSxDQUFBO0VBQ0QsVUFBVSxFQUF3Qyx1Q0FBQyxDQUFBLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTTtFQUFFLE1BQU0sRUFBRSxpQkFBa0I7RUFBRSxNQUFNLEVBQUUsSUFBSztFQ3ZzSnZILGFBQWEsRUR1c0prSSxHQUFHO0VDdHNKbEoscUJBQXFCLEVEc3NKMEgsR0FBRztFQ3JzSmxKLGtCQUFrQixFRHFzSjZILEdBQUc7RUNwc0psSixpQkFBaUIsRURvc0o4SCxHQUFHO0VDbnNKbEosZ0JBQWdCLEVEbXNKK0gsR0FBRztDQUNqSjs7QUFSTCxBQVNJLGdCQVRZLENBU1osS0FBSyxDQUFBO0VBQ0QsUUFBUSxFQUFFLFFBQVM7RUFBRyxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxPQUFRO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxXQUFXLEVBQUUsSUFBSztFQUN6RixLQUFLLEVBQUUsR0FBSTtFQUFFLFlBQVksRUFBQyxJQUFLO0VDaHJKbkMsa0JBQWtCLEVEZ3JKc0MsVUFBVTtFQy9xSmxFLGVBQWUsRUQrcUp5QyxVQUFVO0VDOXFKbEUsVUFBVSxFRDhxSjhDLFVBQVU7Q0FLakU7O0FBaEJMLEFBU0ksZ0JBVFksQ0FTWixLQUFLLEFBR0EsT0FBTyxDQUFBO0VBQ0osT0FBTyxFQUFDLEVBQUc7RUFBRSxVQUFVLEVBQXdDLHVDQUFDLENBQUEsU0FBUyxDQUFDLE1BQU07RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLElBQUksRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDM0gsTUFBTSxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FDM0Q7O0FBR1QsQUFBQSx1QkFBdUIsQ0FBQTtFQUNuQixhQUFhLEVBQUUsSUFBSztDQWdDdkI7O0FBakNELEFBR0ksdUJBSG1CLENBR25CLFdBQVcsQ0FBQTtFQUNQLEtBQUssRUFBRSxJQUFLO0VBQUUsUUFBUSxFQUFFLFFBQVM7RUFBRSxNQUFNLEVBQUUsaUJBQWtCO0VBQUUsTUFBTSxFQUFFLElBQUs7RUN0dEpoRixhQUFhLEVEc3RKMkYsR0FBRztFQ3J0SjNHLHFCQUFxQixFRHF0Sm1GLEdBQUc7RUNwdEozRyxrQkFBa0IsRURvdEpzRixHQUFHO0VDbnRKM0csaUJBQWlCLEVEbXRKdUYsR0FBRztFQ2x0SjNHLGdCQUFnQixFRGt0SndGLEdBQUc7Q0FhMUc7O0FBakJMLEFBR0ksdUJBSG1CLENBR25CLFdBQVcsQUFFTixZQUFZLENBQUE7RUFDVCxLQUFLLEVBQUMsR0FBSTtFQUFFLFlBQVksRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FFaEQ7O0FBUlQsQUFPWSx1QkFQVyxDQUduQixXQUFXLEFBRU4sWUFBWSxDQUVULE1BQU0sQ0FBQTtFQUFHLEtBQUssRUFBRSxHQUFJO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FBSTs7QUFQbkQsQUFHSSx1QkFIbUIsQ0FHbkIsV0FBVyxBQU1OLFVBQVcsQ0FBQSxBQUFBLENBQUMsRUFBQztFQUFFLEtBQUssRUFBRSxHQUFJO0VBQUcsWUFBWSxFQUFFLElBQUs7Q0FBSTs7QUFUN0QsQUFHSSx1QkFIbUIsQ0FHbkIsV0FBVyxBQU9OLFdBQVcsQ0FBQTtFQUFFLEtBQUssRUFBRSxHQUFJO0NBQUk7O0FBVnJDLEFBWTZCLHVCQVpOLENBR25CLFdBQVcsQUFRTixXQUFXLENBQ1IsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE1BQU0sQUFBWCxHQVpsQixBQVkrQix1QkFaUixDQUduQixXQUFXLEFBUU4sV0FBVyxDQUNXLE1BQU0sQ0FBQTtFQUNyQixLQUFLLEVBQUUsR0FBSTtFQ3BzSnZCLGtCQUFrQixFRG9zSjBCLFVBQVU7RUNuc0p0RCxlQUFlLEVEbXNKNkIsVUFBVTtFQ2xzSnRELFVBQVUsRURrc0prQyxVQUFVO0VBQUksTUFBTSxFQUFFLElBQUs7RUMvdEp2RSxhQUFhLEVEK3RKa0YsR0FBRztFQzl0SmxHLHFCQUFxQixFRDh0SjBFLEdBQUc7RUM3dEpsRyxrQkFBa0IsRUQ2dEo2RSxHQUFHO0VDNXRKbEcsaUJBQWlCLEVENHRKOEUsR0FBRztFQzN0SmxHLGdCQUFnQixFRDJ0SitFLEdBQUc7RUFDdEYsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQ3JEOztBQWZiLEFBa0JJLHVCQWxCbUIsQ0FrQm5CLEtBQUssQ0FBQTtFQUNELFFBQVEsRUFBRSxRQUFTO0VBQUcsU0FBUyxFQUFFLElBQUs7RUFBRSxLQUFLLEVBQUUsT0FBUTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7RUFDekYsS0FBSyxFQUFFLEdBQUk7RUFBRSxZQUFZLEVBQUMsSUFBSztFQzNzSm5DLGtCQUFrQixFRDJzSnNDLFVBQVU7RUMxc0psRSxlQUFlLEVEMHNKeUMsVUFBVTtFQ3pzSmxFLFVBQVUsRUR5c0o4QyxVQUFVO0NBS2pFOztBQXpCTCxBQWtCSSx1QkFsQm1CLENBa0JuQixLQUFLLEFBR0EsT0FBTyxDQUFBO0VBQ0osT0FBTyxFQUFDLEVBQUc7RUFBRSxVQUFVLEVBQXdDLHVDQUFDLENBQUEsU0FBUyxDQUFDLE1BQU07RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLElBQUksRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLENBQUU7RUFDM0gsTUFBTSxFQUFFLENBQUU7RUFBRSxNQUFNLEVBQUUsTUFBTztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7Q0FDM0Q7O0FBeEJULEFBMEJzQix1QkExQkMsQ0EwQmxCLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxNQUFNLEFBQVgsR0ExQlgsQUEwQndCLHVCQTFCRCxDQTBCQyxNQUFNLENBQUE7RUFDdEIsS0FBSyxFQUFFLElBQUs7RUNsdEpoQixrQkFBa0IsRURrdEptQixVQUFVO0VDanRKL0MsZUFBZSxFRGl0SnNCLFVBQVU7RUNodEovQyxVQUFVLEVEZ3RKMkIsVUFBVTtFQUFJLE1BQU0sRUFBRSxJQUFLO0VDN3VKaEUsYUFBYSxFRDZ1SjJFLEdBQUc7RUM1dUozRixxQkFBcUIsRUQ0dUptRSxHQUFHO0VDM3VKM0Ysa0JBQWtCLEVEMnVKc0UsR0FBRztFQzF1SjNGLGlCQUFpQixFRDB1SnVFLEdBQUc7RUN6dUozRixnQkFBZ0IsRUR5dUp3RSxHQUFHO0VBQ3ZGLFNBQVMsRUFBRSxJQUFLO0VBQUUsS0FBSyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUMsSUFBSztFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQ25FOztBQTdCTCxBQThCSSx1QkE5Qm1CLENBOEJuQixNQUFNLENBQUE7RUFDRCxVQUFVLEVBQXdDLHVDQUFDLENBQUEsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNO0NBQzNFOztBQUVMLEFBQUEsVUFBVSxBQUNMLFFBQVEsQ0FBQztFQUNOLGFBQWEsRUFBRSxJQUFLO0NBNEN2Qjs7QUE5Q0wsQUFHUSxVQUhFLEFBQ0wsUUFBUSxDQUVMLE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLO0NBRWY7O0FBTlQsQUFHUSxVQUhFLEFBQ0wsUUFBUSxDQUVMLE1BQU0sQUFFRCxHQUFHLENBQUM7RUFBQyxTQUFTLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBQUc7O0FBTG5ELEFBU2dCLFVBVE4sQUFDTCxRQUFRLENBTUwsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLENBQUM7RUFDQyxVQUFVLEVBQUUsSUFBSztFQUFFLEtBQUssRUFBRSxJQUFLO0NBS2xDOztBQWZqQixBQVNnQixVQVROLEFBQ0wsUUFBUSxDQU1MLEtBQUssQ0FDRCxLQUFLLENBQ0QsRUFBRSxBQUVHLFVBQVUsQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0NBQUc7O0FBWC9DLEFBU2dCLFVBVE4sQUFDTCxRQUFRLENBTUwsS0FBSyxDQUNELEtBQUssQ0FDRCxFQUFFLEFBR0csUUFBUSxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7Q0FBRzs7QUFaN0MsQUFTZ0IsVUFUTixBQUNMLFFBQVEsQ0FNTCxLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQUFJRyxNQUFNLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtDQUFHOztBQWIzQyxBQVNnQixVQVROLEFBQ0wsUUFBUSxDQU1MLEtBQUssQ0FDRCxLQUFLLENBQ0QsRUFBRSxBQUtHLFdBQVcsQ0FBQztFQUFDLEtBQUssRUFBRSxHQUFJO0NBQUc7O0FBZGhELEFBbUJvQixVQW5CVixBQUNMLFFBQVEsQ0FNTCxLQUFLLENBVUQsS0FBSyxDQUNELEVBQUUsQ0FDRSxhQUFhLENBQUM7RUFDVixLQUFLLEVBQUUsR0FBSTtFQUFFLE9BQU8sRUFBRSxZQUFhO0VBQUMsT0FBTyxFQUFFLFVBQVc7RUFBRSxVQUFVLEVBQUUsSUFBSztFQzd1Si9GLGtCQUFrQixFRDh1SnFCLFNBQVM7RUM3dUpoRCxlQUFlLEVENnVKd0IsU0FBUztFQzV1SmhELFVBQVUsRUQ0dUo2QixTQUFTO0NBQy9COztBQXRCckIsQUF3QnlCLFVBeEJmLEFBQ0wsUUFBUSxDQU1MLEtBQUssQ0FVRCxLQUFLLENBQ0QsRUFBRSxBQUtHLGFBQWEsQ0FDVixDQUFDLEFBQUEsUUFBUSxDQUFDO0VBQ04sS0FBSyxFQUFFLEtBQU07RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLEdBQUcsRUFBRSxHQUFJO0VBQUUsS0FBSyxFQUFFLENBQUU7RUNsdkpoRixrQkFBa0IsRURtdkp5QixTQUFTO0VDbHZKcEQsZUFBZSxFRGt2SjRCLFNBQVM7RUNqdkpwRCxVQUFVLEVEaXZKaUMsU0FBUztFQ3J4SnBELFNBQVMsRURzeEprQyxrQkFBUztFQ3J4SnBELGlCQUFpQixFRHF4SjBCLGtCQUFTO0VDcHhKcEQsY0FBYyxFRG94SjZCLGtCQUFTO0VDbnhKcEQsYUFBYSxFRG14SjhCLGtCQUFTO0VDbHhKcEQsWUFBWSxFRGt4SitCLGtCQUFTO0NBQy9COztBQTVCekIsQUFpQ3dCLFVBakNkLEFBQ0wsUUFBUSxDQU1MLEtBQUssQ0FVRCxLQUFLLENBY0QsRUFBRSxBQUNHLFNBQVMsQ0FDTixhQUFhLENBQUM7RUFBQyxLQUFLLEVBQUUsSUFBSztDQUFHOztBQWpDdEQsQUFzQ2dCLFVBdENOLEFBQ0wsUUFBUSxDQU1MLEtBQUssQ0E4QkQsS0FBSyxDQUNELE1BQU0sQ0FBQztFQUFDLEtBQUssRUFBRSxPQUFRO0NBQUc7O0FBdEMxQyxBQXVDZ0IsVUF2Q04sQUFDTCxRQUFRLENBTUwsS0FBSyxDQThCRCxLQUFLLENBRUQsRUFBRSxBQUNHLFdBQVcsQ0FBQztFQUNULDhCQUE4QjtDQUNqQzs7QUExQ3JCLEFBK0NJLFVBL0NNLENBK0NOLFdBQVcsQ0FBQztFQUFDLE1BQU0sRUFBQyxpQkFBa0I7RUNueUp0QyxhQUFhLEVEbXlKaUQsR0FBRztFQ2x5SmpFLHFCQUFxQixFRGt5SnlDLEdBQUc7RUNqeUpqRSxrQkFBa0IsRURpeUo0QyxHQUFHO0VDaHlKakUsaUJBQWlCLEVEZ3lKNkMsR0FBRztFQy94SmpFLGdCQUFnQixFRCt4SjhDLEdBQUc7Q0FBSTs7QUEvQ3pFLEFBZ0RJLFVBaERNLENBZ0ROLGFBQWEsQ0FBQztFQUNWLEtBQUssRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEtBQU07RUFBRSxVQUFVLEVBQUUsSUFBSztDQW9CbkQ7O0FBckVMLEFBbURZLFVBbkRGLENBZ0ROLGFBQWEsQUFFUixXQUFXLENBQ1IsSUFBSSxDQUFBO0VBQUUsS0FBSyxFQUFFLE9BQVE7RUFBRSxXQUFXLEVBQUUsSUFBSztDQUFJOztBQW5EekQsQUFxRFEsVUFyREUsQ0FnRE4sYUFBYSxDQUtULFdBQVcsQ0FBQztFQUNSLE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFBRSxRQUFRLEVBQUUsUUFBUztFQUNwRSxLQUFLLEVBQUUsR0FBSTtFQUFDLE1BQU0sRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFDLGlCQUFrQjtFQUFDLFlBQVksRUFBRSxJQUFLO0VDM3lKaEYsYUFBYSxFRDR5SmlCLEdBQUc7RUMzeUpqQyxxQkFBcUIsRUQyeUpTLEdBQUc7RUMxeUpqQyxrQkFBa0IsRUQweUpZLEdBQUc7RUN6eUpqQyxpQkFBaUIsRUR5eUphLEdBQUc7RUN4eUpqQyxnQkFBZ0IsRUR3eUpjLEdBQUc7Q0FPNUI7O0FBL0RULEFBeURZLFVBekRGLENBZ0ROLGFBQWEsQ0FLVCxXQUFXLENBSVAsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLEdBQUk7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsTUFBTSxFQUFFLElBQUs7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUNwRixVQUFVLEVBQUUsTUFBTztFQ3B4Si9CLGtCQUFrQixFRHF4SmEsVUFBVTtFQ3B4SnpDLGVBQWUsRURveEpnQixVQUFVO0VDbnhKekMsVUFBVSxFRG14SnFCLFVBQVU7Q0FFaEM7O0FBOURiLEFBNkRnQixVQTdETixDQWdETixhQUFhLENBS1QsV0FBVyxDQUlQLE1BQU0sQ0FJRixHQUFHLENBQUM7RUFBQyxNQUFNLEVBQUUsSUFBSztDQUFHOztBQTdEckMsQUFnRVEsVUFoRUUsQ0FnRE4sYUFBYSxDQWdCVCxjQUFjLENBQUM7RUFDWCxPQUFPLEVBQUUsWUFBYTtFQUFFLGNBQWMsRUFBRSxNQUFPO0VBQUUsT0FBTyxFQUFFLFVBQVc7RUFBRSxTQUFTLEVBQUUsSUFBSztFQUN2RixLQUFLLEVBQUUsS0FBTTtFQzN4SnJCLGtCQUFrQixFRDR4SlMsVUFBVTtFQzN4SnJDLGVBQWUsRUQyeEpZLFVBQVU7RUMxeEpyQyxVQUFVLEVEMHhKaUIsVUFBVTtDQUNoQzs7QUFwRVQsQUFzRUksVUF0RU0sQ0FzRU4sV0FBVyxDQUFDO0VBQ1IsT0FBTyxFQUFFLFlBQWE7RUFBRSxRQUFRLEVBQUUsUUFBUztFQUFFLE9BQU8sRUFBRSxVQUFXO0VBQ2pFLFNBQVMsRUFBRSxJQUFLO0VBQUMsV0FBVyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsTUFBTztFQUFDLFlBQVksRUFBRSxNQUFPO0VBQUMsV0FBVyxFQUFFLElBQUs7RUFDbEcsY0FBYyxFQUFFLE1BQU87RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFDLEtBQUssRUFBRSxJQUFLO0NBS3pEOztBQTlFTCxBQXNFSSxVQXRFTSxDQXNFTixXQUFXLEFBSU4sT0FBTyxDQUFDO0VBQ0wsUUFBUSxFQUFDLFFBQVM7RUFBRSxLQUFLLEVBQUUsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0VBQUUsT0FBTyxFQUFFLEVBQUc7RUFBRSxJQUFJLEVBQUUsQ0FBRTtFQUFFLEdBQUcsRUFBRSxDQUFFO0VBQ2hGLFVBQVUsRUFBRSx3Q0FBRyxDQUFzQyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU07Q0FDL0U7O0FBN0VULEFBK0VJLFVBL0VNLENBK0VOLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFLO0NBaUVmOztBQWpKTCxBQWtGWSxVQWxGRixDQStFTixLQUFLLENBRUQsS0FBSyxDQUNELEVBQUUsQ0FBQztFQUNDLFVBQVUsRUFBRSxPQUFRO0VBQUUsT0FBTyxFQUFFLFFBQVM7RUFDeEMsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsSUFBSztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNoRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FTM0Q7O0FBOUZiLEFBa0ZZLFVBbEZGLENBK0VOLEtBQUssQ0FFRCxLQUFLLENBQ0QsRUFBRSxBQUlHLFlBQVksQ0FBQztFQUFDLFlBQVksRUFBQyxJQUFLO0VBQUUsYUFBYSxFQUFFLENBQUU7Q0FBRzs7QUF0RnZFLEFBa0ZZLFVBbEZGLENBK0VOLEtBQUssQ0FFRCxLQUFLLENBQ0QsRUFBRSxBQUtHLFdBQVcsQ0FBQztFQUFDLGFBQWEsRUFBQyxJQUFLO0NBQUc7O0FBdkZwRCxBQWtGWSxVQWxGRixDQStFTixLQUFLLENBRUQsS0FBSyxDQUNELEVBQUUsQUFNRyxRQUFRLENBQUM7RUFBQyxLQUFLLEVBQUUsRUFBRztFQUFFLFdBQVcsRUFBRSxJQUFLO0NBQUc7O0FBeEY1RCxBQWtGWSxVQWxGRixDQStFTixLQUFLLENBRUQsS0FBSyxDQUNELEVBQUUsQUFPRyxVQUFVLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtFQUFDLFVBQVUsRUFBRSxJQUFLO0NBQUc7O0FBekY3RCxBQWtGWSxVQWxGRixDQStFTixLQUFLLENBRUQsS0FBSyxDQUNELEVBQUUsQUFRRyxRQUFRLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtFQUFDLFVBQVUsRUFBRSxLQUFNO0NBQUc7O0FBMUY1RCxBQWtGWSxVQWxGRixDQStFTixLQUFLLENBRUQsS0FBSyxDQUNELEVBQUUsQUFTRyxNQUFNLENBQUM7RUFBQyxLQUFLLEVBQUUsR0FBSTtDQUFHOztBQTNGdkMsQUFrRlksVUFsRkYsQ0ErRU4sS0FBSyxDQUVELEtBQUssQ0FDRCxFQUFFLEFBVUcsV0FBVyxDQUFDO0VBQUMsS0FBSyxFQUFFLEdBQUk7RUFBQyxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQTVGL0QsQUFrRlksVUFsRkYsQ0ErRU4sS0FBSyxDQUVELEtBQUssQ0FDRCxFQUFFLEFBV0csU0FBUyxDQUFDO0VBQUMsS0FBSyxFQUFFLEVBQUc7Q0FBRzs7QUE3RnpDLEFBa0dnQixVQWxHTixDQStFTixLQUFLLENBaUJELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxDQUFDO0VBQ0MsT0FBTyxFQUFFLFNBQVU7RUFBRSxhQUFhLEVBQUMsaUJBQWtCO0VBQUMsUUFBUSxFQUFFLFFBQVM7RUFDekUsU0FBUyxFQUFFLElBQUs7RUFBQyxXQUFXLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsWUFBWSxFQUFFLE1BQU87RUFBQyxXQUFXLEVBQUUsSUFBSztFQUNsRyxjQUFjLEVBQUUsTUFBTztFQUFDLFVBQVUsRUFBRSxNQUFPO0VBQUMsS0FBSyxFQUFFLElBQUs7Q0FPM0Q7O0FBNUdqQixBQWtHZ0IsVUFsR04sQ0ErRU4sS0FBSyxDQWlCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFJRyxZQUFZLENBQUM7RUFBQyxZQUFZLEVBQUMsSUFBSztFQUFFLGFBQWEsRUFBRSxDQUFFO0NBQUc7O0FBdEczRSxBQWtHZ0IsVUFsR04sQ0ErRU4sS0FBSyxDQWlCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFLRyxXQUFXLENBQUM7RUFBQyxhQUFhLEVBQUMsSUFBSztDQUFHOztBQXZHeEQsQUFrR2dCLFVBbEdOLENBK0VOLEtBQUssQ0FpQkQsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBTUcsU0FBUyxDQUFDO0VBQUMsV0FBVyxFQUFFLElBQUs7Q0FBRzs7QUF4R3JELEFBa0dnQixVQWxHTixDQStFTixLQUFLLENBaUJELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQU9HLFdBQVcsQ0FBQztFQUFDLFVBQVUsRUFBRSxJQUFLO0VBQUUsYUFBYSxFQUFFLElBQUs7Q0FBRzs7QUF6RzVFLEFBa0dnQixVQWxHTixDQStFTixLQUFLLENBaUJELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVFHLFNBQVMsQ0FBQztFQUFDLFVBQVUsRUFBRSxLQUFNO0NBQUc7O0FBMUdyRCxBQWtHZ0IsVUFsR04sQ0ErRU4sS0FBSyxDQWlCRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFTRyxZQUFZLENBQUM7RUFBQyxVQUFVLEVBQUUsS0FBTTtDQUFHOztBQTNHeEQsQUErR1ksVUEvR0YsQ0ErRU4sS0FBSyxDQWlCRCxLQUFLLENBZUQsS0FBSyxDQUFDO0VBQ0YsU0FBUyxFQUFFLElBQUs7RUFBRSxNQUFNLEVBQUUsS0FBTTtFQUFFLFVBQVUsRUFBRSxNQUFPO0VBQUUsS0FBSyxFQUFFLElBQUs7Q0FDdEU7O0FBakhiLEFBcUhnQixVQXJITixDQStFTixLQUFLLENBb0NELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxDQUFDO0VBQ0MsT0FBTyxFQUFFLFNBQVU7RUFBRSxjQUFjLEVBQUUsTUFBTztFQUM1QyxTQUFTLEVBQUUsSUFBSztFQUFDLFdBQVcsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxZQUFZLEVBQUUsTUFBTztFQUFDLFdBQVcsRUFBRSxJQUFLO0VBQ2xHLGNBQWMsRUFBRSxNQUFPO0VBQUMsVUFBVSxFQUFFLE1BQU87RUFBQyxLQUFLLEVBQUUsSUFBSztDQWlCM0Q7O0FBeklqQixBQXlIb0IsVUF6SFYsQ0ErRU4sS0FBSyxDQW9DRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQ0FJRSxVQUFVLENBQUM7RUFDUCxRQUFRLEVBQUUsUUFBUztFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsR0FBRyxFQUFFLEdBQUk7RUFBRSxJQUFJLEVBQUUsS0FBTTtFQUMxRCxhQUFhLEVBQUUsSUFBSztFQUFFLFdBQVcsRUFBRSxLQUFNO0NBQzVDOztBQTVIckIsQUFxSGdCLFVBckhOLENBK0VOLEtBQUssQ0FvQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBUUcsWUFBWSxDQUFDO0VBQUMsWUFBWSxFQUFDLElBQUs7RUFBRSxhQUFhLEVBQUUsQ0FBRTtDQUFHOztBQTdIM0UsQUFxSGdCLFVBckhOLENBK0VOLEtBQUssQ0FvQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBU0csV0FBVyxDQUFDO0VBQUMsYUFBYSxFQUFDLElBQUs7Q0FBRzs7QUE5SHhELEFBcUhnQixVQXJITixDQStFTixLQUFLLENBb0NELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVVHLFNBQVMsQ0FBQztFQUFDLFdBQVcsRUFBRSxJQUFLO0NBQUc7O0FBL0hyRCxBQXFIZ0IsVUFySE4sQ0ErRU4sS0FBSyxDQW9DRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFXRyxXQUFXLENBQUM7RUFBQyxVQUFVLEVBQUUsSUFBSztFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQUUsU0FBUyxFQUFFLElBQUs7Q0FBRzs7QUFoSTlGLEFBcUhnQixVQXJITixDQStFTixLQUFLLENBb0NELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxBQVlHLFlBQVksQ0FBQztFQUFDLFVBQVUsRUFBRSxLQUFNO0NBQUc7O0FBakl4RCxBQXFIZ0IsVUFySE4sQ0ErRU4sS0FBSyxDQW9DRCxLQUFLLENBQ0QsRUFBRSxDQUNFLEVBQUUsQUFhRyxlQUFlLENBQUM7RUFDYixVQUFVLEVBQUUsS0FBTTtFQUFFLGNBQWMsRUFBRSxNQUFPO0NBQzlDOztBQXBJckIsQUFxSW9CLFVBcklWLENBK0VOLEtBQUssQ0FvQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLENBZ0JFLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxZQUFhO0VBQUUsY0FBYyxFQUFFLE1BQU87RUFBRSxhQUFhLEVBQUUsSUFBSztFQUNyRSxRQUFRLEVBQUUsUUFBUztDQUN0Qjs7QUF4SXJCLEFBMklvQixVQTNJVixDQStFTixLQUFLLENBb0NELEtBQUssQ0FDRCxFQUFFLEFBc0JHLFdBQVcsQ0FDUixFQUFFLENBQUM7RUFDQyxhQUFhLEVBQUUsQ0FBRTtDQUNwQjs7QUE3SXJCLEFBa0pJLFVBbEpNLENBa0pOLFdBQVcsQ0FBQTtFQUFFLGFBQWEsRUFBRSxJQUFLO0VBQUUsVUFBVSxFQUFFLElBQUs7Q0FBSTs7QUFsSjVELEFBc0pnQixVQXRKTixDQW1KTixLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBQ0csWUFBWSxDQUFBO0VBQUUsVUFBVSxFQUFDLElBQUs7Q0FBSTs7QUF2SnZELEFBc0pnQixVQXRKTixDQW1KTixLQUFLLENBQ0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBRUcsV0FBVyxDQUFBO0VBQUUsVUFBVSxFQUFDLEtBQU07Q0FBSTs7QUF4SnZELEFBOEpnQixVQTlKTixDQW1KTixLQUFLLENBU0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBQ0csWUFBWSxDQUFBO0VBQUUsVUFBVSxFQUFDLElBQUs7Q0FBSTs7QUEvSnZELEFBOEpnQixVQTlKTixDQW1KTixLQUFLLENBU0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLEFBRUcsV0FBVyxDQUFBO0VBQUUsVUFBVSxFQUFDLEtBQU07Q0FBSTs7QUFoS3ZELEFBaUtvQixVQWpLVixDQW1KTixLQUFLLENBU0QsS0FBSyxDQUNELEVBQUUsQ0FDRSxFQUFFLENBR0UsQ0FBQyxDQUFBO0VBQ0csUUFBUSxFQUFFLFFBQVM7Q0FFdEI7O0FBcEtyQixBQW1Ld0IsVUFuS2QsQ0FtSk4sS0FBSyxDQVNELEtBQUssQ0FDRCxFQUFFLENBQ0UsRUFBRSxDQUdFLENBQUMsQ0FFRyxvQkFBb0IsQ0FBQTtFQUFFLFFBQVEsRUFBRSxRQUFTO0VBQUUsVUFBVSxFQUFnRCwrQ0FBQyxDQUFDLFNBQVM7RUFBRSxLQUFLLEVBQUMsSUFBSztFQUFFLE1BQU0sRUFBRSxJQUFLO0NBQUs7O0FBbkt6SyxBQTBLZ0IsVUExS04sQ0FtSk4sS0FBSyxDQXFCRCxLQUFLLENBQ0QsRUFBRSxBQUFBLFdBQVcsQ0FDVCxFQUFFLENBQUE7RUFDRSxVQUFVLEVBQUMsT0FBUTtFQUFFLEtBQUssRUFBRSxJQUFLO0VBQUUsV0FBVyxFQUFFLElBQUs7Q0FHeEQ7O0FBOUtqQixBQTBLZ0IsVUExS04sQ0FtSk4sS0FBSyxDQXFCRCxLQUFLLENBQ0QsRUFBRSxBQUFBLFdBQVcsQ0FDVCxFQUFFLEFBRUcsWUFBWSxDQUFBO0VBQUUsVUFBVSxFQUFDLElBQUs7Q0FBSTs7QUE1S3ZELEFBMEtnQixVQTFLTixDQW1KTixLQUFLLENBcUJELEtBQUssQ0FDRCxFQUFFLEFBQUEsV0FBVyxDQUNULEVBQUUsQUFHRyxXQUFXLENBQUE7RUFBRSxVQUFVLEVBQUMsS0FBTTtDQUFJIiwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */
